VPS搭建WireGuard VPN:手机电脑都能用的自建加密隧道教程

十分钟搭好WireGuard VPN,Windows手机Linux全平台客户端配置和分流教程
发布于
1

市面上的VPN服务要么付费要么限速、免费的有安全隐患。用VPS自建一个WireGuard VPN,十分钟搞定,手机和电脑都能连,加密流量全走自己的服务器——速度取决于VPS的带宽,不限设备数、不限流量。

WireGuard和OpenVPN/IPSec的区别

WireGuard是近几年最受认可的新一代VPN协议。和传统方案对比:

协议 代码行数 配置复杂度 速度
WireGuard 约4000行 极简,一个配置文件 最快(内核态运行)
OpenVPN 约7万行 中等,需要管理证书 较快(用户态)
IPSec/L2TP 约40万行 复杂,密钥管理麻烦 较慢

WireGuard代码极少意味着安全审计容易、bug少。它跑在Linux内核里,性能损耗极小——测试数据基本接近VPS带宽上限。而且配置极简:服务端和客户端各一个配置文件,几行搞定。

第一步:VPS服务端安装

# Ubuntu/Debian一键安装
apt update && apt install wireguard -y

# 生成服务器私钥和公钥
cd /etc/wireguard
wg genkey | tee server_private.key | wg pubkey > server_public.key

# 创建配置文件
nano /etc/wireguard/wg0.conf

服务端配置文件 wg0.conf:

[Interface]
Address = 10.0.0.1/24          # VPN内网IP
ListenPort = 51820               # WireGuard端口
PrivateKey = 服务端私钥内容

# 开启IP转发(让客户端通过VPS上网)
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

# 客户端配置(每个客户端一段)
[Peer]
PublicKey = 客户端公钥
AllowedIPs = 10.0.0.2/32        # 分配给这个客户端的VPN内网IP

启动并设为开机自启:

systemctl enable wg-quick@wg0 --now
wg show    # 查看WireGuard状态

同时开启内核的IP转发:echo “net.ipv4.ip_forward=1” >> /etc/sysctl.conf && sysctl -p。

雨云入门VPS跑WireGuard性能足够——WireGuard开销极小。但注意:如果VPS在国内机房,跨境流量要走国际出口,延迟和速度取决于VPS线路。CN2 GIA线路的VPS做VPN体验会好很多。优惠码 admin01 首月五折。

第二步:客户端配置(Windows/手机/Linux)

在客户端设备上先生成密钥对:

# Linux/Mac/WSL里
wg genkey | tee client_private.key | wg pubkey > client_public.key
# 把客户端的公钥填入服务端配置文件的[Peer]段

客户端配置文件 client.conf:

[Interface]
Address = 10.0.0.2/24
PrivateKey = 客户端私钥
DNS = 1.1.1.1                 # 走VPN时用的DNS

[Peer]
PublicKey = 服务端公钥
Endpoint = 你的VPS公网IP:51820
AllowedIPs = 0.0.0.0/0        # 所有流量走VPN(分流用下面配置)
# AllowedIPs = 10.0.0.0/24    # 只把VPN内网流量走隧道(其他直连)
PersistentKeepalive = 25     # NAT穿透保活

Windows客户端:从WireGuard官网下载安装包,导入client.conf或手动填入配置项。Android/iOS:App Store/Google Play搜WireGuard安装,扫二维码或导入配置文件即可。手机端连接后通知栏会显示VPN图标——所有流量都走VPS加密通道。

第三步:分流配置——只代理特定流量

如果你只想让部分流量走VPS、不想把刷B站逛淘宝也绕一圈VPS,改AllowedIPs:

# 只把境外网站流量走VPN(用IP列表)
AllowedIPs = 1.0.0.0/8, 8.0.0.0/8, ...境外IP段
# 或者只把VPN内网流量走隧道
AllowedIPs = 10.0.0.0/24

精确分流需要维护一个境外IP列表文件,很多人觉得麻烦就直接全局模式了。如果VPS线路好(CN2 GIA),全局模式也没太大影响。

第四步:多客户端添加

想给手机和电脑都连同一个VPN,在服务端加多个[Peer]段:

[Peer]
PublicKey = 手机的公钥
AllowedIPs = 10.0.0.2/32

[Peer]
PublicKey = 电脑的公钥
AllowedIPs = 10.0.0.3/32

每加一个客户端就追加一段、给一个不同的IP。无数量限制、不额外收费——这是自建VPN相比商业VPN最大的优势。

和代理IP的区别

自建VPN和买代理IP解决的是不同问题:VPN是你控制的一台VPS,整个网络的出口IP就是这台VPS的IP——固定、独享。代理IP是你租别人的IP出口,可以买不同地区、不同类型的IP。VPN适合给自己设备提供全局加密通道,代理IP适合需要频繁换不同地区IP的场景。

天行IP的L2TP方案月付10元起(邀请码blsj),本质上也是VPN的一种——适合不折腾、直接用平台提供的现成服务。自建WireGuard适合愿意折腾、需要更高自由度的技术用户。

常见问题

连上WireGuard后国内网站变慢了?

流量全部绕了VPS,访问国内网站多了VPS到国内网站的来回延迟。解决:配置分流(AllowedIPs只包含需要走VPN的IP段,国内IP直连)。或者VPS选国内机房——延迟比海外机房的低。

VPS会被封IP吗?

WireGuard本身是合法的VPN协议,不像Shadowsocks/V2Ray有明显的代理特征。只要不是大流量跑跨境访问被运营商QoS限速,正常使用的风险很低。但不建议在明确禁止VPN的网络环境里使用。

手机连上后耗电快?

Wi-Fi下WireGuard耗电极低(几毫瓦级别)。4G/5G下因为要保持心跳包(PersistentKeepalive),耗电比其他VPN略高,但差别不大。如果特别在意耗电,把PersistentKeepalive改为0——NAT环境下可能偶尔断连。

本文由作者原创/授权发布于极跃圈(jiyueip.com)未经许可,禁止转载。题图来自Unsplash,基于CC0协议。

声明:极跃圈(JIYUEIP.com)内网友所发表的所有内容及言论仅代表其本人,并不反映任何极跃圈(JIYUEIP.com)之意见及观点。

0 讨论
热门最新
总结
暂无总结
0 / 600

代理IP和VPN经常被放在一起比较,但它们解决的是不同层面的问题。简单说代理IP是应用层(只改特定软件的出口IP),VPN是网络层(整个设备的流量都走加密隧道)。选哪个取决于你到底要干什么。 代理IP和VPN的技术差异 维度 代理IP VP

家里没有公网IP、公司内网的服务器只能在局域网里访问、NAS只能在连了家里WiFi时用——这些问题用一台便宜VPS搭个frp内网穿透就能解决。原理很简单:VPS作为公网入口,在VPS和你的内网设备之间建立一条加密隧道,外网用户访问VPS的某

第一次接触代理IP,看到一堆术语——SOCKS5、HTTP代理、住宅IP、静态IP——不知所云。本文用最直白的语言把代理IP是什么、怎么选类型、到手怎么配置、配置完怎么验证说清楚。零基础也能看懂。 代理IP到底是什么 你在网上做的每一件事—