今天下午,我发现自己陷入了为客户更换旧防火墙的困境。我正在配置他们新的 IPCop 防火墙 (1.4.21),安装了 Zerina OpenVPN 插件。
我需要做的:有三个网络接口,目前设置为红色(WAN)、绿色(LAN,192.168.20.0/24)和橙色(远程网络10.1.20.0/24)。橙色接口是到另一个组织的直接光纤链路。
简单描述:此时流量和网络似乎已正确配置,但我在 LAN 上有许多(150 多个)特定 IP,当访问 10.1.20.x 网络上的资源时,需要对其进行修改以显示为来自 10.1.20.0/24 网络(并正确传递返回流量)。远端的路由配置较早,应该没问题,但我需要重定向任何发往这些 IP 的数据包,以最终到达正确的目的地。
寻址是固定且可预测的(即 192.168.20.125 -> 10.1.20.125)。我需要通过 /etc/rc.local 将我拥有的任何规则插入到 IPCop 规则集中,我知道,我只是不确定我应该如何构建它。有 CUSTOMOUTPUT 和 CUSTOMINPUT 目标,它们目前都只包含将数据包重定向到 OVPNOUTPUT/OVPNINPUT 目标的单个规则,所以我猜我应该插入一个匹配发往 10.1.20.x 网络的出站数据包的规则并重定向到新目标(可能称为 TO-ORANGE)和 CUSTOMINPUT 顶部的规则,该规则重定向到 FROM-ORANGE 目标。在这些目标下,我将拥有进行 IP 匹配和修改的规则。
我接近这个权利吗?如果是这样,我对 mangle 不是很熟悉,并且希望看到如何编写源 IP 重写的示例。如果没有,你会如何建议这样做?
蒂亚!
编辑:我还注意到 nat 表有 CUSTOMPREROUTING 和 CUSTOMPOSTROUTING 目标,我想我也可以在那里发布规则......
http://netfilter.org/documentation/HOWTO/NAT-HOWTO-6.html
这似乎告诉我,您需要做的就是向 CUSTOMPOSTROUTING 链添加一个额外的伪装规则。
iptables -t nat -A CUSTOMPOSTROUTING -o <dev-of-10-network> -j MASQUERADE