跳到正文
发现
Wombat:macOS 多协议 VPN 客户端
桌面应用效率工具

Wombat:macOS 多协议 VPN 客户端

一款原生、免费开源的 macOS VPN 客户端,把 WireGuard、AmneziaWG、Cisco AnyConnect 与 Tailscale 装进同一个 SwiftUI 应用。

admin
发布于 2026-10-28
浏览
13
访问
0
下载
0
版本
v1.4.0
平台
macOS
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。

详细介绍

项目简介

Wombat 是一款面向 macOS 的原生、免费、开源 VPN 客户端,用 SwiftUI 编写,隧道运行在 Apple 的 Network Extension 框架里,因此会出现在「系统设置 › VPN」中,App 关闭后仍能保持连接。它支持标准 wg-quick .conf 文件、官方 WireGuard App 导出的隧道压缩包、AmneziaWG 配置,也能连接 Cisco AnyConnect / Secure Client 网关(ASA、Firepower、ocserv),1.4 版起还以预览形式支持加入 Tailscale tailnet(含自建 Headscale)。

设计上把安全放在速度与便利之前:不使用 root helper、不写 sudoers 规则、不执行配置里的脚本,私钥不会存放在全局可读的位置。

主要功能

  • 导入:拖入 .conf 文件、配置文件 zip 包,或从剪贴板粘贴;导入前会展示流量走向与风险,剪贴板导入后会自动清空。
  • Cisco AnyConnect:按网关地址添加,支持密码、Duo(推送 / 电话 / 验证码)、SAML 单点登录(浏览器内或 App 内,支持 passkey 与密码管理器)以及钥匙串客户端证书;基于 OpenConnect 与 DTLS,运行在独立的系统扩展中,配置可导出为 .anyconnect 分享。
  • Tailscale(预览):加入 Tailscale 或自建 Headscale 的 tailnet,按 tailnet 地址和 MagicDNS 名称访问设备;协调服务器提议的地址、路由与 DNS 会先经 Wombat 校验,才会交给 macOS。
  • AmneziaWG:支持 AmneziaWG 1.0–2.0 的 Jc、S1-S4、H1-H4、I1-I5 参数,运行在 amneziawg-go 上;普通 WireGuard 隧道继续使用上游 wireguard-go。
  • 二维码:用 Mac 摄像头(或 iPhone 连续互通相机)扫描隧道二维码,也可导入二维码截图;反向可通过「Show QR Code」把隧道导到手机(需 Touch ID)。
  • 实时状态:窗口内显示每个 peer 的握手、endpoint 与流量,菜单栏显示流量与最近握手时间。
  • 配置检查:提示 DNS 泄漏、IPv4/IPv6 泄漏、AllowedIPs 重叠、隧道外 DNS、缺少预共享密钥以及被忽略的 PostUp 类脚本。
  • 按需连接:在 Wi-Fi 与以太网上自动连接,可信网络除外;由 macOS 评估,App 关闭也生效。
  • Kill switch:让所有流量走隧道(重连期间亦然),可选允许本地网络;全隧道配置默认开启。
  • 编辑器:带行号报错的 wg-quick 纯文本编辑器,密钥需 Touch ID 解锁后才显示。
  • 命令行:wombat CLI 支持连接、断开、导入、导出、重命名、删除、按需连接与 kill switch,状态与统计可输出 JSON,另有离线密钥与 lint 工具。
  • 自动更新:通过 Sparkle 提供签名更新,可选择弹窗提示、仅显示小圆点或完全不检查。
  • 无障碍:VoiceOver 标签与播报、键盘导航,状态同时用形状与颜色表达。

安装与使用

下载 Wombat.dmg 或从 GitHub Releases 获取,把 Wombat 拖入「应用程序」(网络扩展只能从这里运行)。首次打开后前往 系统设置 › 通用 › 登录项与扩展 › 扩展 › 按类别 › 网络扩展,在 Wombat.app 下开启 Wombat Tunnel;首次使用 Cisco AnyConnect 时再开启 Wombat OpenConnect,首次加入 tailnet 时开启 Wombat Tailnet。

或用 Homebrew 安装(同时会把 wombat 命令放入 PATH):

brew install --cask ventz/tap/wombat-wireguard

常用命令:

wombat import ~/Downloads/home.conf   # 在 App 中确认
wombat up home
wombat import work.anyconnect         # 一个 Cisco AnyConnect VPN
wombat up work                        # 在 Wombat 中登录(密码、Duo、SSO)
wombat show home                      # 类似 `wg show`
wombat check *.conf --strict          # lint;有错误或风险时退出码为 1
(umask 077; wombat genkey > priv.key) && wombat pubkey < priv.key
wombat logs -f                        # 流式查看 App 与隧道日志

Tab 补全支持 zsh(含 oh-my-zsh)、bash 与 fish:

wombat completion install --dry-run   # 预览将要做的改动
wombat completion install             # 执行

从源码构建需要付费的 Apple Developer 账号(macOS 只运行经 Developer ID 签名的 VPN 系统扩展):

brew install go xcodegen
git clone https://github.com/ventz/wombat-vpn && cd wombat-vpn
scripts/build-signed.sh --install

注意事项

  • 需要 macOS 15 或更高版本,支持 Apple silicon 与 Intel。
  • 自 Homebrew 6 起,第三方 tap 的 cask 需要被信任;按上面的完整名称安装只会信任这一个 cask,brew trust --tap ventz/tap 则会信任整个 tap。
  • Tailscale 支持仍是预览功能:暂不支持 exit node、子网路由、按需连接以及通过命令行添加 tailnet。macOS 同一时间只运行一个 VPN,连接 tailnet 会断开其他隧道。
  • Tailscale 的引擎运行在独立扩展中,与 WireGuard 密钥隔离,并已编译去掉其 SSH、Taildrop、Web 与调试服务器。

本作品整理自 GitHub 开源项目 ventz/wombat-vpn,原作者 @ventz。中文介绍由 AI 根据项目 README 整理,以原仓库为准。

更新记录

  1. v1.4.0当前版本

    1.4 版以预览形式支持加入 Tailscale / Headscale tailnet,浏览器登录,可用 tailnet 地址与 MagicDNS 名称访问设备,服务器下发的地址、路由与 DNS 会先经校验;暂不含 exit node、子网路由与按需连接,CLI 支持 tailnet 的 up/down/list/export。

评论