Skip to main content
[ PIER ]

AmneziaWG

经 DPI 测试的 WireGuard 分叉 —— 带友好的 Web UI。

Service #vpn#wireguard#network#privacy#security

AmneziaWG 是 WireGuard 的一个分叉,添加了针对深度包检测(DPI)的流量混淆。在"off"模式下与标准 WireGuard 线兼容,但能够伪装数据包以通过阻止普通 WireGuard 的限制性网络(俄罗斯 RKN、伊朗过滤、GFW 探测)。本模板将 AmneziaWG 与友好的 wg-easy Web UI 打包。

使用 Pier 部署

  1. 1 打开 Pier 控制台,点击 Add service。
  2. 2 从模板列表中选择 AmneziaWG。
  3. 3 选择版本、设置服务名称,Pier 会自动配置容器、存储和端口。
  4. 4 如需 HTTPS,请绑定域名。Traefik 会自动签发 Let's Encrypt 证书。

什么是 AmneziaWG?

AmneziaWG 是 WireGuard 的开源分叉,添加旨在击败深度包检测(DPI)的混淆层。 普通 WireGuard 有非常可识别的数据包形状 —— 固定大小握手、可预测的时间 —— 这使得限制性网络(俄罗斯 Roskomnadzor、伊朗的过滤、中国的 GFW 探测)中的 DPI 防火墙轻易识别和阻止。

AmneziaWG 保留 WireGuard 协议语义但随机化数据包大小,添加垃圾流量, 并填充初始握手 —— 足以使流量形状不再匹配 WireGuard 的签名。混淆参数 设为零时回退到普通 WireGuard 以与官方客户端兼容。

本模板将 AmneziaWG 与 wg-easy Web 管理 UI(一个知道 AmneziaWG 参数的 分叉)打包,让你从浏览器添加和移除客户端、为移动生成 QR 码并监控流量 —— 无 SSH,无 wg-quick,无配置文件编辑。

Pier 如何部署它

Pier 使用 w0rng/amnezia-wg-easy 镜像。两个端口 —— 51820/udp 用于 VPN 流量, 51821/tcp 用于 Web 管理 UI(在 Traefik 后带 TLS,当你在 Pier 中附加自定义 域名时)。

首次启动时你通过 env vars 设置 Web UI 密码(Pier 生成强密码)。登录,将 WG_HOST 设置为你的 VPS 公共 IP 或域名,可选地调整混淆参数,并开始添加 客户端。每个客户端获得可下载的配置文件和用于 AmneziaVPN 移动应用的 QR 码。

配置卷挂载在 /etc/wireguard 并跨容器重启持久化对等状态。

何时不要使用 AmneziaWG

如果你的用户不在 DPI 限制网络中,普通 WireGuard(wg-easy 本身)更简单 且稍快。对于带基于身份访问和粒度 ACL 的公司 VPN,看看 Tailscale、Twingate 或 NetBird。对于纯应用层代理(仅浏览器),Shadowsocks 或 V2Ray 更轻量。 AmneziaWG 是”我想要在俄罗斯 / 伊朗 / 类似限制性网络中工作的自托管全隧道 VPN”的精确答案。

核心功能

开箱即用的 DPI 抵抗

AmneziaWG 添加数据包长度和时间混淆,使流量与 WireGuard 的独特签名不匹配。在杀死普通 WireGuard 的 RKN 阻止中幸存。

友好的 Web UI(wg-easy 分叉)

从浏览器管理客户端 —— 添加、移除、重新生成密钥、查看实时传输统计、为移动客户端共享 QR 码。无 wg-quick 文件编辑。

标准 WireGuard 客户端工作

AmneziaVPN 客户端应用可用于 iOS/Android/Mac/Windows/Linux。混淆关闭时,官方 WireGuard 客户端也能连接。

每客户端配置 QR 码

用手机上的 AmneziaVPN 应用扫描,立即连接。与经典 wg-easy 相同的 UX。

微小占用

不到 100 MB 镜像,最小 CPU。AmneziaWG 内核性能加用户空间混淆开销 —— 5 美元 VPS 上仍然数百 Mbps。

在俄罗斯 RKN 阻止中幸存

被数万俄罗斯用户用来绕过标准 VPN 协议(WireGuard、OpenVPN、IKEv2)的 DPI 阻止。

应用场景

绕过基于 DPI 的阻止

