在 CentOS 恢复 iptables 规则,常见有几种情况,下面按 CentOS 7/8(使用 firewalld 或 iptables 服务) 和 CentOS 6 分别说明。
iptables -L -n
systemctl status iptables
systemctl status firewalld
⚠️ CentOS 7 以后默认是 firewalld,iptables 可能被 firewalld 接管。
如果你之前备份过规则:
iptables-restore < /etc/sysconfig/iptables
或者:
iptables-restore < iptables.backup
✅ 立即生效
yum install -y iptables-services
systemctl stop firewalld
systemctl disable firewalld
systemctl enable iptables
systemctl start iptables
iptables-restore < /etc/sysconfig/iptables
CentOS 规则默认保存在:
/etc/sysconfig/iptables
直接恢复:
iptables-restore < /etc/sysconfig/iptables
ls /etc/sysconfig/iptables*
ls /var/lib/iptables/
iptables -F
iptables -X
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
保存:
service iptables save
# 或
iptables-save > /etc/sysconfig/iptables
service iptables restart
或:
iptables-restore < /etc/sysconfig/iptables
✅ 开机自动加载:
systemctl enable iptables
✅ 定期备份:
iptables-save > /root/iptables-$(date +%F).bak
| 系统 | 推荐 |
|---|---|
| CentOS 6 | iptables |
| CentOS 7/8 | firewalld(不用 iptables) |
| 需要 iptables | 关闭 firewalld |
iptables: No config fileiptables-save > /etc/sysconfig/iptables
如果你愿意,可以告诉我:
/etc/sysconfig/iptables我可以给你 精确恢复方案。