首先,我对路由、iptables 等知之甚少。也就是说,这就是我想要完成的事情以及我认为我被难住的地方:
问题:我们有一个外部网站,我们最近设置了防火墙,因此它只接受来自我们办公室 IP 地址的流量。这在办公室很有效,但不适用于通过 VPN 进行远程访问,因为我们不会通过 OpenVPN 路由所有流量。我宁愿避免强迫每个人都通过路由所有流量来容纳这个站点。
环境:主路由器盒正在运行 pfSense。Em0 是内部 IP,Em1 是外部 IP。内网为 10.23.x,VPN 为 10.0.8.0/24
我相信我需要做的是向 VPN 服务器配置添加一条路由,以通过 VPN 隧道将所有流量发送到该 IP。我认为那部分工作正常,但我没有得到回复,所以我假设我需要在 VPN 服务器上进行一些 NAT 配置才能通过隧道将响应路由回?
到目前为止我发现的是尝试以下,但由于这是 FreeBSD 上的 pfSense 框,我无法运行 iptables 等。
确保启用 ip 转发:echo 1 > /proc/sys/net/ipv4/ip_forward
设置 NAT 退出:iptables -t nat -A POSTROUTING -s 10.0.8.0/24 -o em0 -j MASQUERADE
我是否走在正确的道路上,如果是这样,我如何通过 pfSense UI 或 FreeBSD CLI 完成此任务?谢谢!
知道了!我和一位同事偶然发现了成功(目前)。
XXX.XXX.XXX.XXX = 我们希望通过 VPN 路由的特定站点的 IP
解决方案:
第 3 步是可选的。
很高兴你解决了!另一种方法是让外部服务器成为 VPN 的一部分。然后只需将域设置为服务器的新 VPN IP 而不是公共 IP。这样,对外部服务器的所有管理访问也都通过 VPN 传输。加上没有特殊的路由或 NAT 规则。