OpenVPN 不路由互联网流量,只路由本地流量

OpenVPN 不路由互联网流量,只路由本地流量

我有一个带有 SQL 服务器、Web 服务和 OpenVPN 的 VM(https://datawookie.netlify.app/blog/2018/09/diy-vpn-with-docker)。

我只想使用 VPN 连接到 SQL 服务器和 Web 服务。我不想路由互联网流量。我在客户端配置中添加了以下内容:

pull-filter ignore redirect-gateway
route-nopull
route-noexec

但这样就不会有任何结果。我需要做什么才能实现我的目标?

答案1

假设 web 是 192.168.2.10,sql 是 192.168.3.10,推送这些子网

在此步骤中:

docker run -v $OVPN_DATA:/etc/openvpn --log-driver=none --rm kylemanna/openvpn ovpn_genconfig -u udp://VPN.SERVERNAME.COM

你会添加

-p "route 192.168.2.10 255.255.255.255" -p "route 192.168.3.10 255.255.255.255"

完整命令:

docker run -v $OVPN_DATA:/etc/openvpn --log-driver=none --rm kylemanna/openvpn ovpn_genconfig -u udp://VPN.SERVERNAME.COM -p "route 192.168.2.10 255.255.255.255" -p "route 192.168.3.10 255.255.255.255"

你可以为这些值添加任何网络、IP 和掩码,所以如果你想要整个子网 192.168.2.0/24,那么-p "route 192.168.2.0 255.255.255.0"

你也可以使用环境变量,参见https://github.com/kylemanna/docker-openvpn/issues/565

相关内容