ProtonVPN
ProtonVPN 是一家使用 OpenVPN 和 WireGuard 协议的 VPN 提供商。
安装
安装以下任一选项
OpenVPN
安装 openvpn 包,然后按照 OpenVPN 设置 进行操作。
WireGuard
安装 wireguard-tools 包。确保同时安装了 systemd-resolvconf。然后按照 WireGuard 设置 进行操作。
官方 ProtonVPN 客户端
安装 proton-vpn-gtk-app - 最新的 GTK 版本。
您还必须使用 NetworkManager 并安装 network-manager-applet,否则 VPN 将无法连接。您仍然可以使用当前的 网络管理器,但不推荐同时运行多个网络管理器。
设置
OpenVPN 设置
从 ProtonVPN 下载页面下载一个或多个 OpenVPN 配置文件。
将 *.ovpn 客户端配置文件复制到 /etc/openvpn/client/ 目录,并备份原始文件。
按照 OpenVPN#The update-systemd-resolved custom script 进行操作,以确保所有网络流量都通过 VPN (注意:步骤中提到的 client.conf 文件对应于 *.ovpn 文件)。如果您使用的是早于 229 的 systemd 版本,请按照 OpenVPN#The update-resolv-conf custom script 进行操作。
*.ovpn 文件中引用 /etc/openvpn/scripts/update-systemd-resolved 的行,因为脚本被放置在 /usr/bin/update-systemd-resolved 中。有关使用说明,请参阅 使用 OpenVPN。
WireGuard 设置
通过登录 ProtonVPN 并转到下载 → WireGuard 配置文件来下载 WireGuard 配置文件。
将 .conf 文件移动到 /etc/wireguard 目录。如有必要,请考虑重命名 .conf 文件,因为 WireGuard 可能无法很好地处理过长的文件名。
如果尚未执行,请启动/启用 systemd-resolved。
用法
使用 OpenVPN
连接到 VPN
# openvpn /etc/openvpn/client/client_config_file.ovpn
在 ProtonVPN 账户页面提供您的 **OpenVPN / IKEv2 用户名**。
按 Ctrl+c 关闭 VPN 连接。
使用 WireGuard
要添加并启动一个接口,请将 CONFIG_FILE 替换为配置文件名,例如 /etc/wireguard/wgnet0.conf
# wg-quick up CONFIG_FILE
要检查连接状态,请运行
# wg
要终止并删除接口
# wg-quick down CONFIG_FILE
技巧与提示
开机时启用 VPN
有关 systemd 服务配置,请参阅 OpenVPN#systemd service configuration。
仅通过 VPN 运行特定应用程序(使用网络命名空间)
vopono 支持为 ProtonVPN 自动生成配置文件,并允许您在临时网络命名空间中运行应用程序,因此只有这些应用程序会通过 VPN。
保存登录信息
要保留 VPN 凭据以供后续连接使用,请创建以下文件,其中包含您自己的登录信息(两行),并将其放置在您将运行上述启动脚本的目录中。
username password
然后将 auth-user-pass login.conf 行添加到任何相关的 *.ovpn 文件中。
系统托盘/指示器
要使系统/托盘指示器正常工作,请确保已安装 libappindicator 和 gnome-shell-extension-appindicator。
防止 IPv6 泄露
ProtonVPN 的服务器默认使用 IPv6 互联网协议(通过其官方 Linux 客户端)。如果观察到 IPv6 泄露,您可以通过阻止 IPv6 流量或禁用 IPv6 来防止它们。请参阅 IPv6#Disable IPv6。
启用端口转发
对于付费 ProtonVPN 用户,可以启用端口转发。
- 对于 proton-vpn-gtk-app,它作为一项设置得到支持。启用后,转发的端口将在您连接到服务器时显示。
- 对于 OpenVPN 和 Wireguard 安装,请参阅 ProtonVPN 的文档以启用端口转发。
故障排除
官方客户端无法连接
尝试连接时,您可能会看到类似“发生未知原因”的错误消息。
安装 NetworkManager(并根据需要进行配置),然后安装 network-manager-applet。无论您使用的是 GUI 还是 CLI 应用程序,ProtonVPN 官方客户端都需要两者同时运行才能连接。
社区 ProtonVPN 脚本
另一个替代方案是 protonvpn-cli-communityAUR