“虚拟线路”防火墙的 iptables 规则

“虚拟线路”防火墙的 iptables 规则

我的系统位于一个具有所有公共 IP 地址的网络上。我需要在不使用 MASQUERADE 的情况下对我的特定子网进行防火墙保护。我见过这种配置被称为“虚拟线路”防火墙。

我当前的配置:内部子网 | 路由器 | 机构其他部分 | 互联网

所需配置:内部子网 | 防火墙 | 路由器 | 机构其他部分 | 互联网

防火墙有两个物理接口。我无法构建一组不需要 MASQUERADING 的 iptables 规则。我知道并可以使用的 IP 地址:xxx.123.68.0/24

路由器:xxx.123.68.1

防火墙 eth0(外部):xxx.123.68.2

防火墙 eth1(内部):xxx.123.68.3

其余地址用于内部系统

我已经构建了 INPUT 和 OUTPUT 规则以允许连接到防火墙以实现管理功能,但 FORWARDing 链规则并未成功。

FORWARD 的默认策略是 ACCEPT

启用日志记录以查看是否有流量流动,但日志文件中没有任何条目。我认为这些规则应该允许出站流量和返回流量

iptables -A FORWARD -p tcp -i eth1 -o eth0 -j ACCEPT

iptables -A FORWARD -p tcp -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT

我错过了什么?

答案1

你所说的“虚拟线路”防火墙通常充当乙太網路橋在Linux下,你需要使用ebtables,至少在桥接器上进行过滤时在某种程度上是这样的。您可以将规则添加到桥接器过滤器中,以便 iptables 评估您的规则。

或者如果你想使用较新的内核,nftables相反,nftables 将所有过滤功能组合成一个命令,但如果你已经熟悉 iptables,这可能需要一点学习时间。

另一个不需要桥接设置的选项是配置盒子代理arp。使用 proxy-arp,您可以制作一个作为路由器的盒子,从网络其余部分的角度来看,它有点像一座桥梁。使用 proxy-arp,您的 iptables 将正常工作。

相关内容