Как настроить двухфакторную аутентификацию с 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
MikeyMike
источник
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. Все корпоративные двухфакторные системы аутентификации поддерживают радиус. Радиус является очень стандартным стандартом, поэтому вы получите большую гибкость.

НТН.

nowen
источник