如何控制 PAM 中的身份验证尝试?

Sra*_*ani 5 linux login authentication pam

我想配置没有。在删除会话之前,将提示用户输入密码(身份验证尝试)进行登录的次数。PAM 是否支持这种情况,如果支持,您能帮我完成所需的配置吗?

Tho*_*man 6

有一个用于 PAM 的登录计数器模块pam_tally,可用于维护尝试登录尝试的计数,并在一定数量的登录尝试失败时阻止进一步的尝试。

例子:

在 Debian 上,您可以添加以下几行,/etc/pam.d/common-auth以便在帐户被锁定之前为用户提供 3 次登录尝试:

auth required pam_tally.so onerr=fail deny=3 no_magic_root
Run Code Online (Sandbox Code Playgroud)

no_magic_root可以防止 root 用户被锁定。

正如peterph指出的那样,该unlock_time选项可用于指定锁定帐户将自动解锁的秒数。通过将此选项设置为1,即锁定帐户一秒钟,登录尝试可以在指定的尝试次数后中止,同时仍然允许用户(几乎)立即重试。

添加以下行将/etc/pam.d/common-account在成功登录时重置登录计数:

account required pam_tally.so reset no_magic_root
Run Code Online (Sandbox Code Playgroud)

在 Fedora 上,这两行都可以添加到/etc/pam.d/system-auth.

user可以使用随附的pam_tally实用程序恢复对锁定帐户的访问,如下所示:

$ pam_tally --user user --reset=0
Run Code Online (Sandbox Code Playgroud)