WireGuard 自 Linux 5.6 起并入内核,代码量远小于 OpenVPN 和 IPsec,握手更快、延迟更低。本文基于 Ubuntu 26.04,从安装到客户端连通,完整走一遍服务器部署流程。

Ubuntu 26.04 的默认 APT 源已直接提供 WireGuard,无需额外仓库。

打开网易新闻 查看精彩图片

第一步:安装

更新包索引后安装:

$ sudo apt update

$ sudo apt install wireguard -y

第二步:服务器配置

需要生成密钥对、确认网卡名称、创建 wg0 接口配置。

生成服务器私钥并设权限:

$ wg genkey | sudo tee /etc/wireguard/server_private.key

$ sudo chmod 600 /etc/wireguard/server_private.key

导出对应公钥:

$ sudo cat /etc/wireguard/server_private.key | wg pubkey | sudo tee /etc/wireguard/server_public.key

查看默认路由确认主网卡(通常为 eth0 或 ens3):

$ ip route | grep default

创建配置文件:

$ sudo nano /etc/wireguard/wg0.conf

写入以下内容,eth0 替换为实际网卡名:

[Interface]

Address = 10.0.0.1/24

ListenPort = 51820

PrivateKey = <粘贴服务器私钥>

PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

第三步:客户端配置

每个客户端需独立密钥对,并引用服务器公钥与地址。

生成客户端密钥:

$ wg genkey | tee client_private.key

$ cat client_private.key | wg pubkey | tee client_public.key

获取服务器公钥:

$ sudo cat /etc/wireguard/server_public.key

创建客户端配置 client.conf:

[Interface]

Address = 10.0.0.2/32

PrivateKey = <客户端私钥>

DNS = 8.8.8.8

[Peer]

PublicKey = <服务器公钥>

Endpoint = 你的服务器IP:51820

AllowedIPs = 0.0.0.0/0

PersistentKeepalive = 25

服务端启用 IP 转发并启动 wg0 接口后,客户端加载配置即可建立隧道。验证连通性后,整套自托管 VPN 即可投入使用。