运行 WireGuard VPN + 基于 Web 的管理 UI 的最简单方法

2025年08月14日2

WireGuard Easy,恭喜,您已经找到了在任何 Linux 主机上安装和管理 WireGuard 的最简单方法!

wechat 2025 08 14 152112 881

特征

  • 一体化:WireGuard + Web UI。
  • 安装简便,使用简单。
  • 列出、创建、编辑、删除、启用和禁用客户端。
  • 显示客户的二维码。
  • 下载客户端的配置文件。
  • 有关已连接客户端的统计信息。
  • 每个连接客户端的 Tx/Rx 图表。
  • Gravatar 支持。

要求

  • 具有支持 WireGuard 内核的主机(所有现代内核)。
  • 安装了 Docker 的主机。

安装

安装Docker

如果您尚未安装 Docker,请运行以下命令进行安装:

$ curl -sSL https://get.docker.com | sh
$ sudo usermod -aG docker $(whoami)
$ exit

并重新登录。

运行 WireGuard Easy

要自动安装并运行 wg-easy,只需运行:

$ docker run -d \ 
 --name=wg-easy \ 
 -e WG_HOST= 🚨YOUR_SERVER_IP \ 
 -e PASSWORD= 🚨YOUR_ADMIN_PASSWORD \ 
 -v ~/.wg-easy:/etc/wireguard \ 
 -p 51820:51820/udp \ 
 -p 51821:51821/tcp \ 
 --cap-add=NET_ADMIN \ 
 --cap-add=SYS_MODULE \ 
 --sysctl="net.ipv4.conf.all.src_valid_mark=1" \ 
 --sysctl="net.ipv4.ip_forward=1" \ 
 --restart unless-stopped \ 
 ghcr.io/wg-easy/wg-easy

YOUR_SERVER_IP💡用您的 WAN IP 或动态 DNS 主机名替换。

💡 用密码替换YOUR_ADMIN_PASSWORD以在 Web UI 上登录。

Web UI 现可在 上使用http://0.0.0.0:51821。

💡 您的配置文件将保存在~/.wg-easy

示例如下:

 docker run -d \
  --name=wg-easy \
  -e WG_HOST=vpn.myserver.com \
  -e PASSWORD=zhiyuanblogA123456 \
  -v ~/.wg-easy:/etc/wireguard \
  -p 51820:51820/udp \
  -p 51821:51821/tcp \
  --cap-add=NET_ADMIN \
  --cap-add=SYS_MODULE \
  --sysctl="net.ipv4.conf.all.src_valid_mark=1" \
  --sysctl="net.ipv4.ip_forward=1" \
  --restart unless-stopped \
  ghcr.io/wg-easy/wg-easy

此次示例的WG_HOST为二级域名,所以登录配置Web UI为 vpn.myserver.com:51821

WG_HOST也可以是服务器ip,但是要考虑到IP容易被墙,可以换为二级域名,这样的话域名DNS解析到服务器IP,当服务器IP被墙,重启服务器换个IP,域名DNA解析换个ip就可以。

开启防火墙端口

wechat 2025 08 14 154859 985

选项

可以通过-e KEY="VALUE"在docker run命令中使用设置环境变量来配置这些选项。

环境默认例子描述
PASSWORD-foobar123设置后,登录 Web UI 时需要密码。
WG_HOST-vpn.myserver.com您的 VPN 服务器的公共主机名。
WG_DEVICEeth0ens6f0Wireguard 流量应通过的以太网设备进行转发。
WG_PORT5182012345VPN 服务器的公共 UDP 端口。WireGuard 将始终在51820Docker 容器内监听。
WG_MTUnull1420客户端将使用的 MTU。服务器使用默认的 WG MTU。
WG_PERSISTENT_KEEPALIVE025保持“连接”打开的秒数。如果此值为 0,则连接将不会保持活动状态。
WG_DEFAULT_ADDRESS10.8.0.x10.6.0.x客户端 IP 地址范围。
WG_DEFAULT_DNS1.1.1.18.8.8.8, 8.8.4.4客户端将使用的 DNS 服务器。
WG_ALLOWED_IPS0.0.0.0/0, ::/0192.168.15.0/24, 10.0.1.0/24允许客户端使用的 IP。
WG_PRE_UP...-请参阅config.js了解默认值。
WG_POST_UP...iptables ...请参阅config.js了解默认值。
WG_PRE_DOWN...-请参阅config.js了解默认值。
WG_POST_DOWN...iptables ...请参阅config.js了解默认值。

如果您更改WG_PORT,请确保也更改暴露的端口。

更新

要更新到最新版本,只需运行:

docker stop wg-easy
docker rm wg-easy
docker pull ghcr.io/wg-easy/wg-easy

然后docker run -d \ ...再次运行上面的命令。

原文:https://github.com/weejewel/wg-easy

点赞0

喜欢这篇文章?打赏一下作者吧

  • 支付宝

    支付宝二维码

  • 微信

    微信二维码

你觉得文章内容怎么样

您的评论会在审核后被公开。

2 人参与,0 条评论

TOP