在 CentOS 系统中,备份和恢复 iptables 规则有两种常见方式,具体取决于你使用的是 CentOS 6/7(传统 iptables) 还是 CentOS 8+(nftables)。下面分别说明。
iptables -L -n -v
iptables-save(推荐 ✅)iptables-save > /root/iptables.backup.$(date +%F).rules
示例:
iptables-save > /root/iptables.backup.2026-01-21.rules
✅ 这是最标准、最完整的备份方式。
cp /etc/sysconfig/iptables /root/iptables.backup.rules
⚠️ 前提:iptables-services 已启用并保存过规则。
iptables-restore < /root/iptables.backup.2026-01-21.rules
systemctl enable iptables
或手动写入:
iptables-save > /etc/sysconfig/iptables
CentOS 8 以后,iptables 实际是 nftables 的兼容层。
iptables -L -n
nft list ruleset
iptables-save > /root/iptables.backup.rules
iptables-restore < /root/iptables.backup.rules
⚠️ 注意:
nftables 原生方式管理nft list ruleset > /root/nftables.backup.conf
恢复:
nft -f /root/nftables.backup.conf
加入 crontab 定期备份:
crontab -e
0 2 * * * /sbin/iptables-save > /root/iptables.backup.$(date +\%F).rules
| 场景 | 推荐方式 |
|---|---|
| CentOS 6/7 | iptables-save |
| CentOS 8+ | iptables-save 或 nft list ruleset |
| 开机自动加载 | /etc/sysconfig/iptables |
| 长期维护 | 迁移到 nftables |
如果你愿意,可以告诉我:
我可以给你一套 最合适、最稳定的备份方案。