CentOS防火墙备份与恢复配置
一、备份配置
-
firewalld(CentOS 7及以上默认)
- 导出规则到文件:
sudo firewall-cmd --zone=public --list-all-export > firewall-backup-public.xml(备份指定区域,如public)
或备份所有配置:
sudo firewall-cmd --runtime-to-permanent && sudo firewall-cmd --list-all > /etc/firewalld/zones/public.xml - 打包配置文件:
sudo tar -czvf firewall-backup.tar.gz /etc/firewalld(备份整个firewalld配置目录)
- 导出规则到文件:
-
iptables(CentOS 6及更早版本)
sudo iptables-save > /root/iptables.bak(备份当前iptables规则)
二、恢复配置
-
firewalld
- 从备份文件恢复:
sudo firewall-cmd --import < /path/to/backup/firewalld_rules.xml(需先停止服务)
或解压备份的tar包到/etc/firewalld后重启服务:
sudo systemctl restart firewalld - 恢复默认配置:
sudo firewall-cmd --complete-reload(清除所有自定义规则,恢复默认)
- 从备份文件恢复:
-
iptables
sudo iptables-restore < /root/iptables.bak(恢复之前备份的规则)
三、注意事项
- 操作前建议先备份当前配置。
- CentOS 7及以上需使用
firewalld命令,CentOS 6及更早需用iptables命令。 - 恢复后需重启防火墙服务使配置生效:
sudo systemctl restart firewalld。