![希望仅允许通过 openvpn 访问一个互联网网站](https://linux22.com/image/750764/%E5%B8%8C%E6%9C%9B%E4%BB%85%E5%85%81%E8%AE%B8%E9%80%9A%E8%BF%87%20openvpn%20%E8%AE%BF%E9%97%AE%E4%B8%80%E4%B8%AA%E4%BA%92%E8%81%94%E7%BD%91%E7%BD%91%E7%AB%99.png)
我们在工作中使用 openvpn。它允许在网络内外进行毫无问题地连接。我们选择不推行默认网关,因此员工可以使用自己的网关来连接互联网。但是他们使用的一个站点是 irn,并且该帐户只允许通过工作静态 ip 地址进行访问。对于 tor 那个站点,并且只有那个站点,我们希望允许通过 vpn 访问互联网。我们正在使用带有 iptables 和 openvpn 的 ubunto。那么我该怎么做呢?谢谢。
答案1
您只能为该主机推送静态路由。
在你的my-vpn-server.conf
:
push "route A.B.C.D 255.255.255.255 W.X.Y.Z"
其中A.B.C.D
是您要通过 OpenVPN 访问的 Web 服务器的 IP 地址,W.X.Y.Z
是您的网关的 IP 地址,它将转发(或 NAT)VPN 流量。
通过此设置,您将在客户端看到类似这样的内容:
root@client:~# ip r l
(...)
A.B.C.D via W.X.Y.Z dev tap0 proto static metric 50
如果您要访问的 Web 服务具有基于 DNS 的负载平衡,则需要推送其所有 IP 地址的路由。
我假设您的问题是关于通过 OpenVPN 路由单个主机,而不是关于在 Linux 上设置 NAT,所以我不会在这里介绍后者。