添加自定义NAT规则到Pleskpipe理的防火墙

我正在使用Ubuntu 10.04 LTS和Plesk 12运行vServer。我使用的Plesk防火墙模块对我来说目前为止还不错。 不过,现在我在服务器上build立了一个OpenVPN服务器。 为了能够通过VPN将stream量路由到外部,我需要将NAT规则添加到iptables中:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE 

问题是,Plesk防火墙模块创build了一组自己的iptables rulles,在Plesk本身我不能添加这个特定的规则。 所以我正在寻找任何方式来使我的规则永久化,以便Plesk运行脚本时不会被覆盖。 我正在考虑一些脚本,可以在Plesk更新iptables或类似的东西后自动执行。

我也看过SQL数据库,但防火墙模块的psa表似乎以某种自定义格式存储允许/拒绝规则。 任何帮助深表感谢!

TL; DR

你不能/不应该。

好吧,我会解释更多…

除了Plesk规定的处理方式之外,你所做的任何事情都会打破它并将其从受支持的状态中解脱出来。 我去过那里,做了这些,并有破碎的客户VPScertificate(以及在Plesk的支持论坛上慷慨激昂的哭泣,作为我的耻辱的永久certificate)。 您最好的select是联系Plesk的支持,看看是否有一些支持的方法是文档不好(或没有logging,视情况而定)。 此外,期待它在下次更新中破解。

如果你想做的事情超出了Plesk预定义的规则和规定,你需要系统pipe理员,并开始pipe理没有Plesk的服务器。 如果您的客户/客户抱怨,发现新的或告诉他们不能做某些事情需要的场景。

我也看过SQL数据库,但防火墙模块的psa表似乎以某种自定义格式存储允许/拒绝规则。 任何帮助深表感谢!

这就是为什么Plesk是可怕的。 或者… Plesk可怕的原因之一。 一亿十亿。

一个实际的答案

在过去处理过这样的事情之后,可能需要用最喜欢的语言创build一个脚本,检查iptables规则是否存在所需的规则,如果不存在则插入它。 克朗每隔几分钟,然后坐下来等待混乱。