所有系统运行正常 6 个离岸区域 无 KYC 结账
实操 实战指南

自建 VPN:在离岸 VPS 上部署 WireGuard

在离岸 VPS 上运行你自己的 WireGuard VPN,等于把某家服务商的无日志承诺换成一台你从头到尾掌控的机器。本指南将在一台每月 $8.00 起的无 KYC VPS 上演示完整搭建过程——内核安装、密钥生成、服务端与客户端配置、一道 ufw 防火墙,以及用 qrencode 生成的手机扫码——然后直白地说明一条单用户隧道能隐藏什么、又不能隐藏什么,因为你的出口 IP 只属于你一人。

更新于 2026-06-10 · 11 分钟阅读 · 服务器运维
本页内容
  1. 为何要运行自己的 VPN
  2. 自托管隧道能隐藏什么——以及不能隐藏什么
  3. 先选定地点与套餐
  4. 各部分如何拼合在一起
  5. 趁此机会顺手加固服务器
  6. 添加更多设备并让它持续运行
  7. 什么时候商用 VPN 或 Tor 才是更好的工具
  8. 分步操作
SP·01

为何要运行自己的 VPN

商业 VPN 要你信任一家公司的无日志声明,而这声明横跨数以千计、共用寥寥几个出口 IP 的用户。在离岸 VPS 上自托管 WireGuard 则颠覆了这个信任模型:你持有密钥,你设定日志策略,存在的唯一元数据就是你选择保留的元数据。对某些威胁模型而言,这是正确的取舍——你不再信任营销文案,转而信任你自己的配置外加服务器所处的司法管辖区。

WireGuard 是胜任此事的现代之选。它只有区区几千行经过审计的内核代码,相比 OpenVPN 或 IPsec 攻击面极小,并且内置固定的现代密码学——Curve25519、ChaCha20-Poly1305、BLAKE2s——因此不存在哪个密码套件会被误配成脆弱方案。握手迅速,在 Wi-Fi 与移动网络之间漫游无缝衔接,一条空闲隧道几乎不耗资源。在离岸 VPS 上,你能在自己从 6 个区域中挑选的管辖区内获得一个专属出口,大约 15 min 内上线,并配有 1.5 Tbps 的 L3/4 防护以及每个套餐标配的不限量端口。

SP·02

自托管隧道能隐藏什么——以及不能隐藏什么

在动手搭建之前,请对这个模型保持诚实。自托管隧道会加密你的设备与 VPS 之间的一切,把它对你的本地网络和 ISP 隐藏起来,并且对于你经它路由的任何流量,都用 VPS 的 IP 替换掉你的家庭 IP。这在敌对的 Wi-Fi 上、在通过一个稳定地址访问你自己的服务时,或在让你的接入 ISP 看不到你的浏览行为时,确实很有用。

它做不到的,是让你匿名。出口 IP 只属于你一人——没有其他用户的人群可供混入,所以任何能将连接两端关联起来、或取得针对该主机的具约束力命令的人,都能把那个地址归到你的账户名下。在主机一侧,立场是固定的:DMCA 通知不予处理也不予回复——DMCA 是一部美国法律,在我们的管辖区内毫无效力,我们只对来自对特定服务器拥有管辖权的法院、具有约束力的命令采取行动。这能保护你免受自动化下线机器人的侵扰;它并不能让一个单用户 VPN 变成匿名工具。如果你的对手是一个全球性的被动观察者,那就改用 Tor。自托管隧道是一件保密与掌控工具,而非一件隐身斗篷。

SP·03

先选定地点与套餐

个人 VPN 受带宽约束,而非受 CPU 约束,所以最小的套餐就绰绰有余——每月 $8.00 起的 Drift VPS 早在 vCPU 出汗之前就会把端口跑满。把你的决策预算花在地点上吧。当交互使用的延迟至关重要时,把服务器放得离你近些;当法律上的距离比往返时延更重要时,则放得远些。

罗马尼亚和荷兰按基础价计费,并拥有最佳的欧洲连通性;瑞士、冰岛、马来西亚和巴拿马则适用一项在配置器中实时显示的地区系数。马来西亚是亚太之选;巴拿马和冰岛在司法距离上倾斜得最为彻底。如果你拿不定主意,配套指南你该选哪个离岸地点?会逐个区域地权衡各项取舍。无论你选哪个,都用加密货币从 $30.00 起充值你的余额然后部署——没有身份核验,也无需在册的银行卡。

SP·04

各部分如何拼合在一起

