1

У меня есть инфраструктура MIT-Kerberos / OpenLDAP. Я хочу ограничить ssh-доступ для моих пользователей, чтобы только ssh-пользователи имели доступ к моим серверам. Когда у меня только что был OpenLDAP без krb5, я использовал pam_access для ограничения пользователей:

 + : usersinternal : ALL
 - : ALL EXCEPT root : ALL

который сделал именно то, что я хотел; и до сих пор делает для PAM-логинов.

Моя проблема заключается в том, что все пользователи могут войти в систему с помощью единого входа:

me@workstation ~ % ssh test@intern.example.com
test@intern.example.com's password: 
Permission denied, please try again.
# user cannot login 

me@workstation ~ % kinit test
Password for test@EXAMPLE.COM: 
me@workstation ~ % ssh test@intern.example.com
test@intern:~$ ## login successful, i am on the server
Connection to intern.example.com closed.

вот часть GSSAPI моего sshd_config:

root@intern ~ # grep -i gssapi /etc/ssh/sshd_config
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes
GSSAPIKeyExchange yes

Я думаю, это потому, что когда пользователи успешно аутентифицируются на krb5, PAM-часть не используется; так что это хороший способ ограничить, кто может войти; желательно через группу или что-то.

1 ответ1

1

Я думаю, что вы ищете опцию AllowGroups в файле sshd_config :

 AllowGroups
         This keyword can be followed by a list of group name patterns, separated by spaces.  If specified, login is allowed only for users whose primary group
         or supplementary group list matches one of the patterns.  Only group names are valid; a numerical group ID is not recognized.  By default, login is
         allowed for all groups.  The allow/deny directives are processed in the following order: DenyUsers, AllowUsers, DenyGroups, and finally AllowGroups.

         See PATTERNS in ssh_config(5) for more information on patterns.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .