在 Linux 中管理 iptables 规则

16 linux fedora iptables

我的 iptables 设置有很多规则(路由、ssh 禁止等),我还从http://blacklist.linuxadmin.org获取了要禁止的 IP 列表,现在它变得非常复杂。

/etc/sysconfig/iptables的真的很长。有没有办法通过包含来自外部文件的规则来管理规则?

例如:

#include "pre_routing_rules"
#include "ssh_bans"
Run Code Online (Sandbox Code Playgroud)

这将包括在文件“pre_routing_rules”和“ssh_bans”中添加的规则这样我可以轻松管理我的规则而无需在cat /etc/sysconfig/iptables.

小智 11

试试iptables 的 ipsets。ipsets 是单独配置的,如果您有足够的 ip 地址来管理,这些也会更快。

iptables 规则可以像这样引用 ipset:

iptables -A FORWARD -m set --set blocklist src,dst -j DROP


小智 0

我不确定你正在运行哪个发行版,因为我的发行版不拥有你引用的文件 - 但通常包含 iptables 规则的文件只是 shell 脚本 - 所以你应该能够通过一行来做你想做的事情例如 :

。/etc/sysconfig/pre_routing_rules

或类似您引用的 iptables 文件顶部的内容。