Gus*_*gas 5 linux vpn openvpn node.js
我在当前的项目中迷失了方向.从linux机器(Ubuntu服务器),在nodejs中运行代码,我必须通过VPN连接到Windows服务器,并访问在其上运行的mySQL服务器.
关于VPN服务器我只知道它是Windows,我可以通过在另一台Windows机器上使用VPN连接器轻松连接到它,我无法访问该机器或了解其参数.
我所拥有的只是该VPN内部的VPN和数据库服务器的IP,以及VPN和数据库的用户名/密码.我也知道VPN使用ms-chap v2.
我正在尝试使用openvpn:
sudo openvpn --remote vpnIP --dev tun --ifconfig 127.0.0.1 dbIP
Run Code Online (Sandbox Code Playgroud)
这不显示任何错误消息,但从不请求VPN的用户名/密码
创建VPN后,我应该怎么做nodejs来访问数据库?
正如我所说,我很失落!任何小费都将受到欢迎!
除非另有说明,否则基于 Windows 的 VPN 几乎总是使用PPTP。您无法连接 OpenVPN。您必须使用 PPTP 客户端。
Ubuntu 软件包是pptp-linux。这里有关于如何配置的详细说明。
简而言之(我假设您的服务器上没有 GUI),您可以使用以下命令创建隧道:
pptpsetup --create my_tunnel --server <server_address> --username <username> --password '<password>' --encrypt
Run Code Online (Sandbox Code Playgroud)
配置文件将在/etc/ppp. 然后您可以连接(在调试模式下):
pon my_tunnel debug dump logfd 2 nodetach
Run Code Online (Sandbox Code Playgroud)
或者简单地(一旦它起作用):
pon my_tunnel
Run Code Online (Sandbox Code Playgroud)
并停止它:
poff my_tunnel
Run Code Online (Sandbox Code Playgroud)
如果服务器是网关,您可能需要添加一条路由,例如:
ip route add 192.168.1.0/24 dev ppp0
Run Code Online (Sandbox Code Playgroud)