Я пытаюсь изменить /etc/ssh/sshd_config
на моем выделенном сервере debian7 с обоими AllowUsers
и AllowGroups
. Однако я не могу заставить обоих работать вместе.
testuser
.Этот пользователь находится в группе под названием ssh-users
:
$ groups testuser
testuser : testuser ssh-users
testuser
пытается подключиться через ssh testuser@<server_ip>
и ввести свой пароль.
sshd_config
можно найти здесь: http://pastebin.com/iZvVDFKL - Я думаю, что единственные изменения, которые я внес по умолчанию: PermitRootLogin no
AllowUsers
(фактические имена пользователей на моем сервере отличаются)service ssh restart
запускается каждый раз после изменения sshd_config
.testuser
жестяная банка подключиться при установке с AllowUsers
:
AllowUsers user1 user2 testuser
testuser
жестяная банка НЕ подключиться при настройке AllowGroups
для своей группы:
AllowUsers user1 user2
AllowGroups ssh-users
что приводит к Permission denied, please try again.
когда testuser
вводит свой пароль в запрос пароля ssh.
AllowUsers
отменять AllowGroups
?AllowUsers
? В идеале я бы хотел иметь возможность просто добавлять пользователей в ssh-users
группа в будущем, не прикасаясь sshd_config
очередной раз.Да, AllowUsers
имеет прецедент над AllowGroups
. Если указано, только пользователи, соответствующие шаблону, указанному в AllowUsers
может подключиться к экземпляру SSHD.
В соответствии с sshd_config
справочная страница:
Директивы allow / deny обрабатываются в следующем порядке:
DenyUsers
,AllowUsers
,DenyGroups
, и наконецAllowGroups
.
Итак, решение вашей проблемы, вероятно, состоит в том, чтобы использовать одну или другую, возможно, директивы доступа к группам, если группы являются вашим предпочтительным способом управления пользователями.
Ответ Джеффа подробно описывает специфику вопроса, но я нашел этот вопрос, чтобы использовать AllowUsers
и AllowGroups
по несколько иному сценарию. Я хотел ограничить входящие соединения для пользователей в группе (ssh) из определенных подсетей.
Правила подключения в sshd_config являются фильтром - по мере применения каждого дополнительного правила набор допустимых пользователей может только сокращаться. PATTERNS
в ssh_config (5) объясните форму этих правил.
Кроме того, согласно AllowUsers
раздел sshd_config
:
Если шаблон имеет вид USER @ HOST, тогда USER и HOST проверяются отдельно, ограничивая вход в систему для определенных пользователей с определенных хостов. Критерии HOST могут дополнительно содержать адреса для сопоставления в формате адреса / маски CIDR.
AllowGroups
не принимает форму USER @ HOST.
Итак, чтобы принять пользователей 1) в группе ssh и 2) из определенных подсетей / хостов:
AllowUsers *@192.168.1.0/24 *@*.example.com *@1.2.3.4
AllowGroups ssh
Вот решение, которое мы нашли работающим:
AllowUsers user1 user2
Match group ssh-users
AllowUsers *