WireGuard 把 VPN 建模为一组对等节点,每个节点由一个公钥标识,通过一个虚拟接口(此处为 wg0)通信。服务端获得一个私有子网——比如 10.66.0.0/24 外加一个 IPv6 ULA——每个客户端在其中取用一个地址。服务端的 [Interface] 区块存放它的私钥和监听端口;每个客户端则是一个 [Peer] 区块,承载该客户端的公钥及其被允许使用的地址。

在客户端一侧,AllowedIPs = 0.0.0.0/0, ::/0 正是让这成为全隧道 VPN 的关键:它告诉客户端把所有流量都经 wg0 路由。随后服务端用一条伪装规则把这些流量经其真实网络接口做 NAT 转发出去,这也是为什么必须在内核中启用 IP 转发。PersistentKeepalive = 25 让路径穿过有状态防火墙和运营商 NAT 时保持开启。在客户端把 DNS 设为你信任的解析器,这样域名查询便在隧道内传输,而不会泄露到你的本地网络。WireGuard 本身是无连接的——不存在需要中断的长期会话,因此当笔记本休眠、或手机从 Wi-Fi 切到移动网络时,链路无需任何重连仪式即可存活。如果某条路径的 MTU 别扭、大数据包卡住,把客户端接口的 MTU 调低到 1380 左右通常就能解决。掌握这四个概念——接口、对等节点、AllowedIPs、伪装——下面的配置读起来就像散文一样顺畅。

SP·05

趁此机会顺手加固服务器

VPN 端点值得严加防护。将 SSH 改为仅密钥认证,并在 /etc/ssh/sshd_config 中禁用密码登录和 root 登录(PasswordAuthentication noPermitRootLogin prohibit-password),然后重载 sshd。让防火墙保持默认拒绝:一台 WireGuard 主机所需的入站端口只有 SSH 和 UDP 51820,其余一律关闭。

将 WireGuard 密钥文件保持为 0600 权限——下方步骤中的 umask 077 会处理好这一点——并且绝不要把私钥复制到它所属主机之外的地方。开启无人值守安全更新,让内核和 wireguard 软件包无需专人盯守就能持续打补丁。隧道建好后测试一下 DNS 泄漏——一次能通过你所选解析器(而非你的接入 ISP)完成的解析,就确认了查询确实留在 wg0 之内。如果你之后还要对外开放其他服务,应添加 fail2ban 和按服务划分的规则,而不是放宽防火墙。这一切都不依赖于主机商:VPS 是你的,root 是你的,而 99.9% 的在线时长承诺让这台主机保持可达,使你的隧道始终在线。

SP·06

添加更多设备并让它持续运行

每台接入的设备都需要自己的密钥对,以及服务器上自己的 [Peer] 配置块,每个都在子网内拥有唯一地址——在笔记本和手机之间复用同一个密钥对会破坏漫游,也会让任何排障变得混乱。生成一对全新的 client2.key/client2.pub,追加一个对等节点,然后用 wg syncconf wg0 <(wg-quick strip wg0) 重载接口,或用 systemctl restart wg-quick@wg0 重启它。

对于手机,完全可以跳过文件复制:在服务器上用 qrencode -t ansiutf8 < client.conf 把客户端配置渲染成二维码,直接扫码导入官方 WireGuard 应用。要查看谁已连接、以及每个对等节点上次握手的时间,运行 wg show 即可——对于个人部署而言,这就是监控的全部。在内核升级前做快照,万一某个新版本出问题,你就能干净地回滚。

SP·07

什么时候商用 VPN 或 Tor 才是更好的工具

自托管并不总是答案,假装它是反倒不诚实。如果你的目标是隐没于人群之中,一家信誉良好的多用户 VPN 能给你许多人同时使用的共享出口 IP——单租户隧道做不到这一点。如果你需要随时在不同出口国家之间切换,一项带有一键切换应用的商用服务,就是比临时开机器要方便得多。而如果你需要在面对资源雄厚的对手时获得真正的匿名性,Tor 的洋葱路由正是为应对自托管 VPN 无法解决的关联性问题而设计的。

自托管的优势在于控制权和机密性:你不必信任别人的日志策略,你能获得一个稳定的专用 IP 用于管理和白名单,而且由你来决定司法管辖区。许多人两者并用——用自托管隧道处理日常机密性,用 Tor 应对偶尔需要匿名的任务。挑选与威胁相匹配的工具,而不是落地页做得最漂亮的那个。

SP·08

