2026 最新:Ubuntu 26.04 LTS 搭建 WireGuard VPN 服务器及全平台客户端配置教程
Date Published
WireGuard 是新一代高性能 VPN 协议,以极简配置、内核级速度和强加密著称。本教程使用 Ubuntu 26.04 LTS 作为服务端,手把手带你完成安装、配置,并让 Android、iPhone、Windows、Mac 全平台设备安全接入。即使你之前未接触过 VPN,也能在 10 分钟内成功搭建。
服务端配置
环境:Ubuntu 26.04 LTS(其他 Debian 系发行版步骤类似)。所有命令均以 sudo 用户或 root 执行。
安装 WireGuard
运行以下命令:
sudo apt update
sudo apt install wireguard -y生成密钥与基础配置
1. 生成服务器密钥对:
sudo 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.key2. 获取主网卡名称:
ip -o -4 route show to default | awk '{print $5}'记住输出结果(如 eth0),后面需要替换到配置中。
3. 创建服务端配置文件 /etc/wireguard/wg0.conf:
[Interface]
Address = 10.8.0.1/24
SaveConfig = true
PrivateKey = <此处粘贴服务端私钥>
ListenPort = 51820
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE
PreDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE防火墙与 IP 转发
启用 IP 转发:
echo "net.ipv4.ip_forward = 1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -pUFW 防火墙放行端口:
sudo ufw allow 51820/udp云服务器安全组:登录云控制台,添加入站规则,协议 UDP,端口 51820,来源 0.0.0.0/0。
启动 WireGuard 并设置开机自启:
sudo systemctl start wg-quick@wg0
sudo systemctl enable wg-quick@wg0添加客户端 Peer
为客户端生成密钥对(示例客户端名称 client1):
sudo wg genkey | sudo tee /etc/wireguard/client1_private.key
sudo chmod 600 /etc/wireguard/client1_private.key
sudo cat /etc/wireguard/client1_private.key | wg pubkey | sudo tee /etc/wireguard/client1_public.key将客户端加入服务端。动态添加(无需重启):
sudo wg set wg0 peer $(sudo cat /etc/wireguard/client1_public.key) allowed-ips 10.8.0.2/32或编辑配置文件 /etc/wireguard/wg0.conf,末尾添加:
[Peer]
PublicKey = <客户端公钥>
AllowedIPs = 10.8.0.2/32然后重启:sudo systemctl restart wg-quick@wg0。每增加一个客户端,请分配不同的虚拟 IP,如 10.8.0.2/32、10.8.0.3/32。
生成客户端配置文件
在服务端创建 client1.conf:
[Interface]
PrivateKey = <客户端私钥>
Address = 10.8.0.2/24
DNS = 8.8.8.8
[Peer]
PublicKey = <服务端公钥>
Endpoint = <服务器公网IP>:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25便捷分发方式:安装 qrencode 将配置文件转为二维码,客户端扫码即可导入:
sudo apt install qrencode -y
qrencode -t ansiutf8 < client1.conf全平台客户端连接指南
Android 客户端
下载安装:
- Google Play 商店下载
配置步骤:
1. 打开 App → 点右下角 + → Import from file or archive 选择 .conf 文件,或 Scan from QR code 扫描二维码
2. 点击开关即可连接
iOS 客户端
下载安装:
- App Store 下载
配置步骤:
1. 打开 App → 右上角 + → Create from file or archive,或 Create from QR code
2. 允许添加 VPN 配置,点击开关连接
Windows 客户端
下载安装:
- 访问 WireGuard 官方网站 https://www.wireguard.com/install/ 获取安装程序
配置步骤:
1. 启动程序 → Import tunnel(s) from file → 选择 .conf 文件
2. 点击 Activate 按钮,状态变绿即连接成功
macOS 客户端
下载安装:
- App Store 下载
配置步骤:
1. 打开 WireGuard → Import Tunnel(s) from File → 选择配置文件
2. 点击 Activate 连接
客户端下载链接汇总
Android:Google Play 商店 | iOS:App Store | Windows:WireGuard 官网下载页 | macOS:App Store。所有客户端均开源免费,请从官方渠道下载以确保安全。
📋 客户端下载地址(可复制)
Android (Google Play) https://play.google.com/store/apps/details?id=com.wireguard.android
iOS (App Store) https://apps.apple.com/us/app/wireguard/id1441195209
Windows (官网下载页) https://www.wireguard.com/install/
macOS (App Store) https://apps.apple.com/us/app/wireguard/id1451685025?ls=1&mt=12
验证与排错
服务端状态检查:
sudo wg show应看到 latest handshake 时间在 2 分钟内,表示连接正常。
客户端验证:访问 ip.sb 或 curl ifconfig.me,显示的 IP 应变为服务器公网 IP。
如果无法连接,请逐项检查:
- 云防火墙安全组是否放行 UDP 51820
- IP 转发是否开启:sysctl net.ipv4.ip_forward 输出为 1
- iptables NAT 规则是否存在:sudo iptables -t nat -L POSTROUTING 能看到 MASQUERADE
- 服务端 Peer 公钥是否与客户端私钥匹配
- 客户端配置文件中的 Endpoint 公网 IP 是否正确
常见问题 FAQ
Q:为什么只能 ping 通但打不开网页?
A:通常是 DNS 问题。请在客户端配置中明确指定 DNS = 8.8.8.8,或换用其他公共 DNS。
Q:如何让客户端只能访问内网,不影响其他流量?
A:将客户端配置文件中的 AllowedIPs 改为 10.8.0.0/24(或你需要的内网网段),而不是 0.0.0.0/0。
Q:如何添加更多客户端?
A:重复添加客户端 Peer 步骤,生成新密钥对,分配新 IP 并加入服务端即可。
Q:服务器重启后 VPN 会断开吗?
A:只要设置了 systemctl enable wg-quick@wg0,开机会自动恢复。
Q:配置文件安全吗?如何传给手机?
A:配置文件包含私钥,务必通过加密渠道传输。推荐使用二维码扫描,一次使用后可从终端清除记录。
总结
至此你已拥有一套完整的 WireGuard 部署方案,服务器跑在 Ubuntu 26.04 LTS 上,所有主流客户端均可轻松接入。无论是远程办公、家庭网络互访还是安全代理,都能获得稳定高速的体验。如果你在搭建过程中遇到任何问题,欢迎留言讨论!