服务器重启时 iptables 会重置

服务器重启时 iptables 会重置

每次我的服务器重启时,我似乎都必须将 iptables 重置为默认值,我以前使用 firestarter,但不久前删除了它。是否有任何设置会导致 iptables 在服务器重启时发生变化?

答案1

在 Ubuntu 16.04 上:
sudo apt-get install iptables-persistent

此后,每次想要永久保存 iptables 更改时,运行以下命令:
sudo netfilter-persistent save
sudo netfilter-persistent reload

答案2

这是默认行为。

您可能需要查看一下iptables-persistent从配置文件在启动时自动设置 iptables 规则的软件包。

答案3

iptables-persistent 默认情况下不会在重启时自动保存系统的 iptables。

不过,我修改了 Ubuntu 14.04 中软件包的源代码,使其在重启、关机(暂停)或运行级别 1 时自动保存规则。当系统启动到运行级别 2-5 时,规则将恢复。这样,规则的保存和加载将自动进行,无需用户干预。

要使用此版本,请使用以下命令:

sudo apt-get remove iptables-persistent
sudo dpkg -r iptables-persistent
wget http://dinofly.com/files/linux/iptables-persistent_0.5.8_all.deb
sudo dpkg --install iptables-persistent_0.5.8_all.deb

请在此处查看我的完整博客文章:

http://blog.eamster.tk/?p=389

使用风险自负。所有修改都是初始化脚本停止函数调用保存规则函数,这样当系统关闭、重启或处于 level1 时,规则会自动保存。

我已经在 Ubuntu 12.04、Ubuntu 14.04 和 Ubuntu 15.04 上测试了这个更新的 deb 包。它应该也可以在任何版本的 debian 上运行。

答案4

sudo apt install iptables-persistent

然后将坏 IP 添加到你的 iptables。

对规则满意后,保存它们:

sudo sh -c 'iptables-save > /etc/iptables/rules.v4'

(或 IPv6:sudo sh -c 'iptables-save > /etc/iptables/rules.v6'

完成。重启/测试。重启前保存的内容应该会再次加载。


写这个是因为互联网上(以及这里)的所有答案都是错误的(除非你是 root - 如果你是 root 为什么要使用 sudo?)

您无法在没有(“bash -c”或“sh -c”)的情况下将 SUDO 重定向(或管道)到根区域。

相关内容