Недавно я включил двухфакторную аутентификацию с помощью google-authenticator на моем SSH-сервере. Однако сейчас я сталкиваюсь с проблемой:
У меня есть другая группа пользователей на моем сервере, которую я использую для SFTP, но эта группа больше не может войти в систему, так как 2FA не настроен для пользователей в группе. Можно ли отключить модуль google-authenticator для этой группы? Включение этого для пользователей в группе не вариант, потому что несколько пользователей будут использовать эту учетную запись.
PS: пользуюсь openssh-server
Ответы:
Вы можете использовать
pam_succeed_if
модуль (см. Страницу руководства) перед тем,pam_google_authenticator
как пропустить эту часть для вашей группы:источник
[success=1 default=ignore]
вместоrequired
. Я думаю, что сейчас пользователь, не входящий в группу, приведет к сбою аутентификации.success=1
заставит пропустить следующий метод,default=ignore
будет означать, что пользователи, не входящие в группу, просто перейдут к следующему методу.Некоторые клиенты SFTP могут обрабатывать 2FA. Например, я использую 2FA с FileZilla и WinSCP, и они работают. Также у меня есть настройка аутентификации по ssh-ключу, и она работает вместе с 2FA.
Однако ваш вопрос интересен, и я сделал небольшой опрос. Я нашел этот ответ .
Таким образом, можно (и легко) запускать отдельные экземпляры ssh. Я уже проверил это.
Сделайте отдельные копии
sshd_config
файла.Отредактируйте эти новые
config
файлы. Одна из вещей, которую вы должны изменить, это порт shh. По примеру:2.a)
sshd_config_pwd
конкретные строки:2.b)
sshd_config_2fa
конкретные строки:Откройте необходимые порты в брандмауэре. По примеру:
Запустите новые экземпляры ssh:
Вот и все.
источник
sshd_config
чтобы использовать другой стек PAM и не использовать 2FA?Ниже будет сделать Google 2fa обязательным для всех пользователей ,
кроме пользователей , принадлежащих к SUDO и администратору группе
(то есть , если пользователь из группы Суда или администратора не 2fa настроен, он будет аутентифицировать его / ее на основе их открытого ключа):
Файл:
/etc/pam.d/sshd
Файл:
/etc/ssh/sshd_config
Результаты:
Согласно документации Google Authenticator README.md :
Это делает использование
nullok
здесь безопасным.источник