这个项目能做什么
Vortix 是一款面向 WireGuard 和 OpenVPN 的终端用户界面,为用户提供以键盘驱动的单一视图,用于查看其隧道及周边网络状态。它面向那些觉得纯 wg-quick 或 openvpn 过于晦涩,但又认为完整桌面 VPN 客户端过于笨重或受提供商锁定的用户。
README 中描述的主要功能:
- 配置文件:导入 WireGuard .conf 和 OpenVPN .ovpn/.conf 文件、URL 或目录,每个配置文件最多支持 1024 条路由。
- 多隧道控制:同时运行完整隧道和分流隧道,指定一个默认路由所有者,并在发生冲突时提供 Switch 或 Cancel 选项。
- 遥测:显示吞吐量、延迟、抖动、丢包、公共 IP、ISP 和位置。
- 安全防护:报告 IPv4/IPv6 暴露情况、DNS 策略、加密状态和终止开关状态,并给出单一结论,而不是假设握手成功就意味着流量受到保护。
- 终止开关:提供 off、block-on-drop 和 vpn-only 模式,在 macOS 上通过 PF 实现,在 Linux 上通过 nftables 实现。
- 自动化:带版本的 JSON envelope、NDJSON watch 流、稳定的退出码、shell 补全和 hooks。
- 诊断:事件日志、OpenVPN 守护进程日志、会话日志、按进程的 socket 审计,以及 vortix report 命令。
- 外观:七种内置主题,其中包括一种跟随终端颜色的主题。
Vortix 以子进程方式编排系统 wg、wg-quick 和 openvpn 实现;它本身不实现任何一种 VPN 协议。对于大多数安装渠道,协议工具必须单独安装,不过 Homebrew、.deb 和 .rpm 软件包会将其一并拉取。
安装渠道包括 Homebrew、Debian/Ubuntu .deb、Fedora/RHEL .rpm、Arch Linux extra、Cargo(binstall 或源码构建)、npm、Nix、shell 安装器,以及静态 musl Linux 二进制文件。源码构建需要 Rust 1.85 或更新版本;建议使用 Linux 5.6+ 以获得内核内 WireGuard。
平台支持涵盖 macOS(主要开发平台)和 Linux(每次变更都会测试)。终止开关在 macOS 上使用 PF,在 Linux 上使用 nftables;DNS 在 macOS 上使用 System Configuration,在 Linux 上使用 systemd-resolved 或 resolvconf。仅在更改隧道、路由、DNS 和防火墙时需要 root;list、show 和 status 不需要。Vortix 从不运行来自配置文件的命令,并且没有自己的服务器。
文档包括使用、配置、故障排除和迁移指南,以及贡献者文档和项目看板。该项目采用 MIT 许可证,欢迎贡献和真实环境测试。
评论
0 人表达喜爱 · 满10人后显示 Deer Point
登录后参与讨论。