限制SSH登录尝试次数是一种常见的安全措施,可以防止暴力破解攻击。以下是几种常见的方法来实现这一目标:
编辑PAM配置文件:
打开 /etc/pam.d/sshd 文件,并添加或修改以下行:
auth required pam_tally2.so onerr=fail deny=5 unlock_time=600
这里的 deny=5 表示允许5次失败的登录尝试,unlock_time=600 表示在600秒(10分钟)内锁定账户。
重启SSH服务: 保存文件并重启SSH服务以应用更改:
sudo systemctl restart sshd
Fail2Ban是一个更高级的工具,可以监控日志文件并根据规则自动禁止IP地址。
安装Fail2Ban:
sudo apt-get install fail2ban
配置Fail2Ban:
编辑 /etc/fail2ban/jail.local 文件,添加或修改以下内容:
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 5
bantime = 600
这里的 maxretry=5 表示允许5次失败的登录尝试,bantime=600 表示在600秒(10分钟)内禁止IP地址。
启动Fail2Ban:
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
你可以使用iptables来限制SSH登录尝试次数。
创建iptables规则:
sudo iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set
sudo iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 600 --hitcount 5 -j DROP
保存iptables规则:
sudo sh -c "iptables-save > /etc/iptables/rules.v4"
设置iptables规则开机自启:
创建一个systemd服务文件 /etc/systemd/system/iptables-restore.service:
[Unit]
Description=Restore iptables rules
After=network.target
[Service]
Type=oneshot
ExecStart=/sbin/iptables-restore < /etc/iptables/rules.v4
[Install]
WantedBy=multi-user.target
启用并启动该服务:
sudo systemctl enable iptables-restore.service
sudo systemctl start iptables-restore.service
通过以上方法,你可以有效地限制SSH登录尝试次数,提高系统的安全性。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。