Ubuntu 上设置 iptables 规则开机自启

在 Ubuntu 上设置 iptables 规则开机自启,可以通过以下方法实现:

方法 1:使用 iptables-persistent(推荐)

Ubuntu 服务器上 iptables 规则不会自动保存,因此需要 iptables-persistent 来持久化规则并在开机时自动加载。

  1. 安装 iptables-persistent
    sudo apt update
    sudo apt install iptables-persistent -y
    安装过程中会要求保存当前的 iptables 规则,选择 Yes。
  2. 保存 iptables 规则
    如果你已经配置了 iptables 规则,可以手动保存:
    sudo netfilter-persistent save
    或者:
    sudo iptables-save > /etc/iptables/rules.v4
    sudo ip6tables-save > /etc/iptables/rules.v6 # 如果使用 IPv6
  3. 重新加载 iptables 规则
    sudo netfilter-persistent reload
  4. 确保 iptables-persistent 在开机时运行
    sudo systemctl enable netfilter-persistent
    sudo systemctl start netfilter-persistent

方法 2:使用 rc.local(适用于较旧版本的 Ubuntu)

如果你不想使用 iptables-persistent,可以在 /etc/rc.local 中添加规则。

  1. 编辑 /etc/rc.local
    sudo nano /etc/rc.local
    在 exit 0 之前添加:
    iptables-restore < /etc/iptables/rules.v4
    如果使用 IPv6:
    ip6tables-restore < /etc/iptables/rules.v6
    然后保存并退出(Ctrl + X,然后按 Y)。
  2. 赋予执行权限
    sudo chmod +x /etc/rc.local
  3. 让 rc.local 生效
    如果 /etc/rc.local 不存在,可以手动创建并启用:
    sudo touch /etc/rc.local
    sudo chmod +x /etc/rc.local
    sudo systemctl enable rc-local
    sudo systemctl start rc-local

方法 3:使用 systemd 自定义服务

你可以创建一个 systemd 服务来在启动时恢复 iptables 规则。

  1. 创建 iptables 服务
    sudo nano /etc/systemd/system/iptables.service
    添加以下内容:

    Unit

    Description=Restore iptables rules
    After=network.target

Service

Type=oneshot

ExecStart=/sbin/iptables-restore < /etc/iptables/rules.v4

ExecStart=/sbin/ip6tables-restore < /etc/iptables/rules.v6

RemainAfterExit=yes

Install

WantedBy=multi-user.target

  1. 重新加载 systemd 并启用服务

sudo systemctl daemon-reload

sudo systemctl enable iptables

sudo systemctl start iptables

验证 iptables 规则是否生效

sudo iptables -L -v -n

如果重启后 iptables 规则仍然存在,则说明设置成功。

如果你是用于生产环境,建议使用 方法 1(iptables-persistent),因为它是 Ubuntu 官方推荐的方法,并且管理方便。

相关推荐
Brilliantwxx5 小时前
【Linux】 进程(10) 进程控制深度解析:创建、终止与等待
linux·运维·服务器·c语言·开发语言·网络
ai小陈5 小时前
FramePack图生视频云端部署实战:从单图输入到视频输出的完整流程
服务器·人工智能·安全·ai·音视频·gpu算力
欧米欧6 小时前
Linux基础指令上
linux·运维·服务器
ARM|X86+FPGA工业主板厂家7 小时前
基于嵌入式 GPU 的智能服务机器人
linux·运维·arm开发·fpga开发·机器人
sulikey7 小时前
Linux 粘滞位(Sticky Bit)完全指南:为什么共享目录需要“防删除“?
linux·服务器
mengge.cloud7 小时前
网络技术基础小白教程
linux·服务器·网络·云计算
严谨的麻辣烫7 小时前
2026 年静态 IP 为什么重新受到关注?从住宅代理安全问题看固定网络出口
运维·服务器·tcp/ip·网络安全
学代码的CJY7 小时前
Linux 重定向、管道与环境变量
linux·spring boot·spring
treacle田7 小时前
达梦数据库-Linux DM数据守护主备集群缩改为单机-记录总结
linux·服务器·数据库·主备集群改单机
shengchanxian18 小时前
2026年9月服务器装配流水线厂家技术测评:对标国标的硬件评判逻辑
运维·服务器·服务器装配流水线厂家