在 CentOS 系统中使用 firewall-cmd 永久封禁 85.x.x.x 网段(需明确子网掩码,以下以最常用的 /8 网段为例,即封禁整个 85.0.0.0 - 85.255.255.255 段),操作步骤如下:
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="85.0.0.0/8" reject'
- 若需精准封禁更小网段(如 85.10.0.0/16、85.10.20.0/24),只需修改
address 后的网段(例如 85.10.0.0/16)。
reject:拒绝该网段所有流量(主动返回拒绝包);若需 “静默丢弃”(不返回任何包),可替换为 drop。
永久规则需重载后才会生效:
firewall-cmd --reload
firewall-cmd --permanent --list-rich-rules
若输出中包含 rule family="ipv4" source address="85.0.0.0/8" reject,说明规则已成功添加。
firewall-cmd --list-rich-rules
-
网段掩码说明:
85.0.0.0/8:封禁整个 85 开头的 IP 段(85.0.0.0 ~ 85.255.255.255)。
85.a.0.0/16:封禁 85.a.x.x 段(a 为具体数字,如 85.10.0.0/16)。
85.a.b.0/24:封禁 85.a.b.x 段(如 85.10.20.0/24)。
- 若只需封禁单个 IP(如 85.1.2.3),地址写
85.1.2.3/32 即可。
-
解除封禁:若需取消该网段封禁,执行:
firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="85.0.0.0/8" reject'
firewall-cmd --reload # 重载生效
-
注意事项:
操作前确保 firewalld 服务已启动:systemctl start firewalld && systemctl enable firewalld 避免误封自身网段或业务所需 IP,建议先测试规则(临时规则:去掉 --permanent,重启防火墙后失效)。
# 添加永久封禁规则
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="85.123.45.0/24" drop'
# 重载生效
firewall-cmd --reload
# 验证
firewall-cmd --list-rich-rules
注意:本文归作者所有,未经作者允许,不得转载