如何通过cURL连接到OpenVPN服务器?

Googlebot

是否可以在cURL命令中使用OpenVPN服务器作为代理?

我不想将我的整个计算机连接到OpenVPN。相反,我想在单个cURL命令中使用它。

就像是

curl -x http://user:password@OpenVPN:port url

但它不起作用并返回

curl: (56) Recv failure: Connection reset by peer

我的操作系统是Ubuntu 18.04

用户名

不,不是。

首先,该命令不起作用,因为您要告诉cURL说与服务器说的协议完全不同的协议。与OpenVPNhttp://完全不同-服务器无法识别cURL发送的任何请求,并且cURL无法理解任何响应。

其次,它不能工作,因为cURL不支持任何VPN协议。目前没有办法正确地指定卷曲应该讲OpenVPN的协议,或任何其他VPN协议,因为在程序并非如此。

(从理论上讲,将其添加到cURL中并不是没有可能,但是与“代理”协议相比,它将大大增加复杂性,因为cURL除了学习VPN本身之外还需要学习TCP和IP –即,它需要重复很多驻留在OS中的网络堆栈的数量)。


如果您具有对系统的超级用户访问权限,则可以使用各种机制来限制OpenVPN连接用于以下用途:

  • 常规IP路由表,用于根据目标IP地址选择VPN使用情况;
  • 策略路由,根据源IP地址选择连接(例如,建立连接以便curl --interface tun0使用VPN,但curl使用常规);
  • 防火墙规则,以根据所使用的协议和端口,甚至根据用户ID来选择连接;
  • 网络名称空间,以创建两个不同的“世界”,其中某些进程看到VPN,而所有其他进程仅看到原始连接。

例如,如果您想将VPN的使用限制为10.0.0.0/8(或者反之亦然,以将该网络从VPN中排除),那么仅使用OpenVPN的route选项就很简单了例如,要将VPN仅限于特定网络,请执行以下操作:

route 10.0.0.0 255.0.0.0 vpn_gateway
route-nopull

并在使用VPN进行其他所有操作时排除特定网络:

route 10.0.0.0 255.0.0.0 net_gateway

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

通过OpenVPN连接到服务器LAN

通过OpenVPN使用NordVPN服务器连接到VPN服务器后,如何允许SSH进入终端?

为什么我不能通过隧道连接到OpenVPN服务器的LAN接口?

已连接到 OpenVPN 服务器但无法通过 SSH

如何通过Docker连接到本地MySQL服务器?

如何通过 swi prolog 连接到 MongoDB 服务器?

如何通过Swift连接到本地Firebase服务器?

如何通过 Firebase 功能连接到本地服务器

如何通过FTP连接到FTP服务器

如何通过代理服务器连接到VPN

如何通过R连接到远程服务器?

如何从OSX通过SSH连接到Ubuntu服务器?

通过代理连接到服务器

同时连接到两个OpenVPN服务器

对OpenVPN无法连接到服务器进行故障排除

Openvpn 配置未连接到服务器

将无头服务器连接到OpenVPN

如何使用UnboundID SDK通过SSL服务器证书连接到LDAP服务器?

我无法通过curl使用Caddy连接到https站点服务器

如何通过SSH连接通过远程服务器连接到Internet

将运行OpenVPN服务器的我的家庭服务器连接到外部VPN

如何仅通过 OPENVPN 设置到我的服务器的 SSH 连接

如何通过OpenVPN连接访问服务器本地主机端口?

使用OpenVPN Connect客户端将MacOS连接到OpenVPN服务器

如何使用相同的TLS会话通过数据连接连接到FTPS服务器?

通过 pdo 连接到服务器不起作用,如何向连接添加端口?

通过android模拟器连接到服务器

如何在连接到我的家庭OpenVPN服务器时访问连接到Apple AirPort Extreme路由器的HDD

如何仅通过 OpenVPN 服务器访问某些 IP