Skip to content

蒲公英居然限制我设备数量,又不是没公网,自己搭一个 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 地址就行了

在页面中新建客户端,然后下载配置文件

Pasted image 20251030101213

配置文件如下

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 通

但是我们遇到问题不能逃避!

一定有更好的解决方法!!!

方法就是新建防火墙入站规则,可以手动建一个

Pasted image 20251030143114

也可以用管理员模式打开 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

然后应该就没什么问题了~