温馨提示×

centos iptables如何封ip

小樊
51
2026-09-11 15:02:57
栏目: 智能运维

在 CentOS 中使用 iptables 封禁 IP,常见做法如下(以 CentOS 6 / 早期版本为主;CentOS 7+ 默认用 firewalld,但 iptables 仍可用)。


一、临时封禁 IP(重启后失效)

1. 封禁单个 IP

iptables -I INPUT -s 1.2.3.4 -j DROP

2. 封禁 IP 段

iptables -I INPUT -s 1.2.3.0/24 -j DROP

3. 只封禁某端口(如 22)

iptables -I INPUT -s 1.2.3.4 -p tcp --dport 22 -j DROP

二、解封 IP

iptables -D INPUT -s 1.2.3.4 -j DROP

或先查看规则编号:

iptables -L INPUT -n --line-numbers

再删除:

iptables -D INPUT 行号

三、永久生效(重要)

CentOS 6

service iptables save
# 或
/etc/init.d/iptables save

CentOS 7(使用 iptables 服务)

yum install iptables-services
systemctl enable iptables
systemctl start iptables
iptables-save > /etc/sysconfig/iptables

四、使用 firewalld(CentOS 7+ 推荐)

如果你用的是 firewalld:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="1.2.3.4" reject'
firewall-cmd --reload

五、常用建议

  • DROP:直接丢弃(更隐蔽)
  • REJECT:明确拒绝(有返回信息)
  • 封禁前确认不是误封自己 IP

如果你告诉我 CentOS 版本 和 要封的 IP / 场景,我可以给你更精确的命令。

0 踩