我使用公开密钥身份验证,在我自己的机器上管理我的私有服务器99%的时间。但是,我已经启用了密码(为我的用户启用,而不是为root启用),这是我需要从另一台计算机访问它的罕见情况,这种情况已经发生了。
为了提高系统的安全性,我希望启用2FA,但只用于密码登录。我非常感谢不用任何提示就登录的方便,我宁愿不用2FA,也不愿意每次都使用2FA (我在机密项目上工作,并且我已经在一个典型的工作日做了十几个或者更多的2FA文档)。
我为设置2FA找到的所有指南都假设您希望2FA跨所有auth方法活动。
我--如果是的话,如何--只对密码认证启用2FA,而不对公钥启用2FA?
如果这不起作用,我的解决办法是禁用常规用户的密码,并设置启用2FA的维护用户。但我更喜欢一个更干净的设置。
发布于 2021-09-27 13:09:06
这是推测,所以肯定有一些调整需要做,但你描述的行为是绝对可能的。
您可以使用以下内容设置PAM auth配置:
auth sufficient pam_ssh_user_auth.so
auth required password-auth
auth required pam_2fa.so此配置文件按顺序读取。第一行说,‘如果ssh身份验证成功了,这就足够了。假设您启用了ssh公钥,这将导致成功的auths退出。只有当我们还没有使用公钥时,接下来的两行才会运行。我们只需包含适当的密码- auth和2fa auth。
https://unix.stackexchange.com/questions/670692
复制相似问题