我在生产环境中有一台 ASA-5505 (v8.4),用于处理 VPN 连接和一些公共 Web 服务器。我想将用户 HTTP 流量卸载到第二个 Internet 连接上,因此我组装了一个 pfSense (2.0.2) 设备,并将 ASA 上的默认路由设置为 pfSense,该路由可用于路由出站流量,但我敢肯定您已经猜到了,它破坏了公共 IP 上的传入流量。
这个设置有点超出我的理解范围,所以我正在寻找一些正确的配置方向,以便为两个 WAN 执行 PBR,但保留 ASA 来处理 VPN 和公共 IP 服务器。
这是我的配置的过于简化的图表,我希望它有意义:
ISP1 --- ISP1_IP1:WAN --\
pfSense --- LAN/172.16.0.1 --------|
ISP2 --- ISP2_IP1:OPT1 -/ |
| outside2/172.16.0.2
| |
|------ ISP2_IP2:static nat(inside,outside):10.0.0.10 -- ASA-5505 -- inside/10.0.0.0
| |
|------ ISP2_IP3:static nat(inside,outside):10.0.0.20 -----|
| |
|------ ISP2_IP4:VPN (outside IP) -------------------------|
在 ASA 上我设置如下:
route outside2 0 0 172.16.0.1
nat (inside,outside2) source dynamic subnet_inside interface
答案1
嗯,在您当前的设置中,如果您希望入站访问正常工作,似乎您必须对入站流量进行双重 NAT,并且您的 VPN 流量可能根本不再起作用。您必须让 pfsense 监听公共 IP,并从公共 IP 开始,您必须在 pfsense 上 NAT 到 pfsense 和 ASA 之间的 172.16.0.0 子网,并将 ASA 上的 172.16.0.0 子网 NAT 到真正的内部子网 10.0.0.0... 相当复杂,因为您必须在 2 个独立的防火墙上维护 2 个独立的 NAT 转换和 ACL,但也相当安全。它看起来像这样:
|.out........pfsense..........in.|.out........ASA.............in.|
public IP > NAT to 172.16.0.0 IP > 172.16.0.0 IP > NAT to 10.0.0.0
几年前,我使用 pfsense 和 PIX 实现了类似功能,但没有双重 NAT,在实现 pfsense 之前,PIX 已经处理了所有事情。本质上,我所做的就是将 PIX(VPN、公共 IP 等)和 pfsense 放在 PIX 当前连接的同一外部子网(公共子网)上。然后,我将客户端设置为使用 pfsense 的内部 IP 作为网关,而不是 PIX 的内部 IP。所有出站 Web 流量都通过 pfsense 路由。
然后,我将入站流量的外部 IP 和 NAT 迁移到 pfsense 而不是 PIX 进行处理,同时将 NAT 内部服务器的网关切换到 pfsense 的内部 IP。我从来没有让 VPN 与 pfsense 一起工作过……但这听起来应该可以实现你的目标。唯一的缺点(或者可能是优点)是内部客户端和服务器无法通过 PIX 上的 VPN 访问。此外,如果您有多个内部子网需要在内部进行路由,这会变得更加复杂。
如果您只是想连接到多个 ISP 来传输出站网络流量,您可能需要考虑使用双 WAN 路由器,而不是像 pfSense 这样的功能齐全的防火墙。