Как я могу настроить OpenSSH для отдельных методов аутентификации?

9

Мне бы хотелось, чтобы один набор пользователей проходил аутентификацию с использованием аутентификации с открытым ключом, а другие пользователи использовали аутентификацию по паролю.

Возможно ли это в OpenSSH в Linux? Если да, то как мне это сделать?

После просмотра /etc/ssh/sshd_configкажется, что я ограничен включением аутентификации по ключу или использованием PAM.

Бельмин Фернандес
источник

Ответы:

15

MatchДиректива (описано в man sshd_config) позволяет определить различные методы аутентификации для разных пользователей в одном экземпляре Sshd сервера. В качестве бонуса для перечисления отдельных пользователей и групп, он также позволяет выбирать их с помощью групповых символов.

Match Group wheel                # for users from group wheel:
PubkeyAuthentication
Match Group !wheel,*             # for other users:
PasswordAuthentication
# caution: don't add directives here - they will be caught by "Match" block
# (end of file /etc/ssh/sshd_config)
kubanczyk
источник
0

Можно запустить два разных экземпляра OpenSSH. Один будет настроен для, PasswordAuthenticationа другой для PubkeyAuthentication(каждый связан с другим адресом). Тогда AllowGroupsдиректива конфигурации будет использоваться для управления тем, какие группы могут использовать какой сервер.

Но я, возможно, неправильно понимаю вопрос, потому что вы говорите: «Это аутентификация PAM или PublicKey». Оба могут быть включены одновременно. Они не являются взаимоисключающими.


источник