分步操作

  1. 01

    部署 VPS 并安装 WireGuard

    部署一台搭载 Debian 13 或 Ubuntu 24.04 的 VPS,通过 SSH 以 root 身份登录,然后更新并安装你所需的两个软件包。

    apt update && apt full-upgrade -y
    apt install -y wireguard qrencode
  2. 02

    启用 IP 转发

    全隧道 VPN 会把客户端流量从服务器的接口转发出去,因此内核必须允许 IPv4 和 IPv6 的转发。

    cat > /etc/sysctl.d/99-wg.conf <<'EOF'
    net.ipv4.ip_forward=1
    net.ipv6.conf.all.forwarding=1
    EOF
    sysctl --system
  3. 03

    生成服务器密钥

    /etc/wireguard 目录下以严格的 umask 进行操作,让每个密钥文件都落到 0600 权限。

    cd /etc/wireguard
    umask 077
    wg genkey | tee server.key | wg pubkey > server.pub
  4. 04

    生成客户端密钥对

    每台设备都有自己的密钥对。现在先生成第一个。

    wg genkey | tee client.key | wg pubkey > client.pub
  5. 05

    编写服务器配置

    ip route get 1.1.1.1 找出你真实的网络接口,如果下面的 eth0 与之不同就替换掉(它往往是 enp1s0)。其中的 $(cat ...) 调用会内联你刚刚生成的密钥。

    cat > /etc/wireguard/wg0.conf <<EOF
    [Interface]
    Address = 10.66.0.1/24, fd86:ea04:1115::1/64
    ListenPort = 51820
    PrivateKey = $(cat server.key)
    PostUp = iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    PostDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE; ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
    
    [Peer]
    PublicKey = $(cat client.pub)
    AllowedIPs = 10.66.0.2/32, fd86:ea04:1115::2/128
    EOF
  6. 06

    编写客户端配置

    在同一目录下创建 client.conf。在标注的位置粘贴 client.keyserver.pub 的内容,并把 Endpoint 设为你服务器的公网 IP。AllowedIPs = 0.0.0.0/0, ::/0 会把所有流量都经由隧道路由。

    [Interface]
    PrivateKey = <paste client.key>
    Address = 10.66.0.2/32, fd86:ea04:1115::2/128
    DNS = 9.9.9.9
    
    [Peer]
    PublicKey = <paste server.pub>
    Endpoint = YOUR_SERVER_IP:51820
    AllowedIPs = 0.0.0.0/0, ::/0
    PersistentKeepalive = 25
  7. 07

    开放防火墙

    放行 SSH 和 WireGuard 的 UDP 端口,然后启用 ufw。对其余一切保持默认拒绝的姿态。

    ufw allow OpenSSH
    ufw allow 51820/udp
    ufw enable
  8. 08

    启动隧道

    启用该接口使其在重启后仍然存活,然后确认对等节点和握手情况。

    systemctl enable --now wg-quick@wg0
    wg show
  9. 09

    用二维码连接手机

    把客户端配置渲染成可扫描的二维码,并导入 WireGuard 移动应用——无需任何文件传输。

    qrencode -t ansiutf8 < client.conf
SP·09 — 常见问题

快速解答

自托管 VPN 能让我匿名吗?

不能。出口 IP 完全属于你一个人,没有其他用户可以混入其中,因此它提供的是机密性和控制权——而非匿名性。能够同时关联连接两端的对手,就能把这个 IP 归因到你身上。要在面对有能力的对手时获得匿名性,请使用 Tor;用自托管隧道来让你的流量避开充满敌意的网络,远离你的接入 ISP。

个人 VPN 我需要哪种套餐?

最小的那种。VPN 受限于带宽,而非 CPU,所以 $8.00/月 的 Drift VPS 会在 vCPU 成为瓶颈之前很久就先把它不限量的端口跑满。1.5 Tbps 的 L3/4 防护为标配,因此端点在噪声攻击下仍保持可达。

我能把手机和笔记本加入同一条隧道吗?

可以——给每台设备分配自己的密钥对,以及自己带有子网内唯一地址的 [Peer] 配置块。对于手机,用 qrencode 把配置渲染出来并扫码导入 WireGuard 应用。在多台设备间复用同一个密钥对会破坏漫游,所以务必为每台设备生成全新的一对。

你们会记录我的 VPN 流量吗?

我们看不到你隧道内部的内容——VPS 是你的,root 是你的,而 WireGuard 流量在你的设备与服务器之间是端到端加密的。作为主机商我们所持有的内容仅限于账户数据,这些已在无 KYC 政策页面上逐项列明。服务器发生什么样的日志记录,完全取决于你自己的配置。

付诸实践

VPS 在 15 min 内上线,独立服务器在 2–12 h 内交付。从 $30.00 起用加密货币充值——不绑定任何身份。

部署一台 VPS