在 CentOS 中,iptables 规则默认不会自动保存,重启后会丢失。需要手动保存并配置开机自动恢复。下面按 CentOS 版本说明。
service iptables save
或
iptables-save > /etc/sysconfig/iptables
chkconfig iptables on
cat /etc/sysconfig/iptables
⚠️ CentOS 7 以后默认使用
firewalld,如果你在用iptables,需要先确认。
yum install -y iptables-services
systemctl stop firewalld
systemctl disable firewalld
systemctl enable iptables
systemctl start iptables
service iptables save
或
iptables-save > /etc/sysconfig/iptables
cat /etc/sysconfig/iptables
iptables-save > /root/iptables.rules
iptables-restore < /root/iptables.rules
编辑 /etc/rc.d/rc.local:
iptables-restore < /root/iptables.rules
并赋予执行权限:
chmod +x /etc/rc.d/rc.local
如果是 IPv6 规则:
ip6tables-save > /etc/sysconfig/ip6tables
service ip6tables save
service iptables saveiptables 服务firewalld 覆盖iptables -L -n -v
firewalldiptables-services如果你愿意,可以告诉我:
我可以给你一套最稳妥的配置方案。