在企业或个人服务器环境中,保护系统账户安全至关重要。攻击者常通过暴力破解尝试猜测用户密码,从而非法登录系统。为应对这一风险,CentOS(以及其他基于RHEL的Linux发行版)提供了强大的账户锁定机制。本文将手把手教你如何配置CentOS账户锁定策略,即使你是Linux新手也能轻松上手。
账户锁定策略是指:当某个用户在一定时间内连续输入错误密码达到设定次数后,系统会自动暂时或永久锁定该账户,阻止进一步的登录尝试。这能有效防御自动化工具发起的暴力破解攻击。
从CentOS 7开始,系统默认使用 pam_faillock 模块来管理失败登录尝试和账户锁定。该模块记录失败登录次数,并根据配置决定是否锁定账户。
在修改任何系统安全配置前,请务必先备份!执行以下命令:
sudo cp /etc/pam.d/system-auth /etc/pam.d/system-auth.baksudo cp /etc/pam.d/password-auth /etc/pam.d/password-auth.bak
我们需要同时修改两个文件:/etc/pam.d/system-auth 和 /etc/pam.d/password-auth。这两个文件在CentOS中通常互相包含,但为保险起见建议都修改。
使用你喜欢的编辑器(如 vi 或 nano)打开 /etc/pam.d/system-auth:
sudo vi /etc/pam.d/system-auth 在文件开头找到 auth 部分,在适当位置插入以下三行(注意顺序很重要):
# 在 auth required pam_env.so 之后添加auth required pam_faillock.so preauth silent audit deny=5 unlock_time=900auth sufficient pam_unix.so try_first_passauth [default=die] pam_faillock.so authfail audit deny=5 unlock_time=900 说明:
deny=5:允许最多5次失败登录尝试。unlock_time=900:锁定时间为900秒(15分钟)。设为0表示永久锁定(不推荐)。audit:将失败记录写入系统日志(/var/log/secure)。preauth 和 authfail:分别用于预检查和失败处理。接着,在 account 部分末尾添加一行:
account required pam_faillock.so
重复第2、3步,对 /etc/pam.d/password-auth 做完全相同的修改。这是因为在某些服务(如SSH)中会调用此文件。
创建一个测试用户(不要用root!):
sudo useradd testusersudo passwd testuser
然后故意输错5次密码尝试登录,第6次应提示账户被锁定。15分钟后自动解锁。
失败登录记录存储在 /var/run/faillock/ 目录下,每个用户一个文件。
查看某用户失败次数:
sudo faillock --user testuser 手动解锁账户:
sudo faillock --user testuser --reset root 用户启用锁定策略,以免被恶意锁定导致系统无法管理。fail2ban 等工具可实现IP级封锁,提供更全面的Linux安全加固。/var/log/secure 日志,监控异常登录行为。通过合理配置 pam_faillock,你可以轻松在CentOS系统中实施有效的账户暴力破解防护机制。这不仅提升了服务器的安全性,也符合企业安全合规要求。记住,安全是一个持续的过程,定期审查和更新你的CentOS账户锁定策略是运维工作的关键一环。
关键词:CentOS账户锁定策略, Linux安全加固, pam_faillock配置, 账户暴力破解防护
本文由主机测评网于2025-12-02发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025122133.html