发布于2026-06-02 阅读(0)
扫一扫,手机访问
相信不少朋友都遇到过这个问题:辛苦用iptables配好的防火墙规则,系统一重启就全没了。确实,iptables默认不会自动保存配置,所以得想个办法把规则“定格”下来。下面聊聊几种主流的保存和恢复方案,都很实用。

iptables-sa ve + iptables-restore这是最直接、最朴素的方法,也是很多老手习惯用的。
保存当前配置到文件
sudo iptables-sa ve > /etc/iptables/rules.v4
这条命令会把当前所有IPv4规则一股脑儿导出到/etc/iptables/rules.v4这个文件里。位置可以自己选,但放在/etc/iptables/下比较规范。如果用的是IPv6,就把rules.v4换成rules.v6,命令也换成ip6tables-sa ve。
恢复配置
系统重启后,或者你想从备份里恢复规则,跑下面这条命令就行:
sudo iptables-restore < /etc/iptables/rules.v4
这样就妥妥的了。当然,为了让系统每次启动时自动加载,你还需要在启动脚本里加上这一句,或者利用下面更自动化的方法。
iptables-persistent这个工具可以帮你省掉手动写启动脚本的麻烦。iptables-persistent在安装时就会询问是否保存当前规则,并且在系统启动时自动恢复。
安装
sudo apt-get update
sudo apt-get install iptables-persistent
安装过程会问你是否要保存当前的iptables规则,果断选“是”就行。
手动保存
假如安装时没选,或者后来规则又改了,可以手动保存:
sudo netfilter-persistent sa ve
查看保存状态
sudo netfilter-persistent status
这条命令可以让你知道当前哪些规则已经被持久化了。
service 或 systemctl部分发行版(比如老一点的CentOS或RHEL)会把防火墙规则管理集成到系统服务里。
保存规则
sudo service iptables sa ve
或者用更精细一点的操作:
sudo systemctl stop iptables
sudo iptables-sa ve > /etc/iptables/rules.v4
sudo systemctl start iptables
恢复规则
同样,恢复时使用iptables-restore命令。
sudo iptables-restore < /etc/iptables/rules.v4
root权限(也就是sudo),普通用户是没法操作防火墙核心的。apt vs yum)和服务管理工具(systemctl vs service)可能不完全一样。比如Debian/Ubuntu系列常用apt和systemctl,而旧版CentOS/RHEL则更习惯yum和service iptables。需要根据你的实际情况灵活调整。以上就是几种主流的iptables配置持久化方案。选一个你感觉最顺手、也最符合你系统环境的就行。规则保存好了,重启就不再是烦恼了。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8