跳到主内容

WireGuard 双 VPS 组网教程:路由、密钥与防锁死验证

在两台 Ubuntu 或 Debian VPS 之间建立 WireGuard 站点互联,覆盖密钥、AllowedIPs、转发、防火墙、NAT keepalive、systemd 启动和安全回滚。

GSProber · 主机测评编辑1 阅读
在两台 Ubuntu 或 Debian VPS 之间建立 WireGuard 站点互联,覆盖密钥、AllowedIPs…

WireGuard 双 VPS 组网教程:路由、密钥与防锁死验证

WireGuard 可以让两台 VPS 的私有网段通过加密 UDP 隧道互通,但最常见故障来自地址重叠、AllowedIPs 写错、转发未启用或防火墙把管理入口一起阻断。本文采用先建立点对点地址、再逐步加入站点路由的方式。配置前保留现有 SSH 会话,并参考nftables 防火墙教程准备回滚;服务持久化可结合systemd 服务管理教程

规划地址和生成密钥

先确认两端现有公网与私网网段不重叠,为隧道选择独立的小网段。Ubuntu 和 Debian 可从发行版仓库安装 WireGuard。每端执行 umask 077 后用 wg genkey 生成私钥,再通过 wg pubkey 导出公钥。私钥只保留在本机受限文件中,交换的只有公钥。

每个 peer 的 AllowedIPs 同时承担路由选择和来源校验,不是随意填写的访问列表。第一阶段只加入对端隧道地址;确认握手和双向通信后,再加入对端站点网段。两端不能把相同网段分别声明给不同 peer,否则路由会产生歧义。

配置接口与 peer

在两端创建 /etc/wireguard/wg0.conf,Interface 段设置各自隧道地址和私钥,至少一端设置 UDP ListenPort。Peer 段写入对端公钥、Endpoint 和 AllowedIPs。对端位于 NAT 后且需要长期接收连接时,可以按官方建议设置合理的 PersistentKeepalive;公网固定端点通常不必启用。

先用 wg-quick up wg0 临时启动,运行 wg show 查看最新握手和传输计数。这里的计数只证明隧道交换数据,不能说明公网质量。若无握手,依次检查 Endpoint、UDP 入站规则、公钥是否配对以及系统时间。

打开转发并限制防火墙

只有两台主机自身互通时,不需要转发第三方网段。要让各自后方网段通信,才启用 IPv4 或 IPv6 转发,并为 wg0 与目标内部接口添加明确的 forward 规则。不要直接允许任意接口互转,也不要无条件做 NAT;路由可达时优先保留真实源地址。

云安全组和主机防火墙都要允许 WireGuard UDP 端口,但来源应尽量限制为对端公网地址。SSH 管理端口保持独立规则。上线前安排自动回滚,错误规则导致新连接失败时恢复原配置。

验证路由和持久化

按顺序检查隧道地址、对端主机、对端站点网关和站点内目标。使用 ip route get 确认数据确实选择 wg0;抓包时只核对接口与协议,不把单次结果扩展为长期结论。还要测试错误来源是否被拒绝,以及 WireGuard 停止后公网 SSH 仍可访问。

验证完成后执行 systemctl enable --now wg-quick@wg0,再做一次可控重启。私钥文件、配置备份和日志权限都应限制。添加第三个站点时重新检查 AllowedIPs 唯一性,而不是复制整段配置。

运维与轮换

密钥轮换可先在一端新增新 peer 或安排短维护窗口,再逐端替换公钥并验证。设备失陷时应立即从所有对端移除旧公钥。WireGuard 不负责用户身份、密钥分发或 DNS,应由独立流程管理。

稳定的站点互联依赖明确网段、最小 AllowedIPs、双层防火墙和可验证回滚。先让点对点隧道工作,再增加转发和业务路由,可以显著降低远程改网导致失联的风险。

所属专题:自建VPN教程专题
教程GsDesk 是一款基于 Cloudflare Workers 与 VPS 自托管 的开源远程桌面项目,支持 WebR…

Cloudflare Workers 免费搭建开源远程桌面完整教程:无需 VPS,支持 WebRTC P2P、D1、KV、R2、浏览器远程控制、Windows 客户端和文件传输

GsDesk 是一款基于 Cloudflare Workers 与 VPS 自托管 的开源远程桌面项目,支持 WebRTC P2P 直连,服务端仅负责 API、身份认证和 WebSocket 信令,不中转桌面视频流,大幅降低服务器带宽成本。项目支持 Cloudflare 免费套餐 部署,也可以使用 Docker 在 VPS 上自托管,内置 Windows 客户端、浏览器控制端、手机远程控制,支持 8 位设备 ID、OTP 一次性密码、永久密码、Ed25519 设备认证、JWT 身份验证、文件传输、剪贴板同步、自动重连 等完整功能。

309 阅读

教程如果你一直想拥有一个属于自己的网盘,但又不想买 VPS、维护数据库或者折腾复杂环境,那么这个基于 Cloudflare…

CloudDisk:基于 Cloudflare Workers 的免费个人网盘,无需 VPS、MySQL,支持 R2+D1+KV 一键部署

如果你一直想拥有一个属于自己的网盘,但又不想买 VPS、维护数据库或者折腾复杂环境,那么这个基于 Cloudflare Workers 的开源项目 CloudDisk 值得看看。整个系统运行在 Cloudflare 免费套餐上,文件存储使用 R2,数据库使用 D1,会话数据使用 KV,不需要 MySQL,也不需要服务器。支持多用户登录、文件夹管理、分享链接、在线预览、Office 文档查看、文本在线编辑、大文件断点续传、协作者权限管理等功能。无论是个人备份、开发者存放代码文件、团队共享资料,还是搭建自己的私有网盘,都可以直接部署到 Cloudflare,一键完成,几乎零维护成本,非常适合独立开发者、个人站长和轻量团队使用。

288 阅读

教程很多朋友在使用 Linux 服务器或者 VPS 时,经常会遇到 DNS 污染、解析慢、域名无法访问等问题。其实只需要安…

Linux 开启 DNS over HTTPS(DoH)教程:使用 Cloudflared + systemd 实现加密 DNS,防污染、防劫持

很多朋友在使用 Linux 服务器或者 VPS 时,经常会遇到 DNS 污染、解析慢、域名无法访问等问题。其实只需要安装 Cloudflare 官方的 cloudflared,并配合 systemd 自启动,就能让整个系统通过 DNS over HTTPS(DoH)进行加密解析。

239 阅读

常见问题

AllowedIPs 只是防火墙白名单吗?

不是。它同时影响出站路由选择和入站来源校验,网段重叠会导致路由和身份判断混乱。

什么时候需要 PersistentKeepalive?

当 peer 位于 NAT 或状态防火墙后且需要在空闲后继续接收连接时使用;固定公网端点通常无需开启。

两台 VPS 自身互通需要开启 IP 转发吗?

不需要。只有需要把流量继续转发到两端后方网段时,才应启用并配置最小化 forward 规则。

怎样避免配置 WireGuard 时 SSH 失联?

保留当前会话,先只添加隧道地址,安排自动回滚,并在确认新 SSH 连接正常后再增加站点路由和转发规则。

评价与回复

无需登录;审核通过后公开显示。