用 fail2ban + nftables 把 SSH 爆破挡在门外
前两天看了下日志,一天被扫了 4000 多次,决定认真配置一下。
先看现状
grep "Failed password" /var/log/auth.log | wc -l
# 4312
一天 4312 次,平均每 20 秒一次。
配置 fail2ban
/etc/fail2ban/jail.local:
[DEFAULT]
bantime = 7200
findtime = 600
maxretry = 3
banaction = nftables-multiport
backend = systemd
[sshd]
enabled = true
port = 22022
效果
配置后一周的数据:
- 封禁 IP 数:287 个
- 剩余失败次数:12 次
基本清零了。
一个坑
如果你的 SSH 端口不是 22,port 一定要写对,不然 fail2ban 会以为一切正常,实际上什么都没封。
另外 nftables 和 iptables 的 banaction 不一样,Debian 12 默认是 nftables,别照抄老教程。
认真回一下:1)测试时间最好标注清楚,不同时段结果差异很大;2)测速节点要说明是在哪个城市、什么运营商;3)单次测试意义不大,建议连续测一周取平均。做到这三点,测评的说服力会强很多。
已上车,感谢情报。
已上车,感谢情报。
已上车,感谢情报。
这个坑我也踩过,血的教训。
这价格可以啊,去看看还有没有货。
已上车,感谢情报。
这个方案我用了半年,稳定。