我是 nftables 的新手,之前没有使用过fail2ban,所以我可能是错的,但我想我可能发现了fail2ban 中的一个错误。
我使用 nftables 构建了一组防火墙规则,看起来像这样
table ip filter {
chain input {
type filter hook input priority filter; policy drop;
.
my rules including a rule to allow access to port 22
.
}
}
但是,当我安装fail2ban并使用客户端禁止特定IP作为使用此命令的设置测试时
fail2ban-客户端设置 sshd banip 1.2.3.4
fail2ban 服务器将这 2 个基本链添加到我的“过滤器”表中
chain f2b-sshd {
ip saddr 1.2.3.4 counter reject
counter return
}
chain INPUT {
type filter hook input priority filter; policy accept;
meta l4proto tcp tcp dport 22 counter jump f2b-sshd
}
这似乎是有问题的,因为我的“输入”链和由fail2ban创建的“输入”链都具有相同的钩子优先级,并且根据nftables文档,它们的应用顺序将是不可预测的。
OTOH,文档还表明,即使我的“输入”链的优先级较低,导致它首先被评估,并且判决是接受连接,fail2ban“输入”链随后将被应用,所以也许这并不重要优先级是相同的。
谁能告诉我由fail2ban创建的“INPUT”链与我的“input”链具有相同的优先级这一事实是否会导致禁令被忽略?