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
但是這種方式沒有任何路由。我需要做什麼來實現我的目標?
假設 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