DPI 阻止 WireGuard 签名的网络(国家、ISP、企业防火墙)。AmneziaWG 的混淆击败其中大多数。

带友好 UI 的个人 VPN

为你的手机和笔记本电脑自托管 VPN。AmneziaWG + Web UI 是非 CLI 用户最简单的"WireGuard"设置。

家庭 / 小团队 VPN

在一台 VPS 上多达几十个客户端。从 UI 添加用户,现场 QR 共享。

站点对站点或漫游 worker 设置

将小办公室或远程 worker 连接到内部服务。WireGuard 的漫游和 NAT 穿越仍然适用。

旅行路由器上游

配置 GL.iNet 旅行路由器,通过你的 AmneziaWG VPS 路由所有酒店 Wi-Fi 流量。

代码示例

添加客户端(Web UI) text
1. 打开 https://vpn.example.com:51821
2. 登录(首次启动时设置的 Web 密码)
3. 单击 "+ New" → 命名客户端
4. 单击 "Show QR" → 用手机上的 AmneziaVPN 扫描
5. 在手机上连接 —— 互联网现在通过你的 VPS 路由
服务器混淆配置(Pier env) text
WG_HOST: vpn.example.com
WG_PORT: 51820
WG_JC: 5
WG_JMIN: 50
WG_JMAX: 1000
WG_S1: 50
WG_S2: 100
AmneziaVPN 客户端配置 ini
[Interface]
Address = 10.8.0.2/24
PrivateKey = <client-private>
Jc = 5
Jmin = 50
Jmax = 1000

[Peer]
PublicKey = <server-public>
AllowedIPs = 0.0.0.0/0
Endpoint = vpn.example.com:51820
PersistentKeepalive = 25
SSH 进入容器(高级) bash
docker exec -it pier-vpn sh
cat /etc/wireguard/wg0.conf
wg show wg0

对比

vs 普通 WireGuard (wg-easy) 相同的 UX,但可 DPI 阻止。如果你不在限制性网络中,普通 WireGuard 更简单。AmneziaWG 在普通被阻止的地方特别重要。
vs OpenVPN 带 obfsproxy/Stunnel 的 OpenVPN 也可击败 DPI,但更慢且攻击面更大。AmneziaWG 是现代轻量级替代。
vs Shadowsocks / V2Ray Shadowsocks/V2Ray 是应用层代理(TCP 隧道);AmneziaWG 是完整的 IP 层 VPN。不同工具。
vs Outline / Algo / Streisand Outline、Algo/Streisand 都旨在简单的 VPN 设置。AmneziaWG 专门添加混淆;其他不添加。

常见问题

官方 WireGuard 客户端会工作吗?
混淆参数设为默认(Jc/Jmin/Jmax/S1/S2 = 0)时是的。启用混淆时,你需要 AmneziaVPN 客户端,它说标准和混淆的 WireGuard。
它真的可被 DPI 阻止吗?
截至 2025 年底,俄罗斯 RKN 尚未成功大规模阻止混淆的 AmneziaWG 流量。特定的高风险网络可能专门针对你;混淆不是不可见。
性能开销?
与普通 WireGuard 相比,相同硬件上吞吐量成本 5-15%。在适度的 VPS 上仍然容易实现数百 Mbps。
什么端口?
51820/udp 用于 VPN 流量,51821/tcp 用于 Web 管理 UI。Pier 公开两者 —— 通过 Traefik 用 HTTPS 保护 Web UI。
多用户 / RBAC?
Web UI 的单一管理员密码。每客户端配置导出;除 WireGuard 密钥对外无客户端身份验证。
防火墙 / DNS 泄漏保护?
那是客户端关注。AmneziaVPN 应用包括防火墙选项。在笔记本电脑上,配置你的操作系统防火墙以丢弃非 VPN 流量。
日志?
服务器默认记录 WireGuard 握手(时间戳、对等公钥、源 IP)。如果日志是问题,在 env 中禁用。无应用层日志。

相关服务

在你的 VPS 上部署

AmneziaWG 是 WireGuard 的一个分叉,添加了针对深度包检测(DPI)的流量混淆。在"off"模式下与标准 WireGuard 线兼容,但能够伪装数据包以通过阻止普通 WireGuard 的限制性网络(俄罗斯 RKN、伊朗过滤、GFW 探测)。本模板将 AmneziaWG 与友好的 wg-easy Web UI 打包。

部署此服务 →