Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
vopono — 通过临时网络命名空间在VPN隧道中运行应用程序 | Kitploit
工具/GitHubGitHub/jamesmcm/vopono
网络安全隐私保护实用工具与框架
GitHubjamesmcm/vopono

vopono

通过临时网络命名空间在VPN隧道中运行应用程序

查看仓库
1.2k7317天前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

vopono logo

vopono 是一个通过临时网络命名空间运行应用程序的 VPN 隧道工具。这允许你同时让少量应用程序通过不同的 VPN 连接运行,同时保持主连接正常。

vopono 包含 Wireguard 和 OpenVPN 的内置 killswitch。

目前直接支持 Mullvad、AzireVPN、MozillaVPN、ProtonVPN、iVPN、NordVPN、AirVPN 和 PrivateInternetAccess,也可以通过 --custom 参数使用自定义配置文件。还支持 Cloudflare Warp。

对于自定义连接,也支持 OpenConnect 和 OpenFortiVPN 协议(例如用于企业 VPN)。更多详情请参阅 vopono 用户指南。

截图

以下截图展示了 firefox、google-chrome-stable 和 lynx 分别通过不同的 VPN 连接运行的例子:

Screenshot

支持的提供商

提供商OpenVPN 支持Wireguard 支持
Mullvad❌✅
AzireVPN❌✅
iVPN✅✅
PrivateInternetAccess✅✅*
ProtonVPN✅**✅***
MozillaVPN❌✅
NordVPN✅❌
AirVPN✅❌
Cloudflare Warp****❌❌
自托管 (--custom)✅✅

* 支持端口转发,可使用 --port-forwarding 选项,以及 --port-forwarding-callback 在端口刷新时运行命令。

** 请参阅 用户指南 了解通过 vopono sync 生成 OpenVPN 配置文件时的身份验证说明。你必须复制格式为 AUTH-xxx=yyy 的身份验证头,其中 yyy 是登录后在 Web 浏览器中同一请求的 x-pm-uid 头的值。

*** 对于 ProtonVPN,你可以生成并下载特定的 Wireguard 配置文件,并将其用作自定义提供商配置。详情请参阅 用户指南。端口转发 支持通过 --port-forwarding 参数用于 OpenVPN 和 Wireguard。注意,对于使用自定义 Wireguard 配置,应使用 --custom-port-forwarding 指定端口转发实现(例如 --provider custom --custom xxx.conf --protocol wireguard --custom-port-forwarding protonvpn)。必须安装 natpmpc。注意,对于 OpenVPN,你必须在 OpenVPN 用户名后附加 +pmp 来生成 OpenVPN 配置文件,并且必须选择支持此功能的服务器(例如在撰写本文时,罗马尼亚服务器支持)。分配的端口会打印到启动 vopono 的终端中——然后应在需要它的应用程序中设置该端口。该端口也可以通过 --port-forwarding-callback 参数传递给在命名空间内执行的脚本。

**** Cloudflare Warp 使用自己的协议。将提供商和协议都设置为 warp。注意,你必须先在 vopono 之外使用 sudo warp-cli registration new 注册,然后运行一次 sudo warp-svc 和 sudo warp-cli connect 以及 sudo warp-cli debug connectivity-check disable——然后杀死 sudo warp-svc,不要运行 sudo warp-cli disconnect,这样它会在运行时自动连接。请在使用 vopono 之前验证此功能正常工作。

使用方法

设置 VPN 提供商配置文件:

root@kitploit:~
$ vopono sync

注意,在创建和上传新的 Wireguard 密钥对后,可能需要稍作延迟(例如在 Mullvad 上大约 30-60 秒)才能使用。

通过 AzireVPN Wireguard 连接到挪威服务器运行 Firefox:

root@kitploit:~
$ vopono exec --provider azirevpn --server norway firefox

你应以自己的用户身份运行 vopono(不要使用 sudo),因为它会在必要时处理权限提升。更多关于以 systemd 服务等方式运行的详细信息,请参阅 用户指南。

守护进程模式

为了获得更流畅的体验,以 root 身份运行特权守护进程,然后以普通用户身份继续使用 vopono。如果守护进程正在运行,CLI 会自动将 exec 请求转发给它。

  • 使用 systemd 在启动时启动一次:sudo systemctl enable --now vopono
  • 或手动以 root 身份运行:sudo vopono daemon
  • 然后以普通用户身份正常使用 vopono:vopono exec --provider mullvad --server se firefox

