在CentOS上限制SSH登录次数,可以通过配置PAM(Pluggable Authentication Modules)来实现。以下是具体步骤:
pam_tally2模块安装pam_tally2模块:
sudo yum install pam_tally2
编辑PAM配置文件:
打开/etc/pam.d/sshd文件进行编辑:
sudo vi /etc/pam.d/sshd
添加PAM规则: 在文件的顶部或适当位置添加以下行:
auth required pam_tally2.so onerr=fail deny=5 unlock_time=600
解释:
deny=5:允许最多5次失败的登录尝试。unlock_time=600:锁定时间为600秒(10分钟)。保存并退出:
按Esc键,然后输入:wq保存并退出。
重启SSH服务:
sudo systemctl restart sshd
pam_faillock模块安装pam_faillock模块:
sudo yum install pam_faillock
编辑PAM配置文件:
打开/etc/pam.d/sshd文件进行编辑:
sudo vi /etc/pam.d/sshd
添加PAM规则: 在文件的顶部或适当位置添加以下行:
auth required pam_faillock.so preauth silent audit deny=5 unlock_time=600
auth [success=done new_authtok_reqd=done default=ignore] pam_unix.so
auth requisite pam_deny.so
auth required pam_permit.so
解释:
deny=5:允许最多5次失败的登录尝试。unlock_time=600:锁定时间为600秒(10分钟)。preauth silent audit:在认证之前进行锁定,并记录审计日志。保存并退出:
按Esc键,然后输入:wq保存并退出。
重启SSH服务:
sudo systemctl restart sshd
你可以通过以下命令查看当前的登录失败次数:
sudo pam_tally2 --user=username --reset
或者使用pam_faillock模块的命令:
sudo faillock --user=username --reset
通过以上步骤,你可以在CentOS上成功限制SSH登录次数,提高系统的安全性。