我有几台Linux机器作为我的networking的路由器/防火墙,我有一个运行所有iptables命令来设置我的规则的脚本。 在我看来,这似乎是一个非常愚蠢的做法。
你怎么做到这一点? 有configuration文件的程序有点容易pipe理吗? 它有一个GUI或Web界面?
我使用firehol结合我开发的Web界面来pipe理configuration文件。
我真的很喜欢firehol,它提供了一个简单的语法,然后直接使用iptables。
我已经使用了防火墙生成器 ,我非常喜欢它 – 这是一个GUI程序,专门用于pipe理防火墙configuration,主要是远程主机,可能是服务器,路由器等等。 界面看起来有点吓人,但以我的经验来看,花费数小时左右的时间才能算出来。 (显然,他们刚刚发布了第三版,因为我上次检查,所以很可能GUI变得更加直观)
对于RedHat和相关的操作系统(也可能是其他的操作系统),你可以使用脚本来创build防火墙,然后service iptables ...来处理它。 这就是我所做的。 当我更改我的iptablesconfiguration时,我使用了一个脚本。 然后我把它保存
service iptables save
在这一点上,机器现在总是会提出新的规则。 您可以转储您当前规则的简要版本
service iptables status
我们使用了shorewall – “iptables变得容易”。 GUI可通过Webmin 1.060及更高版本获得
Shoreline防火墙通常被称为“Shorewall”,是configurationNetfilter的高级工具。 使用一组configuration文件中的条目来描述防火墙/网关的要求。 Shorewall读取这些configuration文件,并在iptables,iptables-restore,ip和tc实用程序的帮助下,ShorewallconfigurationNetfilter和Linuxnetworking子系统以符合您的要求。 Shorewall可用于专用防火墙系统,多function网关/路由器/服务器或独立的GNU / Linux系统。
我看不出你的方法有什么问题,假设每台机器都有不同的规则。
我通常设置防火墙规则的方法是通过在命令行上input它们,然后运行iptables-save > /etc/iptables_rules ,然后将以下内容插入到/etc/network/if-pre-up.d/iptables所以当networking接口启动时,规则会自动导入。
#!/bin/bash /sbin/iptables-restore < /etc/iptables_rules
除了将规则分成几个子文件 (private,dmz,vpn)和设置variables文件以使规则更具可读性之外,我完全按照您所描述的内容进行操作。
您可以使用pfSense代替您的路由器,它具有许多function :
RRD图
pfSense中的RRD图维护以下的历史信息。
dynamicDNS
通过:
最重要的是,你可以用商品硬件自己构build它,它是开源的 。