Кажется, не могу найти правильный матч для этого
sshd должен разрешать кому угодно из любого места, то есть обычную / стандартную конфигурацию, но я хочу ограничить пользователя IP
Например, bob должен быть разрешен только с IP 1.2.3.4.
PS Я добавил AIX в качестве ОС. Хотя PAM является частью AIX, он реализован несколько иначе.
Поскольку никто еще не упомянул об этом, это можно сделать с помощью pam_access
модуль.
Вам нужно будет проверить, что стек pam вызывает этот модуль, заглянув в /etc/pam.d/sshd
и добавив как account
значение, если его нет. IE
#%PAM-1.0
auth required pam_sepermit.so
auth substack password-auth
auth include postlogin
account required pam_nologin.so
account required pam_access.so
account include password-auth
password include password-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open env_params
session optional pam_keyinit.so force revoke
session include password-auth
session include postlogin
session required pam_tty_audit.so enable=*
Затем в файле доступа (по умолчанию /etc/security/access.conf
) добавьте три следующие строки (при условии, что никакие другие строки не предлагают никаких других настроек безопасности).
+ : bob : 1.2.3.4
- : bob : ALL
+ : ALL : ALL
В SSH
Полагаю, сработает следующее.
<Global scope>
DenyUsers bob
Match Address 1.2.3.4
AllowUsers bob
Если вы знаете всех остальных пользователей, это сработает:
AllowUsers user@ip user2 user3
но, к сожалению, он не работает с подстановочными знаками.
В зависимости от вашей конечной цели вы можете заставить пользователей использовать SSH-ключи вместо паролей и ограничить хост в пользователях. ~/.ssh/authorized_keys
файл с from=
заявление (см. man sshd
для информации о формате).
Если я правильно понимаю, вы хотите разрешить всем удачливым пользователям, не являющимся пользователями Боба, приходить откуда угодно, но несчастный Боб может прийти только из 1.2.3.4.
Может попробовать это:
AllowUsers !bob
AllowUsers bob@1.2.3.4