在 Amazon EC2 上设置 Open VPN 客户端

Rob*_*Rob 8 openvpn amazon-ec2 amazon-web-services amazon-vpc

有很多页面建议在 Amazon EC2 上设置 Open VPN Server,但我只需要设置一个客户端(因此任何 Internet 访问都通过 VPN 路由,而不是直接来自 AWS IP)。我可以将 .ovpn 文件传输到它并启动它

openvpn --config client.ovpn
Run Code Online (Sandbox Code Playgroud)

但是一旦我这样做,我就会失去我的 ssh 连接,因此无法对它做任何事情。广泛搜索并发现各种声称绕过某些端口或某些 IP 地址的建议。两者都可以,即我很高兴被限制在某些 IP 上,以便在运行时通过 ssh 进行连接。

但是,这些似乎都不适用于亚马逊环境,例如,请参阅Amazon EC2 上的 OpenVPN 客户端。它是一个新实例,因此如果有帮助,请位于 VPC 中。

小智 12

就我而言,执行以下命令成功启动了 openvpn 连接而不会丢失 ssh 功能:

例子

sudo route add -host 96.113.49.112 gw 10.0.0.1
openvpn --config newvpnconfigfile1.ovpn
Run Code Online (Sandbox Code Playgroud)

其中 ip 以下host是我们办公网络的公共 IP(您只需在自己的 PC 上在 Google 中输入“我的 ip 是什么”即可获得此 IP),以下 ipgw是 ec2 实例的网关 IP(见第一行第二列在netstat -anrAWS 服务器上执行它时的输出)。

在执行上述操作前后查看上报的公网ip,已经从报我们正常的IP地址变成了报VPN服务器的IP地址。

可以在此处找到更多背景信息: 在服务器计算机上登录 VPN 后防止 SSH 连接丢失