← 返回开发日记

2026年 OpenClaw 在加拿大远程 Mac M4 上如何完成 iOS/Android 节点配对?gateway.mode remote、wss/Tailscale 安全入口、跨洋 SSH 隧道与 openclaw doctor 工单排障(步骤清单+对照表+FAQ)

OpenClaw · 2026.05.19 · 约 10 分钟阅读

智能手机与桌面协作,象征 iOS/Android 节点与加拿大远程 Gateway 配对

当 OpenClaw Gateway 只跑在加拿大远程 Mac M4,而你的 iPhone、iPad 或 Android 需要作为 Node(role: node 接入时,真正要回答的问题不是「手机能不能装 App」,而是:手机上的 WebSocket 能否以合规的 wss:// 终点连到那台始终在线的 Gateway,并在运维侧用 gateway.mode: "remote" 把 CLI、排障与审批动作对齐到同一真相源。本文专注 iOS/Android 节点配对 Runbook;若你关心 macOS 菜单栏客户端如何打通 Dashboard 与 18789,请阅读 2026年 OpenClaw 网关只跑在加拿大远程 Mac M4:macOS 客户端 Remote over SSH/Tailnet、Dashboard 与 18789 怎么打通?——两篇互补,不可互换。网关尚未安装时,可先对照 2026 OpenClaw远程Mac安装路径实战:install.sh、Homebrew与npm对照教程,加拿大M4节点Gateway 18789资源规划与常见报错排障 完成加拿大节点上的 CLI 与守护进程落地。

架构定位:一台加拿大 Gateway,多部手机 Node

OpenClaw 的远程模型里,每台主机只应有一个 Gateway 进程(除非你刻意跑多 profile)。Gateway 持有会话、Channels、鉴权与 agent 状态;iOS/Android 应用不托管 Gateway,只作为外围 Node 通过 Gateway WebSocket 收发 node.* RPC。加拿大 M4 适合当「永远在线」的 Gateway 宿主:笔记本休眠不会拖垮 Telegram/Slack 通道,手机只负责相机、传感器或现场操作类能力。

跨洋团队常见误区是把「亚太同事的笔记本」也装成 Gateway,导致双真相源、token 分裂与配对码过期。正确姿势是:加东/加西 M4 单点 Gateway + 全员 Node/CLI 指向 remote;亚太运维通过 SSH 或 Tailnet 管理该机,而不是在本地再起第二个 Gateway。

G
加拿大 M4 唯一 Gateway
N
iOS/Android 仅作 Node
wss
跨网配对必须加密 WS

gateway.mode remote:CLI 与手机共用同一远程终点

网关机本机上,Gateway 通常监听 127.0.0.1:18789(默认端口,团队文档请统一,避免 18879 笔误)。在亚太运维笔记本上,应把 OpenClaw CLI 设为 gateway.mode: "remote",让 openclaw healthopenclaw devices approve 等命令穿过 SSH 隧道或 Tailnet 命中加拿大那台机器,而不是误连本机空端口。

官方约定:当 Gateway 仅 loopback 暴露时,remote URL 保持 ws://127.0.0.1:18789先建立 SSH 本地转发再执行 CLI;若 Gateway 已在受信 LAN/Tailnet 上可达,可改用 transport: "direct" 指向私有 ws://wss://。注意 --url 覆盖时不会隐式继承 config 里的 token,必须显式传 --token--password

运维笔记本:loopback + SSH 隧道场景(节选)
{
  gateway: {
    mode: "remote",
    remote: {
      url: "ws://127.0.0.1:18789",
      token: "<gateway-token>",
      sshTarget: "ca-m4-gateway",
    },
  },
}
Tailnet 直连场景(节选)
{
  gateway: {
    mode: "remote",
    remote: {
      transport: "direct",
      url: "wss://ca-m4.your-tailnet.ts.net",
      token: "<gateway-token>",
    },
  },
}

配对 Runbook:从 loopback 绿灯到扫码批准

下列顺序面向「Gateway 已在加拿大 M4 由 launchd 拉起」的前提;任一步失败都不要先让手机扫公网明文 ws://

步骤 1:网关机 loopback 验收

SSH 登录加拿大 M4,确认进程监听与 health:

网关机本机
curl -fsS "http://127.0.0.1:18789/health" && echo OK
lsof -nP -iTCP:18789 -sTCP:LISTEN

步骤 2:为手机准备安全 WebSocket 入口

2026 年起,iOS/Android 在跨网远程配对时对明文 ws:// 会 fail-closed;须在 Tailscale Serve/Funnel 或反向代理上提供真实 TLS 的 wss://<magicdns>,或让手机本身处于同一 Tailnet 且终点满足文档允许的主机类(如 .ts.net)。局域网调试仍可用 ws://,但不适用于亚太手机直连加拿大公网 IP。

步骤 3:生成配对 QR / setup code

在网关机或已隧道化的运维机上执行:

生成远程配对码(网关机或隧道后)
openclaw qr
openclaw qr --remote

手机 OpenClaw App 扫码后,设备会进入待批准队列;在网关机执行 openclaw devices list 核对指纹,再 openclaw devices approve <device-id>。跨洋协作时,把 approve 动作与工单号绑定,避免深夜误批陌生设备。

步骤 4:Node 能力抽测

批准后,从 Gateway 侧触发一条最小 node.* 调用(或经 Channels 走一条需要 Node 的工具链),确认 WebSocket 长连在太平洋 RTT 下不频繁断线。若仅延迟高但不断连,优先查 Tailscale 路径与 MTU,而非重装 App。

wss 与 Tailscale Serve:手机侧安全入口对照

手机没有 SSH 隧道时,Tailscale Serve 把 loopback Gateway 以 HTTPS/WSS 暴露到 MagicDNS 是最省心的组合:Gateway 仍 bind: loopback,公网不直接裸露 18789。若企业策略禁止 Funnel,可仅在 tailnet 内分发 wss:// 主机名,并要求手机登录同一 tailnet。

入口类型 手机可用协议 典型场景 风险点
局域网 ws://192.168.x.x:18789 明文 ws(仅私网) 办公室 Wi‑Fi 联调 不能用于跨洋公网
Tailscale Serve wss://*.ts.net wss + 身份头(可 tokenless) 亚太手机 + 加拿大 Gateway 需统一 ACL;主机须可信
自签/私有 CA 反代 wss wss + token 必须走企业证书链 iOS 需指纹 pin 或受信 CA
公网 IP 直连 ws:// 远程配对拒绝 应 fail-closed,勿强行暴露
与 Dashboard 文的边界
控制 UI / Dashboard 的浏览器访问路径(SSH -L、Tailnet 书签)在 网关 SSH/Tailnet 教程 中展开;本篇只解决手机 Node 的 wss 配对与 devices approve,避免两文混用同一套「先开 Dashboard」验收顺序。

跨洋 SSH 隧道:亚太运维批准 Node 的通用兜底

当手机暂时无法加入 Tailnet(例如外包机、测试机),仍可由亚太运维笔记本建立 SSH 隧道,在本地 loopback 上完成 openclaw qr 展示与 devices approve,手机则扫描内含 wss:// 或 tailnet 地址的码(由你在 Serve 侧预生成)。隧道本身不替代手机需要的加密终点,但能保证「批准动作」发生在隧道建立之后,避免误连。

亚太笔记本 → 加拿大 M4
ssh -N -L 18789:127.0.0.1:18789 user@ca-m4-host
# 另开终端,确认 remote 配置指向 ws://127.0.0.1:18789
openclaw health --token "<gateway-token>"
openclaw devices approve <pending-id>

需要 7×24 隧道时,可在运维 Mac 上用 LaunchAgent 托管 ssh -N remote-gateway(与官方 remote 文档一致),并把 gateway.remote.token 写入 config 而非 shell profile。加拿大网关机侧仍只监听 loopback,不把 SSH 与 Gateway 混绑到同一端口。

角色 推荐路径 配对相关命令 失败时先看
加拿大 M4(Gateway) loopback + launchd openclaw qrdevices list lsof -i :18789、Gateway 日志
亚太运维 Mac SSH -L + remote mode devices approvedoctor 隧道是否存活、token 是否显式传递
iOS/Android wss:// tailnet 或 Serve App 扫码、Node 在线状态 是否误用公网 ws、证书是否受信

openclaw doctor 工单排障:从症状到闭环

openclaw doctor 当作跨洋工单里的单一快照命令:在「网关机 SSH 会话」与「隧道化 remote CLI」各跑一次,对比差异。doctor 全绿但手机仍 pending,多半是未 approve 或手机连错 URL;doctor 报 auth 失败,则查 token 面是否混用 local/remote fallback。

工单字段建议

每条配对故障工单至少附:UTC 时间戳、openclaw --version、Gateway health curl 输出、openclaw devices list 脱敏截图、手机端错误码(是否提示 require secure endpoint)、当前使用的是 Serve / 直连 / 仅 SSH。亚太 on-call 不必 VNC 进桌面,除非涉及 macOS TCC 与相机权限。

决策树(简版)

A. 手机报「需要安全端点」 → 为 Gateway 配置 wss://(Tailscale Serve 优先),禁止公网明文 ws。B. 待批准列表为空但手机转圈 → 核对 QR 是否过期、是否扫到旧环境。C. CLI 报 connection refused → 先验加拿大机 loopback,再验 SSH 隧道 lsof -i :18789 在笔记本上是否 LISTEN。D. 批准后立刻掉线 → 查 tailnet ACL、手机省电断网、Gateway OOM;滚动重启前冻结版本号。

工单附件命令包(复制即用)
openclaw doctor
openclaw gateway status
openclaw devices list
curl -fsS "http://127.0.0.1:18789/health" || true

FAQ

iOS 和 Android 能当 Gateway 吗?

不能。Node 应用只连接既有 Gateway;加拿大 M4 应作为唯一 Gateway 宿主,除非你刻意隔离多 profile。

为什么远程配对必须用 wss?

官方对跨网移动配对 fail-closed 明文 ws,防止凭证与设备指纹在公网暴露;LAN、.local、模拟器特例见平台文档。

gateway.mode remote 会影响网关机本地模式吗?

remote 是客户端配置;网关机本身仍以 local Gateway 运行。不要在 M4 上把 mode 设成 remote 指回自己。

只用 SSH 隧道、不用 Tailscale,手机怎么连?

手机仍需可达的 wss:// 终点(通常靠 Tailscale Serve 或企业反代)。SSH 隧道主要服务运维 CLI 与 approve,不替代手机 TLS 入口。

openclaw qr 和 openclaw qr --remote 区别?

--remote 生成面向远程 Gateway 的 setup 信息;在已隧道化或 tailnet 可达的运维机上使用,避免码内 host 指向笔记本 loopback。

多台手机 Node 会抢 Gateway 吗?

不会「抢进程」,但会共享 Gateway 会话与配额;生产上按设备打标签,审批记录进工单。

配对成功但 node 工具超时?

先区分 WebSocket 活着与 RPC 慢:太平洋 RTT 高不等于失败。查 Gateway CPU、磁盘与 channel 队列,而非反复删装手机 App。

doctor 在 SSH 里绿、手机仍失败?

典型是手机 URL 与 doctor 检查的不是同一路径(例如 doctor 走隧道 wss 未配、手机扫了过期 QR)。对齐「手机连接的 wss 主机名」与 Serve 配置。

在云端 Mac mini 上,这一切更顺畅

把 Gateway 固定在加拿大远程 Mac mini M4,手机 Node 通过 Tailscale wss:// 接入,等于把「永远在线」与「低功耗静音」叠在一起:Apple Silicon 适合 7×24 监听 18789,launchd 冷启动可预期;原生 macOS 上 openclaw doctor、SSH 与 Tailscale 工具链成熟;Gatekeeper 与 FileVault 有利于托管 gateway token。团队不再依赖个人笔记本当生产 Gateway,配对与审批边界更清晰。

若你正为 iOS/Android Node 规划加拿大单点 Gateway, Hashvps 云端 Mac mini M4 是性价比较高的起点—— 立即了解套餐方案 ,让 wss 入口、SSH 隧道与 Node 配对一次对齐。

Hashvps · Mac 云服务

加拿大 M4 上单点 Gateway:iOS/Android Node 安全配对

Dedicated 算力与可预期 tailnet 画像,支撑 wss 入口、devices approve 与跨洋 doctor 工单。前往首页查看套餐与定价。

前往首页
限时优惠