参见 USERGUIDE.md 获取可直接复制的 systemd 单元。

vopono 最多可以处理 255 个独立的网络命名空间(即不同的 VPN 服务器连接——如果你的 VPN 提供商允许的话)。使用相同服务器前缀和 VPN 提供商启动的命令将共享同一个网络命名空间。

默认配置选项可以保存在 ~/.config/vopono/config.toml 文件中,例如:

root@kitploit:~
firewall = "NfTables"
provider = "Mullvad"
protocol = "Wireguard"
server = "usa-us22"

注意这些值区分大小写。

更多详细使用说明(包括处理守护进程和服务器),请参阅 vopono 用户指南。

安装

AUR(Arch Linux)

使用你喜欢的 AUR 助手安装 vopono-git 包。

root@kitploit:~
$ paru -S vopono-git
$ vopono sync

或者,如果你不想从源代码编译,可以使用 vopono-bin 包。

Raspberry Pi(Raspbian)

从发布页面下载并安装 vopono_x.y.z_armhf.deb 包:

root@kitploit:~
$ sudo dpkg -i vopono_0.2.1_armhf.deb

你需要安装 OpenVPN(在 Raspbian 软件源中可用):

root@kitploit:~
$ sudo apt install openvpn

然后你可以像上面一样使用 vopono(注意 Chromium 可执行文件是 chromium-browser):

root@kitploit:~
$ vopono sync --protocol openvpn protonvpn
$ vopono exec --provider protonvpn --server sweden chromium-browser

vopono 在 Raspbian 上运行 OpenVPN 的截图:

Raspbian Screenshot

注意 Wireguard 不在 Raspbian 软件源中,因此安装起来并不简单。你可以按照本指南尝试安装,但请注意,你不仅需要安装 Wireguard 和 wireguard-tools 以获得 wg 命令,还需要安装 linux-headers 以确保其正常工作(即避免在尝试建立连接时出现 Protocol not supported 错误)。

查看用户指南了解端口转发以及如何将 vopono 与守护进程和服务器一起使用的详细信息,如果你希望将 Raspberry Pi 用于运行 privoxy 或 transmission-daemon 等。

Debian + Ubuntu

安装发布页面上提供的 deb 包。

Fedora + OpenSUSE

安装发布页面上提供的 rpm 包(选择正确的版本)。

Gentoo Linux

从主软件源安装 vopono。

root@kitploit:~
$ emerge -av net-vpn/vopono

其他 Linux 发行版

使用发布页面上的预编译二进制文件,或者按照下文使用 Cargo 从源代码安装。

从此仓库安装(使用 Cargo)

运行提供的安装脚本 install.sh——它将执行 cargo install 并将配置文件复制到 ~/.config/vopono/。

注意最低支持的 Rust 版本是 1.85(因为需要 edition 2024)。你可以使用以下命令检查你的版本:

root@kitploit:~
$ rustc --version

已知问题

  • 在现有 vopono 命名空间中启动新应用程序时,对防火墙规则(即转发和开放端口)的任何修改都不会生效(它们仅在创建命名空间时使用)。端口转发也是如此。
  • OpenVPN 凭据始终以明文形式存储在配置中——未来可能会添加不存储凭据的选项,但似乎 OpenVPN 需要以明文形式提供凭据。
  • 无法轻松删除 MozillaVPN 设备(Wireguard 密钥对)——与 Mullvad 不同,这无法在网页上完成。我建议使用 MozWire 来管理。
  • 由于客户端-服务器模型,gnome-terminal 无法在网络命名空间中运行——参见 issue #48
  • 当 vopono 以 root 身份运行时,从网络命名空间向主机的端口转发(例如运行 transmission-daemon)无法正常工作——参见 issue #84

许可证

vopono 使用 GPL 版本 3.0(或更高版本)许可,请参阅 LICENSE 文件或 https://www.gnu.org/licenses/gpl-3.0.en.html

词源

vopono 是 VPN 在 Esperanto(世界语)中的发音。

Se vi ankaŭ parolas Esperanton, bonvolu serĉi min en la kanalo de Discord de Rust Programming Language Community.

贡献

除非你明确声明,否则你为包含在作品中有意提交的任何贡献,将根据 GPLv3(或更高版本)许可,不附加任何额外条款或条件。

非常感谢 NilsIrl 的 MozWire 对 MozillaVPN API 的研究。

下载工具