Skip to content
广告 · 本站推荐广告

Tailscale 集成

Tailscale 是一个基于 WireGuard 的零配置 VPN(虚拟私人网络)。它可以让你从任何地方安全访问 Gateway,无需公网 IP、端口转发或 SSL 证书。

为什么选择 Tailscale?

特性说明
零配置无需手动管理证书或端口转发
端到端加密WireGuard 加密,中间人无法窥探
NAT 穿越自动穿越 NAT,无需公网 IP
跨平台支持 macOS、Windows、Linux、iOS、Android
免费个人用户免费,最多 100 台设备

推荐方案

对于个人和小团队,Tailscale 是最简单、最安全的远程访问方案 — 不需要域名、不需要云服务器、不需要 SSL 证书。

安装 Tailscale

bash
brew install tailscale
bash
curl -fsSL https://tailscale.com/install.sh | sh
bash
# 从 https://tailscale.com/download 下载安装程序
# 或使用 winget
winget install Tailscale.Tailscale

设置步骤

第 1 步:在 Gateway 机器上启动 Tailscale

bash
# 启动 Tailscale 并登录
sudo tailscale up

# 查看分配的 Tailscale IP
tailscale ip -4
# 输出示例:100.100.1.10

第 2 步:配置 Gateway 监听

让 Gateway 监听 Tailscale 网络接口:

bash
# 方案 A:监听所有接口(推荐,Tailscale 本身是安全的)
openclaw config set gateway.host "0.0.0.0"

# 方案 B:仅监听 Tailscale IP
openclaw config set gateway.host "100.100.1.10"

第 3 步:在客户端设备上安装 Tailscale

在你的其他设备(笔记本、手机等)上安装 Tailscale 并用同一账号登录。

bash
sudo tailscale up

第 4 步:连接 Gateway

bash
# 使用 Tailscale IP 连接
openclaw connect --host 100.100.1.10 --port 18789

无需 HTTPS

Tailscale 使用 WireGuard 提供端到端加密,因此不需要额外配置 HTTPS。

ACL 配置

Tailscale 的 ACL(访问控制列表)可以精细控制哪些设备可以访问 Gateway。

Tailscale Admin Console 中配置:

json
{
  "acls": [
    {
      "action": "accept",
      "src": ["group:openclaw-users"],
      "dst": ["tag:gateway:18789"]
    }
  ],
  "tagOwners": {
    "tag:gateway": ["autogroup:admin"]
  },
  "groups": {
    "group:openclaw-users": ["user@example.com"]
  }
}

为 Gateway 机器添加标签:

bash
sudo tailscale up --advertise-tags=tag:gateway

MagicDNS

启用 Tailscale 的 MagicDNS 后,可以使用设备名称代替 IP 地址:

bash
# 使用 MagicDNS 名称连接
openclaw connect --host my-server --port 18789

# 或完整域名
openclaw connect --host my-server.tail12345.ts.net --port 18789

网络拓扑

text
┌──────────────┐                          ┌──────────────┐
│   iPhone     │                          │   MacBook    │
│  Tailscale   │                          │  Tailscale   │
│  100.100.1.2 │                          │  100.100.1.3 │
└──────┬───────┘                          └──────┬───────┘
       │          Tailscale 网络                   │
       │     (WireGuard 加密隧道)                  │
       │                                          │
       └──────────────┬───────────────────────────┘

               ┌──────┴───────┐
               │   Gateway    │
               │  Tailscale   │
               │  100.100.1.1 │
               │  :18789      │
               └──────────────┘

常见问题

Tailscale 断线怎么办?

Tailscale 会自动重连。Gateway 的 WebSocket 也支持自动重连机制。

网速会不会很慢?

Tailscale 会尽可能建立设备间的直连通道(Direct Connection),绝大多数情况下延迟与直连无异。

bash
# 检查连接类型
tailscale status
# "direct" 表示直连,"relay" 表示中继

能否与反向代理同时使用?

可以。你可以同时通过 Tailscale(内部访问)和反向代理(公开访问)两种方式访问 Gateway。

相关文档

基于MIT协议开源 | 内容翻译自 官方文档,同步更新