Как настроить двухфакторную аутентификацию с OTP на FreeBSD?


8

У меня есть сервер FreeBSD, к которому я хотел бы получить доступ из любой точки мира. Обычно я использую публичный ключ SSH для входа в систему, или если у меня нет доступного личного ключа SSH, тогда я могу использовать обычный пароль поверх SSH. Однако при входе с ненадежного компьютера всегда есть риск, что кейлоггер захватит мой пароль во время его ввода.

FreeBSD уже поддерживает OPIE, которая представляет собой схему одноразовых паролей. Это прекрасно работает, но одноразовый пароль является единственной необходимой аутентификацией. Если я распечатываю список одноразовых паролей для последующего использования, то если я потеряю этот список, то это все, что кому-то нужно.

Я хотел бы настроить аутентификацию таким образом, чтобы мне требовался одноразовый пароль плюс что-то, что я знаю (пароль, кроме моего обычного пароля для входа в систему). У меня такое чувство, что ответ как-то связан с PAM/etc/pam.d/sshd), но я не уверен в деталях.

Как настроить аутентификацию, где требуются два метода?

Ответы:


3

Поскольку вы хотите использовать пароль, отличный от пароля вашей обычной учетной записи, попробуйте security/pam_pwdfileиспользовать дерево портов.
По сути, он позволяет вам использовать альтернативный файл (format:) username:crypted_passwordдля аутентификации.
Чтобы использовать его, поместите следующую строку /etc/pam.d/sshd прямо перед строкой pam_opie:

auth    required    /usr/local/lib/pam_pwdfile.so    pwdfile    /path/to/pwd/file

1

Duo Security (наша компания) предлагает пакет с открытым исходным кодом, который поддерживает OTP, обратный вызов по телефону, SMS и push-аутентификацию смартфона для SSH с паролями, pubkey или любым основным механизмом аутентификации - с PAM или без него:

http://blog.duosecurity.com/2011/04/announcing-duos-two-factor-authentication-for-unix/


0

Предполагая, что для этого используется pam, это должно быть так же просто, как поместить два необходимых модуля в /etc/pam.d/. Один для Опи, а другой для вашего другого автора. (скажем, обычный пароль UNIX)


0

Рассмотрите возможность использования pam-radius. Это должно скомпилировать на BSD. Все корпоративные двухфакторные системы аутентификации поддерживают радиус. Радиус является очень стандартным стандартом, поэтому вы получите большую гибкость.

НТН.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.