我有一台 FreeBSD 服务器,我希望能够从任何地方访问它。通常我使用 SSH 公钥登录,或者如果我没有可用的 SSH 私钥,我可能会使用常规密码而不是 SSH。但是,当从不受信任的机器登录时,始终存在键盘记录器在我输入登录密码时捕获我的登录密码的风险。
FreeBSD 已经有支持 OPIE这是一个一次性密码方案。这很好用,但一次性密码是仅有的需要身份验证。如果我打印出一次性密码列表以供以后使用,那么如果我丢失了该列表,那么这就是某人所需要的全部内容。
我想设置身份验证,以便我需要一次性密码加我知道的东西(密码,但不是通常的登录密码)。我感觉答案与聚丙烯酰胺(和/etc/pam.d/sshd
)但我不确定细节。
如何设置需要两种方法的身份验证?
答案1
也许可以使用 google authenticator?我的 OpenSolaris 盒子首先要求输入普通登录密码,然后要求输入 TOTP 验证码。如下所示:http://www.marzocchi.net/Olafsen/Software/Two-FactorAuthentication
答案2
为此,您必须使用“required”控制标志将普通的“ssh_auth”模块与“pam_opie”模块堆叠在一起。