我从 centos/epel 安装了最新的 fail2ban,并在 jail.local 中添加了启用 ssh 的选项。我尝试过 action 和 banaction =firewallcmd-ipset,但都没有任何效果。iptables-multi 最初位于配置中,我注意到它没有被禁止后就更改了它。我尝试列出 iptables 规则以及使用过 firewall-cmd --list-all-zones,但什么都没有列出。此外,禁令日志中还有几条已被禁止的消息。
通知 [sshd] 61.174.51.204 已被禁止
答案1
如果您检查 action.d 目录,您会发现reload
在通过 fail2ban 添加 DROP 或 REJECT 源 IP 的规则后,所有与防火墙相关的操作都忘记放入命令中,reload
这很重要,因为它使规则被 FirewallD 接受。我建议您修改操作以适合您的需要,但是,恕我直言,FirewallD 就像一个控制 iptables 的管理器,它更适合工作站而不是服务器环境。因此,解决问题的最有效方法是,
systemctl stopfirewalld(停止防火墙)
systemctl 掩码防火墙
并启用你的 iptables。