用户登录锁定策略PAM配置
使用 pam_faillock.so
模块来实现密码登录错误 m 次后锁定账户 n 分钟的功能,pam_faillock.so
是 PAM(可插入认证模块)的一部分,在较新的系统中常被用于替代 pam_tally2.so
来进行登录失败次数的跟踪和锁定。以下是具体的配置步骤:
1. 编辑pam配置文件
对于 /etc/pam.d/system-auth
在 auth
部分添加如下配置:
auth required pam_faillock.so preauth audit deny=3 even_deny_root unlock_time=60
auth sufficient pam_unix.so nullok try_first_pass
auth [default=die] pam_faillock.so authfail audit deny=3 even_deny_root unlock_time=60
auth sufficient pam_faillock.so authsucc audit deny=3 even_deny_root unlock_time=60
account required pam_faillock.so
deny=3
:表示允许的最大失败尝试次数为 3 次。unlock_time=60
:表示锁定时间为 60 秒(即 1 分钟)。even_deny_root
:表示对 root 用户也应用此规则。
对于 /etc/pam.d/password-auth
和 password-auth-crond
在 auth
部分添加如下配置:
auth required pam_faillock.so preauth audit deny=3 even_deny_root unlock_time=60
auth sufficient pam_unix.so nullok try_first_pass
auth [default=die] pam_faillock.so authfail audit deny=3 even_deny_root unlock_time=60
auth sufficient pam_faillock.so authsucc audit deny=3 even_deny_root unlock_time=60
2. 验证配置
完成上述配置后,当用户连续登录失败 3 次时,账户将被锁定 1 分钟。你可以通过以下命令查看用户的锁定状态:
faillock --user <username>
其中,<username>
是你要查看的用户名。
如果你想手动重置用户的失败尝试次数,可以使用以下命令:
faillock --user <username> --reset
作者:wanghongwei
版权声明:本作品遵循<CC BY-NC-ND 4.0>版权协议,商业转载请联系作者获得授权,非商业转载请附上原文出处链接及本声明。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统