自定义 pam 身份验证模块导致登录提示不强制输入密码

自定义 pam 身份验证模块导致登录提示不强制输入密码

我们有一个自定义 pam 模块,用于在 linux 之外验证我们自己的用户。我们已使用 sshd 和 login pam 文件注册了该模块。sshd 工作正常,但出于某种原因,当我尝试使用我们现有的用户之一进行本地控制台登录时,如果输入错误的密码,它仍然允许登录继续。我可以从日志中看到,由于密码错误,我正确地验证失败,就像我通过 ssh 进行验证时一样,但登录案例似乎忽略了它。我很好奇我的配置设置是否错误。以下是 /etc/pamd/login 的样子(我们的 pam 模块是 custom_pam.so):

#%PAM-1.0
auth       sufficient  custom_pam.so
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth       substack     system-auth
auth       include      postlogin
account    sufficient     custom_pam.so
account    required     pam_nologin.so
account    include      system-auth
password   include      system-auth
# pam_selinux.so close should be the first session rule
session    required     pam_selinux.so close
session    required     pam_loginuid.so
session    optional     pam_console.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session    required     pam_selinux.so open
session    required     pam_namespace.so
session    optional     pam_keyinit.so force revoke
session    include      system-auth
session    include      postlogin
-session   optional     pam_ck_connector.so

这有什么明显的问题吗?或者有没有什么方法可以打开 pam 操作的详细日志记录,以便查看从哪里获得成功登录?我测试了 root,结果由于密码错误而失败了。

相关内容