Firewalld,“--add-rich-rule”和缺少黑名单设置

Firewalld,“--add-rich-rule”和缺少黑名单设置

我的服务器使用最近安装的 Centos8(约 1 年)。

尝试禁止某个 IP 后:

firewall-cmd --permanent --zone=extz --add-rich-rule='rule family="ipv4" source address="49.88.112.70" drop'

我的系统似乎已损坏:

# firewall-cmd --reload
Error: COMMAND_FAILED: Direct: '/usr/sbin/iptables-restore -w -n' failed: iptables-restore v1.4.21: Set blacklist doesn't exist.

Error occurred at line: 2
Try `iptables-restore -h' or 'iptables-restore --help' for more information.

但重新启动服务却没有出现错误消息:

# systemctl restart firewalld

如果愿意的话(除了了解发生了什么)

  1. 要么恢复原状(似乎--remove-rich-rule还不够)
  2. 或者使禁止方法起作用(以某种方式使用 ipset 添加一组?)

答案1

据记载这里我们创建blacklist集合:

# sudo yum install ipset # was already installed
# sudo ipset create blacklist hash:ip hashsize 4096
# firewall-cmd --reload
success

正如 @MichaelHampto 在评论中指出的那样,该错误可能是由之前(部分)尝试达到相同目标(阻止 IP)引起的;类似于以下内容: 使用firewalld centos 7 删除 ip 黑名单

错误的解决应该是正确的但是和丰富的规则无关。

相关内容