软呢帽 11
我们以前的 IT 人员在我们的防火墙上设置 iptable 规则的方式让我感到困惑,他没有记录任何内容。我希望有人可以帮助我理解它。
iptables 服务显然是在启动时启动的,但该/etc/sysconfig/iptables
文件未被触及(默认值)。
我发现/etc/rc.local
他正在这样做:
# We have multiple ISP connections on our network.
# The following is about 50+ rules to route incoming and outgoing
# information. For example, certain internal hosts are specified here
# to use ISP A connection while everyone else on the network uses
# ISP B connection when access the internet.
ip rule add from 99.99.99.99 table Whatever_0
ip rule add from 99.99.99.98 table Whatever_0
ip rule add from 99.99.99.97 table Whatever_0
ip rule add from 99.99.99.96 table Whatever_0
ip rule add from 99.99.99.95 table Whatever_0
ip rule add from 192.168.1.103 table ISB_A
ip rule add from 192.168.1.105 table ISB_A
ip route add 192.168.0.0/24 dev eth0 table ISB_B
# etc...
然后在文件末尾附近,在他刚刚声明的所有 ip 规则之后,他有这个:
/root/fw/firewall-rules.fw
他正在执行由fwbuilder
.
一些问题
为什么他要声明所有这些 ip 规则,而不是像所有其他规则一样
rc.local
声明它们?fwbuilder
这有什么好处或必要性吗?或者这只是实施防火墙规则的一种组织不良的方式?为什么他在执行
fwbuilder
脚本之前声明 ip 规则?我会假设fwbuilder
脚本所做的第一件事就是在声明所有新规则之前摆脱任何现有规则。我错了吗?如果是这样的话,fwbuilder 脚本基本上只会删除所有在 rc.local 中定义的 ip 规则。这有道理吗?为什么他在启动时在 rc.local 中执行所有这些东西,而不是仅仅使用
iptables-save
将防火墙设置保持/etc/sysconfig/iptables
在运行时实现?
您显示的 IP 规则与 iptables 没有直接关系。该
ip
命令控制高级路由。你的系统已经设置了一些东西来做拆分路由。该iptables
命令控制防火墙 (netfilter) 规则。iptables-save/iptables-restore 并没有直接对路由和规则做任何事情。
请参阅Linux Advanced Routing & Traffic Control HOWTO以了解有关您可以使用 iproute2 执行的操作的详细信息。