跳至正文

解决方案 · VPN

搭建 WireGuard VPN 的 VPS

WireGuard 只是一个内核模块加几 KB 的配置;单核机器在 CPU 耗尽之前就会先跑满上行链路。个人 VPN 真正消耗的是流量,每个字节进来又出去,这就是为什么不计流量的 U1-1($6.90)是推荐之选,而计流量的套餐则是一张迟早到来的账单。wg-easy 在此之上提供 Web UI 和二维码;C1-2-55($19.90)交付时它已在运行。

运行要求

软件来自官方文档,规格注明来源

软件及安全配置均来自项目自己的文档。若项目未公布硬件要求,规格会注明出自谁的建议。

取自 wg-easy 的 compose 文件和文档

  • 先装 Docker,然后运行 ghcr.io/wg-easy/wg-easy:15,配合 NET_ADMIN、SYS_MODULE 和 net.ipv4.ip_forward=1;WireGuard 由内核提供。
  • 端口:51820/udp 用于 VPN(唯一必须公开的端口),51821/tcp 用于 Web UI,它不应公开。
  • 首次启动可通过 INIT_ENABLED、INIT_USERNAME、INIT_PASSWORD、INIT_HOST、INIT_PORT、INIT_DNS 无人值守完成;之后在 UI 中创建客户端。
  • 流量翻倍:通过 VPN 下载 1 GB,就是服务器进 1 GB、出 1 GB。

规格(看带宽,不看核数)

按应用场景选择规格
工作负载vCPURAM
一个人,手机和笔记本电脑CPU 无关紧要;要么选不计流量,要么算清楚 TB 数。11 GB
家庭或小团队同上。几十个对等节点几乎没有开销,流媒体才有。12 GB
站点到站点或办公室仍然看带宽。按到办公室的延迟选择城市。22 GB

合适的套餐

4 台机器,实时报价

最便宜且不计流量的排在前面。价格为当日按月价格,读取自产品目录。

  • U1-1$6.90/月

    1 vCPU · 1 GB · 15 GB 磁盘 · 不计流量

    不计流量,伊斯坦布尔,推荐之选。1 vCPU、1 GB,不计流量:一个不会给您带来意外的 VPN。compose 文件需您自行粘贴(三条命令)。

  • C1-1-25$9.90/月

    1 vCPU · 1 GB · 25 GB 磁盘 · 1 TB

    每月 1 TB,覆盖 36 个城市。您想在哪里出口,都是同一台机器;1 TB 流量用于浏览绰绰有余,用于视频则偏紧。compose 需自行粘贴。

  • C1-2-55$19.90/月

    1 vCPU · 2 GB · 55 GB 磁盘 · 2 TB

    交付时 wg-easy 已在运行。1 vCPU / 2 GB / 2 TB,由运行我们预设配置的供应商提供:管理员密码保存在仅 root 可读的文件中,UI 只监听回环地址,二维码已就绪。

  • U1-2$8.90/月

    1 vCPU · 2 GB · 25 GB 磁盘 · 不计流量

    不计流量,2 GB,伊斯坦布尔。内存翻倍的选择,适合同时运行 DNS 过滤器或第二项服务的 VPN。

“部署并安装”会打开配置页面,启动脚本框中已完整填入我们的 WireGuard (wg-easy) 启动脚本,您在购买前即可查看。它在服务器搭建时以 root 身份运行一次,且仅适用于平台支持启动脚本的供应商;其他行的安装步骤是相同的命令,需由您自行粘贴运行。

安装

四个步骤,取自 wg-easy 文档

使用预设配置时,服务器交付时前三步已完成,管理员密码在 /root/WIREGUARD-NEXT-STEPS.txt 中等着您。

  1. Docker。curl -fsSL https://get.docker.com | sh
  2. compose 文件。执行 mkdir -p /etc/docker/containers/wg-easy,将项目的 docker-compose.yml 下载到该目录,并把 UI 端口绑定到回环地址:"127.0.0.1:51821:51821/tcp"。预设配置还会设置 INIT_* 变量,因此不会暴露任何设置向导。
  3. 启动并开放端口。执行 docker compose up -d,然后执行 ufw allow 51820/udp。其他一切都无需公开。
  4. 创建客户端。在您的笔记本电脑上执行 ssh -N -L 51821:127.0.0.1:51821 root@your-server,打开 http://127.0.0.1:51821/,添加客户端,用 WireGuard 应用扫描二维码。连接完成。

说实话

我们实际会买哪台

VPN 本质上是一张带宽账单,附带一台很小的服务器。请选不计流量的那款。

个人 VPN

U1-1 · $6.90/月

1 vCPU、1 GB、不计流量,每月 $6.90,位于伊斯坦布尔:您所有的手机和笔记本电脑,包括视频在内,账单都不会变化。这是我们最便宜的机器,也正适合这个用途。如果出口必须在其他国家,C1-1-25($9.90)覆盖 36 个城市,每月 1 TB,够浏览,不够看流媒体。两者都不运行我们的预设配置;安装只需三条命令。

常见问题

购买前大家常问的问题。

WireGuard 需要什么样的 VPS?
最小的那款。WireGuard 运行在内核中,单核即可传输数百兆比特;内存占用可以忽略。真正重要的资源是流量,因为您经由 VPN 拉取的每个字节都会进入服务器再出去。所以如实的规格问题不是核数或 RAM,而是套餐是否不计流量,或包含多少 TB。
为什么本页推荐不计流量的套餐,而不是看起来更便宜的计流量套餐?
因为 VPN 正是流量账最容易出问题的工作负载。一晚上的高清视频约 3–5 GB;经由 VPN 就是 6–10 GB 的服务器流量。1 TB 的套餐用于浏览网页没问题,但对看流媒体的家庭来说就捉襟见肘。不计流量的机器只需 $6.90,这个问题根本不会出现。
启动预设会做什么?
它使用 Docker 官方脚本安装 Docker,写入 wg-easy 的 compose 文件并将 Web UI 仅绑定到 127.0.0.1,设置项目的无人值守安装变量(随机生成 24 位管理员密码,并以本服务器地址作为端点),启动服务,防火墙上只开放 51820/udp。密码写入 /root/WIREGUARD-NEXT-STEPS.txt,仅 root 可读。任何设置向导都不会从互联网访问到。
Web UI 会暴露在外吗?
使用预设配置时不会:它只监听回环地址,您通过 SSH 隧道访问。wg-easy 自带的 compose 会在所有接口上发布 51821,并要求您在前面加上 HTTPS 和密码;绑定到回环地址是达到同样效果的更简单方式。VPN 端口 51820/udp 必须公开(客户端就是连接这个端口),而对于没有有效密钥的任何人,WireGuard 都不会作出响应。
服务器应该放在哪个城市?
想要速度就选离您近的,或者选您希望显示为来自其所在国家的地点。您能感受到的是延迟:选择从您所在位置 ping 值最低的城市;如果目的是从特定国家出口,那就由它决定。C1-1-25 以相同配置覆盖 36 个城市。
上面还能运行其他服务吗?
在 wg-easy 旁边加一个 DNS 过滤器(Pi-hole、AdGuard Home)是经典搭配,1–2 GB 即可容纳。更重的服务应该放到独立的机器上;VPN 主机的意义就在于小巧、平淡、始终在线。