我想配置没有。在删除会话之前,有时会提示用户输入密码(尝试身份验证)进行登录。 PAM 是否支持这种情况,如果支持,您能帮我完成所需的配置吗?
答案1
PAM 有一个登录计数器模块,称为pam_tally
它可用于维护尝试登录尝试的计数,并在一定数量的登录尝试失败时阻止进一步的尝试。
例子:
在 Debian 上,您可以添加以下行,以便/etc/pam.d/common-auth
在帐户被锁定之前为用户提供三次登录尝试:
auth required pam_tally.so onerr=fail deny=3 no_magic_root
这no_magic_root
可以防止 root 用户被锁定。
作为彼得夫指出,该unlock_time
选项可用于指定锁定帐户在多少秒后自动解锁。通过将此选项设置为1
,即锁定帐户一秒钟,可以在指定次数尝试后中止登录尝试,同时仍允许用户(几乎)立即重试。
添加以下行将/etc/pam.d/common-account
重置成功登录后的登录计数:
account required pam_tally.so reset no_magic_root
在 Fedora 上,这两行都可以添加到/etc/pam.d/system-auth
.
user
可以使用附带的实用程序恢复对锁定帐户的访问pam_tally
,如下所示:
$ pam_tally --user user --reset=0
答案2
如果您试图控制提示某人的次数,而不是他们无法验证的次数,那么您可能会在通过 PAM 进行管理时遇到困难。例如,ssh 有其自己的配置:
NumberOfPasswordPrompts
Specifies the number of password prompts before giving up. The
argument to this keyword must be an integer. The default is 3.