是否可以设置多个 2FA pam 并让用户选择登录时使用哪一个?
我已经google-authenticator
设置好了。我已成功使用我的 yubiko 密钥作为第二个因素。我希望可以选择在登录时使用哪个因素,这样我就可以选择更方便的因素,或者使用其中一个作为备用方法。
答案1
据我所知,没有标准/方法允许用户在登录期间从命令行提示符中选择他们想要使用哪个 MFA 进行登录。(但您始终可以编写自己的 PAM 模块来执行此操作...#CurrentTeam 做到了但没有将其发布到公共领域。)
对于最终用户来说,这不是最透明的,但你可以用库存工具来做PAM 链配置后备方法。
设置 Yubico PAM 模块sufficient
,当您通过有效的一次性密码 (OTP) 时,您将被授予访问权限。
如果您输入的内容无法验证为正确的 Yubikey OTP,则身份验证将转到下一个允许的方法,即 Google-Authenticator PAM 模块。
该 PAM 模块应设置为required
。
如果您在无法输入有效的 Yubibey OTP 后输入有效的 Google Authenticator 代码,您将被授予访问权限,否则如果您不输入,您的身份验证将被拒绝。
这应该有点类似于添加以下内容:
auth sufficient pam_yubico.so id=16 debug authfile=/path/to/mapping/file
auth required pam_google_authenticator.so