要在centos上限制ssh的登录尝试,您可以采用以下两种方法:
Fail2ban是一款用于阻止恶意IP地址的工具,通过监控日志文件并根据设定规则来封禁可疑IP。在centos上安装Fail2ban,您可以执行以下命令:
sudo yum install epel-release sudo yum install fail2ban
安装完成后,启动Fail2ban服务并设置为开机自启:
sudo systemctl start fail2ban sudo systemctl enable fail2ban
接下来,您需要对Fail2ban进行配置。编辑或创建配置文件/etc/fail2ban/jail.local,并添加如下内容:
[DEFAULT] bantime = 600 findtime = 600 maxretry = 3 [ssh] enabled = true port = ssh filter = sshd logpath = /var/log/secure maxretry = 3
上述配置设定为:若某个IP在600秒内尝试登录失败超过3次,则该IP会被封禁600秒。您可以根据实际情况调整这些参数。
配置完成后,重启Fail2ban服务以使更改生效:
sudo systemctl restart fail2ban
编辑/etc/pam.d/sshd文件,并添加以下行:
auth required pam_tally2.so onerr=fail deny=3 unlock_time=600
此设置允许每个用户尝试登录3次,超过3次将被锁定600秒。您可以根据需求调整这些参数。
保存更改后,重启SSH服务以应用配置:
sudo systemctl restart sshd
通过上述两种方法,您可以有效限制CentOS上SSH的登录尝试。Fail2ban提供了一种更灵活的管理方式,可以应用于多种服务的封禁策略;而PAM则直接嵌入在SSH服务中,提供了一种简单直接的解决方案。根据您的具体需求,选择合适的方法即可。