Appearance
蒲公英居然限制我设备数量,又不是没公网,自己搭一个 VPN!
服务端配置
服务端 ubuntu22.04 Docker 部署
该配置仅 ipv4!!禁用了 ipv6
yaml
volumes:
etc_wireguard:
services:
wg-easy:
environment:
- INSECURE=true
image: ghcr.io/wg-easy/wg-easy:15
container_name: wg-easy
volumes:
- ~/.wg-easy:/etc/wireguard
- /lib/modules:/lib/modules:ro
ports:
- "51820:51820/udp"
- "51821:51821/tcp"
restart: unless-stopped
cap_add:
- NET_ADMIN
- SYS_MODULE
sysctls:
- net.ipv4.ip_forward=1
- net.ipv4.conf.all.src_valid_mark=1
- net.ipv6.conf.all.disable_ipv6=1启动后打开 http://IP:51821
简单下一步,写个用户名密码,然后输入下 IP 地址就行了
在页面中新建客户端,然后下载配置文件

配置文件如下
conf
[Interface]
PrivateKey = xxxxxxx
Address = 10.8.0.6/24
DNS = 114.114.114.114
[Peer]
PublicKey = xxxxxxxx
PresharedKey = xxxxxxxxx
AllowedIPs = 10.8.0.0/24
PersistentKeepalive = 30
Endpoint = 123.123.123.123:51820这里需要注意的是,如果 docker 端口映射的不是 51820 的话,需要手动修改。
其次 AllowedIPs 如果是 0.0.0.0/0,建议改为 IP 地址所在网段
这里可以在docker-compose.yml里配置为environment
如:
yml
volumes:
etc_wireguard:
services:
wg-easy:
environment:
- INSECURE=true
- WG_HOST=123.23.153.12
- WG_PORT=51820
- WG_PERSISTENT_KEEPALIVE=25
- WG_DEFAULT_ADDRESS=10.8.0.x
- WG_DEFAULT_DNS=8.8.8.8
- WG_MTU=1420
image: ghcr.io/wg-easy/wg-easy:15
container_name: wg-easy
volumes:
- ~/.wg-easy:/etc/wireguard
- /lib/modules:/lib/modules:ro
ports:
- "51820:51820/udp"
- "51821:51821/tcp"
restart: unless-stopped
cap_add:
- NET_ADMIN
- SYS_MODULE
sysctls:
- net.ipv4.ip_forward=1
- net.ipv4.conf.all.src_valid_mark=1
- net.ipv6.conf.all.disable_ipv6=1客户端配置
Ubuntu 上配置客户端
直接命令安装
sudo apt install wireguard还有个依赖需要安装
sudo apt install openresolv把在服务端上下载的配置文件放到/etc/wireguard 里 (可以修改 wg0.conf)
然后运行 sudo wg-quick up wg0
简简单单
Windows 上配置客户端
然后在 Windows 上下载 wireguard 客户端 https://wireguardcn.com/install/
下载后运行、导入配置文件,点击连接即可
简简单单~
常见问题
至此所有配置还是很简单
wg 也没有报错,显示连接成功
但是在我们添加第二个客户端后会发现
Windows 根本 ping 不通!
关闭防火墙可以快速 ping 通
但是我们遇到问题不能逃避!
一定有更好的解决方法!!!
方法就是新建防火墙入站规则,可以手动建一个

也可以用管理员模式打开 powershell 然后输入以下命令:
shell
New-NetFirewallRule `
-DisplayName "WireGuard 子网(10.8.0.0/24)" `
-Direction Inbound `
-Protocol ICMPv4 `
-IcmpType 8 `
-RemoteAddress 10.8.0.0/24 `
-Action Allow `
-Enabled True然后应该就没什么问题了~