我注意到 fedora/redhat 有工具 authselect/authconfig 来在 system-auth 中配置 pam_faillock,因此它将在系统范围的身份验证阶段工作。
Ubuntu 使用 pam-auth-update 来配置系统范围的 common-* ,我没有找到使用 pam-auth-update 将 pam_faillock 添加到 common-* 的方法,因为 pam_faillock 需要在 authsucc 和 authfail 条件下进行配置。因此我必须手动将 pam_faillock 配置到 common-* ,并且 common-* 可能会被升级其他 pam 模块覆盖,例如 libpam-sss。
有没有什么方法可以在 ubuntu 中优雅地配置 pam_faillock?
答案1
有点晚了,但我自己也在研究这个问题,下面的方法应该可行。
您需要在以下位置创建一个或两个 pam-config 文件/usr/share/pam-configs/
这将启用故障锁定功能。您可能只需要/etc/security/faillock.conf
根据需要修改文件即可。
# /usr/share/pam-configs/my_faillock
Name: Enforce failed login attempt counter
Default: no
Priority: 0
Auth-Type: Primary
Auth:
[default=die] pam_faillock.so authfail
sufficient pam_faillock.so authsucc
如果相关帐户被锁定,这个将会通知(cli 和 gui)。
# /usr/share/pam-configs/my_faillock_notify
Name: Notify of failed login attempts
Default: no
Priority: 1024
Auth-Type: Primary
Auth:
requisite pam_faillock.so preauth
创建以上内容后,您可以使用命令启用pam-auth-update
。
我认为从技术上讲,我们不应该在此位置创建文件,但这似乎比直接修改文件更好/etc/pam.d/
请参阅此处了解更多信息:https://wiki.ubuntu.com/PAMConfigFrameworkSpec