Google 身份验证器 MFA 代码在 Linux 上不起作用

Google 身份验证器 MFA 代码在 Linux 上不起作用

我想启用 MFA 以在运行 Debian 的笔记本电脑上使用 sudo 命令。我按照步骤启用了此功能,并使验证码可用于桌面登录。但在终端中,当我输入验证码时,它一直显示“抱歉,请重试。”。我不需要为 SSH 启用它。

这是我尝试过的步骤,我遵循指南在 Debian 上启用 MFA:

  • 我安装了 google lib pam 模块。
  • 我跑去google-authenticator设置 MFA,并用手机扫描二维码。
  • 在设置过程中,我输入了验证码,成功了。(第一次没有成功,因为 Debian 没有同步系统时间。我不得不执行额外的步骤来让系统时间自动更新,从而解决了这个问题)。
  • 我还对其进行了设置,以便它可以使用当前代码两侧的代码,因此时间同步应该不是问题。

然后,我将该auth required google_pam_authenticator.so行添加到目录中的各个文件中/etc/pam.d/,结果好坏参半。(我每次只将其添加到一个文件中)

  • 添加它common-session应该可以启用桌面登录的 MFA,它可以做到并且运行良好。
  • 添加common-auth应该为桌面登录和 sudo 启用 MFA,但它仅适用于桌面登录。
  • 添加sudo如下:
#%PAM-1.0

# Set up user limits from /etc/security/limits.conf.
session    required   pam_limits.so

auth required pam_google_authenticator.so
@include common-auth
@include common-account
@include common-session-noninteractive

每次输入验证码时,都会出现同样的错误:“抱歉,请再试一次。”备份“刮擦码”也不起作用,我认为这与时间无关。

我尝试删除 Google 身份验证器配置并多次设置所有内容。每次我都检查.google-authenticator主目录中的文件是否与我在手机应用中使用的文件匹配。

相关内容