iptables规则持久化
在 Linux 系统中,iptables
是一款功能强大的防火墙工具,用于管理网络流量。然而,默认情况下,iptables
的规则在系统重启后会丢失。如果我们需要这些规则在每次重启后自动生效,就必须实现规则的持久化。
本文将带你深入了解如何保存并持久化 iptables
规则,确保你的网络安全策略一劳永逸。
什么是 iptables 规则持久化?
简单来说,iptables
规则持久化就是将当前设置的 iptables
防火墙规则保存到文件中,并在系统启动时自动加载这些规则。这对于服务器的安全性和稳定性至关重要,特别是在规则复杂的情况下,手动重新设置规则会非常繁琐。
步骤详解:实现 iptables 规则持久化
1. 创建 iptables 规则
假设我们希望实现以下规则:
iptables -A INPUT -p tcp --dport 80 -j DROP
运行上述命令后,可以通过以下命令查看当前规则:
iptables -L -n -v
确认规则是否已经正确生效。
2. 保存 iptables 规则
方法 1:使用 iptables-save 和 iptables-restore
保存当前规则:
iptables-save > /etc/iptables/rules.v4
如果你还需要保存 IPv6 的规则:
ip6tables-save > /etc/iptables/rules.v6
重启时恢复规则: 编辑系统的启动脚本,添加恢复命令。例如,在
/etc/rc.local
中加入:iptables-restore < /etc/iptables/rules.v4 ip6tables-restore < /etc/iptables/rules.v6
保存并赋予脚本执行权限:
chmod +x /etc/rc.local
方法 2:使用 iptables-persistent (推荐)
安装
iptables-persistent
工具:apt-get install iptables-persistent
安装过程中,系统会提示你保存当前的 IPv4 和 IPv6 规则,选择 Yes 即可。
手动保存规则: 如果后续更改了 iptables 规则,可以随时保存:
netfilter-persistent save
自动加载规则: 安装完成后,iptables-persistent 服务会在每次系统启动时自动加载规则,无需手动操作。
3. 检查持久化是否生效
完成上述配置后,重启系统并验证规则是否持久化成功
License:
CC BY 4.0