iptables 永久保存
时间: 2024-08-13 17:02:18 浏览: 57
`iptables` 是 Linux 系统中用于配置网络包过滤规则的命令行工具,它允许管理员控制哪些网络流量进出系统的各个端口。默认情况下,每次系统重启后,`iptables` 规则会丢失。如果想要让 `iptables` 的设置永久保存并在系统重启后依然生效,可以采取以下几种方法:
1. **使用 `iptables-save` 和 `iptables-restore`**:
- 使用 `iptables-save > /etc/iptables/rules.v4` 将当前的规则集保存到 `/etc/iptables/rules.v4` 或其他自定义位置。
- 在系统启动时运行脚本自动恢复规则,例如在 `/etc/rc.local` 文件中添加:
```
iptables-restore < /etc/iptables/rules.v4
```
2. **将iptables规则集成到systemd服务**:
- 创建一个 systemd 配置文件 (比如 `iptables.service`),定义重启后执行的规则加载命令。
- 修改 `/etc/systemd/system/iptables.service`,确保包含以下内容:
```bash
[Unit]
Description=iptables firewall manager
After=network.target
[Service]
ExecStart=/sbin/iptables-restore < /etc/iptables/rules.v4
Restart=always
User=root
Type=oneshot
[Install]
WantedBy=multi-user.target
```
- 启动服务并设置开机自启:`sudo systemctl enable iptables.service`
3. **使用firewalld代替iptables**:
如果你的系统版本较新,firewalld 可能是更好的选择。firewalld 自带持久化功能,通过编辑其配置文件即可。
记住定期检查和更新规则,因为安全策略可能会随着时间和需求的变化而改变。
阅读全文