商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > iptables如何保存当前配置

iptables如何保存当前配置

  发布于2026-06-02 阅读(0)

扫一扫,手机访问

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

iptables如何保存当前配置

方法一:iptables-sa ve + iptables-restore

这是最直接、最朴素的方法,也是很多老手习惯用的。

  1. 保存当前配置到文件

    sudo iptables-sa ve > /etc/iptables/rules.v4

    这条命令会把当前所有IPv4规则一股脑儿导出到/etc/iptables/rules.v4这个文件里。位置可以自己选,但放在/etc/iptables/下比较规范。如果用的是IPv6,就把rules.v4换成rules.v6,命令也换成ip6tables-sa ve

  2. 恢复配置
    系统重启后,或者你想从备份里恢复规则,跑下面这条命令就行:

    sudo iptables-restore < /etc/iptables/rules.v4

    这样就妥妥的了。当然,为了让系统每次启动时自动加载,你还需要在启动脚本里加上这一句,或者利用下面更自动化的方法。

方法二:iptables-persistent

这个工具可以帮你省掉手动写启动脚本的麻烦。iptables-persistent在安装时就会询问是否保存当前规则,并且在系统启动时自动恢复。

  1. 安装

    sudo apt-get update
    sudo apt-get install iptables-persistent

    安装过程会问你是否要保存当前的iptables规则,果断选“是”就行。

  2. 手动保存
    假如安装时没选,或者后来规则又改了,可以手动保存:

    sudo netfilter-persistent sa ve
  3. 查看保存状态

    sudo netfilter-persistent status

    这条命令可以让你知道当前哪些规则已经被持久化了。

方法三:servicesystemctl

部分发行版(比如老一点的CentOS或RHEL)会把防火墙规则管理集成到系统服务里。

  1. 保存规则

    sudo service iptables sa ve

    或者用更精细一点的操作:

    sudo systemctl stop iptables
    sudo iptables-sa ve > /etc/iptables/rules.v4
    sudo systemctl start iptables
  2. 恢复规则
    同样,恢复时使用iptables-restore命令。

    sudo iptables-restore < /etc/iptables/rules.v4

注意事项

  • 权限问题:这些命令都需要root权限(也就是sudo),普通用户是没法操作防火墙核心的。
  • 提前备份:在生产环境里捣鼓防火墙规则之前,强烈建议先备份一份。万一改出问题,还能快速回滚。
  • 发行版差异:不同Linux发行版用的包管理器(比如apt vs yum)和服务管理工具(systemctl vs service)可能不完全一样。比如Debian/Ubuntu系列常用aptsystemctl,而旧版CentOS/RHEL则更习惯yumservice iptables。需要根据你的实际情况灵活调整。

以上就是几种主流的iptables配置持久化方案。选一个你感觉最顺手、也最符合你系统环境的就行。规则保存好了,重启就不再是烦恼了。

本文转载于:https://www.yisu.com/ask/42731994.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注