我有一个 ProtonVPN 帐户,并始终连接到 VPN 服务器以保护互联网隐私。不幸的是,ProtonVPN 目前不提供基于 Linux 的客户端,因此他们建议通过 OpenVPN 连接到他们的服务器。
我安装了这些软件包openvpn
network-manager-openvpn
并network-manager-openvpn-gnome
按照官方指南加载了他们的 .ovpn 配置文件。
连接工作正常,但每当我连接到 Ubuntu 上的 VPN 时,我必须从预配置的 .ovpn 文件中手动选择特定服务器。相反,例如,在他们的 Android 客户端上,我只需点击一个按钮并连接到一个随机服务器,甚至无需考虑它。
有没有办法让网络管理员选择一个随机的 .ovpn 配置,而不是我必须手动选择一个?(我不害怕命令行,但最好不要在我的系统中添加另一个 PPA。)
一个简单的命令行脚本可以像这样工作:
假如说:
us176.ovpn
,即两个字母的国家代码和一个运行编号。us1
到运行us200
。您必须调整范围,并添加存储配置文件的目录。根据我不知道 ProtonVPN 的确切文件名格式,您可能需要进行其他修改,但您明白了。请注意,您需要将脚本作为 sudo 执行,OpenVPN 才能像那样工作。
编辑:如果您的 VPN 在连接时请求用户名和密码,您可以像这样修改脚本的最后一行:
其中 userpass.txt 在两个单独的行中包含用户名和密码,如果您喜欢这样存储它。
我从未这样做过,但据我了解 openvpn 手册,您可以在
.ovpn
配置文件中编写多个连接配置文件/远程 vpn-server-ip。与–remote-random
软件结合时openvpn
会为您选择一个,否则它将选择列表中指定的第一个服务器。我不知道这是否可以与 NetworkManager 一起使用,但是当您从 termial 运行命令时它应该可以工作sudo openvpn my.config.file.ovpn
。从手册中引用:
[...]
[...]
有一个内置的配置。
只需像这样添加所有服务器:
远程 XX.XXvpn.xxx 端口 远程 XX2.XXvpn.xxx 端口 ...
然后添加这一行远程随机
就这样。