Как можно разрешить или запретить вход по ssh для определенных пользователей или групп на сервере sshd?
(Я понимаю, что у SE есть похожие вопросы, но я не смог найти ни одного, касающегося этой конкретной точки. Все остальные, которые я обнаружил, похоже, объединяют другие сценарии.)
Другой способ сделать это - использовать access.conf.
Во-первых, вам нужно включить pam_access в /etc/pam.d/sshd добавив следующую строку:
required pam_access.so
Затем вы можете редактировать /etc/security/access.conf, и удалите доступ к требуемым пользователям / группам, добавив для каждого из них следующую строку:
-:<user or group>:ALL
Чтобы Отрицать логин пользователя ssh, добавьте его в конец файла конфигурации sshd (/etc/ssh/sshd_config
в Linux / Unix / BSD):
DenyUsers theusername
Для групп:
DenyGroups thegroupname
Затем перезапустите sshd
служба. В Ubuntu 18.04 работает следующее:
systemctl restart sshd
Можно добавить список имен пользователей или групп, разделенных пробелами соответственно.
В AllowUsers
и AllowGroups
директивы делают наоборот.
Отрывок из Справочная страница sshd_config:
DenyGroups
За этим ключевым словом может следовать список шаблонов имен групп, разделенных пробелами. Вход запрещен для пользователей, чья основная группа или список дополнительных групп соответствует одному из шаблонов. Действительны только имена групп; числовой идентификатор группы не распознается. По умолчанию вход разрешен для всех групп. Директивы allow / deny обрабатываются в следующем порядке: DenyUsers, AllowUsers, DenyGroups, и наконец AllowGroups.
DenyUsers
За этим ключевым словом может следовать список шаблонов имен пользователей, разделенных пробелами. Вход запрещен для имен пользователей, соответствующих одному из шаблонов. Действительны только имена пользователей; числовой идентификатор пользователя не распознается. По умолчанию вход разрешен для всех пользователей. Если шаблон имеет вид USER @ HOST, тогда USER и HOST проверяются отдельно, ограничивая вход в систему для определенных пользователей с определенных хостов. Директивы allow / deny обрабатываются в следующем порядке: DenyUsers, AllowUsers, DenyGroups, и наконец AllowGroups.
Видеть УЗОРЫ в ssh_config(5) для получения дополнительной информации о шаблонах.