返回顶部
h

hybrid-gateway混合网关

Set up and troubleshoot a hybrid OpenClaw architecture where the gateway runs on a cloud VPS and a local machine (Mac Mini, desktop, Raspberry Pi, etc.) acts as a node. Covers Tailscale networking, gateway bind modes, node pairing, LaunchAgent/systemd auto-start, exec routing, SSH fallback, and the common gotchas that break this setup. Use when connecting a local node to a remote gateway, debugging node connectivity, or planning a VPS + local hardware split.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.2
安全检测
已通过
92
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

hybrid-gateway

Hybrid Gateway — VPS + 本地节点

在云端VPS上运行你的OpenClaw网关以确保可靠性,并连接本地机器作为节点,以提供VPS所缺乏的硬件能力:住宅IP、GPU/ML推理、浏览器自动化、本地模型、macOS专属工具等。

为何采用这种架构?

VPS(网关)本地节点
始终在线✅ 静态IP,无ISP中断❌ 依赖电源/网络
消息处理
✅ 处理Telegram、Discord等 | ❌ 非其职责 | | 智能体大脑 | ✅ 运行模型、路由工具 | ❌ 仅作为外设 | | GPU / ML | ❌ 大多数VPS没有GPU | ✅ Apple Silicon、NVIDIA等 | | 浏览器自动化 | ⚠️ 仅无头模式,云IP | ✅ 真实浏览器,住宅IP | | 本地模型 | ❌ 无硬件支持 | ✅ Ollama、whisper等 | | macOS工具 | ❌ Linux VPS | ✅ 原生macOS(如使用Mac) |

前提条件

开始之前,你需要:

  1. 1. 在两台机器上都安装OpenClaw — VPS(网关)和本地机器(节点)
  2. 在两台机器上都安装Tailscale — 这是它们相互通信的方式
- 下载Tailscale - 使用同一个Tailscale账号在两台机器上登录 - 验证连接:在任意一台机器上运行 tailscale status 应显示两台设备
  1. 3. 网关已在VPS上运行 — openclaw gateway status 应显示运行中
  2. 已配置网关认证令牌 — 非回环连接必需

如果尚未设置Tailscale,请先完成设置。本指南其余部分假设两台机器位于同一个tailnet中。

步骤 1 — 配置网关绑定模式

默认情况下,网关绑定到 loopback(仅127.0.0.1)。你的节点无法从另一台机器访问该地址。

推荐:lan 绑定(监听所有接口)

bash

在VPS上


openclaw config set gateway.bind lan

这将监听 0.0.0.0 — 同时支持 127.0.0.1(本地智能体)和你的Tailscale IP(远程节点)。

备选:tailnet 绑定(仅Tailscale IP)

bash
openclaw config set gateway.bind tailnet

⚠️ 警告: tailnet 绑定会破坏本地智能体之间的会话。本地工具尝试连接 ws://127.0.0.1:18789,但网关仅监听Tailscale IP。如果你使用多智能体工作流,请改用 lan。

确保已配置认证(任何非回环绑定都需要):

bash

检查当前认证配置


openclaw config get gateway.auth.mode
openclaw config get gateway.auth.token

如果未配置,设置令牌认证

openclaw config set gateway.auth.mode token openclaw config set gateway.auth.token <你的令牌>

添加速率限制(推荐)

openclaw config set gateway.auth.rateLimit.maxAttempts 10 openclaw config set gateway.auth.rateLimit.windowMs 60000 openclaw config set gateway.auth.rateLimit.lockoutMs 300000

配置更改后重启网关:

bash
openclaw gateway restart

验证:

bash
openclaw gateway status

应显示:bind=lan (0.0.0.0) 且 RPC probe: ok

步骤 2 — 在本地机器上启动节点

在本地机器上(Mac Mini、台式机等):

bash

获取VPS的Tailscale IP(在VPS上运行)


tailscale ip -4

示例输出:100.x.y.z

在本地机器上,设置网关令牌

export OPENCLAWGATEWAYTOKEN=<你的令牌>

启动节点(前台模式,用于测试)

openclaw node run --host TAILSCALEIP> --port 18789 --display-name 我的节点

如果连接成功,你会看到节点注册。如果没有,请参阅下面的故障排除部分。

步骤 3 — 批准设备配对

在VPS上:

bash
openclaw devices list

找到来自节点的待处理请求


openclaw devices approve <请求ID>

验证

openclaw nodes status

应显示你的节点已配对并连接

步骤 4 — 安装为服务(自动启动)

你希望节点在重启后保持运行,并能无头运行。

macOS(LaunchAgent)

bash
openclaw node install --host TAILSCALEIP> --port 18789 --display-name 我的节点

这将创建一个在登录时自动启动的LaunchAgent plist文件。

重要: 如果网关需要通过私有网络使用 ws://(而非 wss://),你可能需要在LaunchAgent plist中设置环境变量:

在plist的 EnvironmentVariables 字典中添加以下环境变量:

  • - OPENCLAWGATEWAYTOKEN — 你现有的网关认证令牌(与VPS上 openclaw config get gateway.auth.token 获取的相同)
  • OPENCLAWALLOWINSECUREPRIVATEWS = 1 — 允许通过Tailscale使用 ws://(安全 — 流量在网络层由WireGuard加密)

完整的plist参考请参阅 OpenClaw节点主机文档

仅在OpenClaw默认阻止明文 ws:// 连接到非回环地址时需要此不安全WS覆盖。在Tailscale上这是安全的,因为所有流量都由WireGuard加密。

LaunchAgent plist位置:~/Library/LaunchAgents/ai.openclaw.node.plist

手动加载/卸载:

bash
launchctl load ~/Library/LaunchAgents/ai.openclaw.node.plist
launchctl unload ~/Library/LaunchAgents/ai.openclaw.node.plist

查看日志:~/.openclaw/logs/node.log

Linux(systemd)

bash
openclaw node install --host TAILSCALEIP> --port 18789 --display-name 我的节点

或手动创建systemd用户服务:

在systemd服务的 [Service] 部分添加:

  • - Environment=OPENCLAWGATEWAYTOKEN=<你的网关令牌> — 与VPS网关配置中的令牌相同
  • Environment=OPENCLAWALLOWINSECUREPRIVATEWS=1 — 仅当未通过Tailscale Serve使用 wss:// 时需要

完整的服务文件参考请参阅 OpenClaw节点主机文档

bash
systemctl --user daemon-reload
systemctl --user enable openclaw-node
systemctl --user start openclaw-node

步骤 5 — 配置执行路由

告诉网关将 exec host=node 命令路由到你的节点:

bash

在VPS上


openclaw config set tools.exec.node 我的节点

现在智能体可以在你的本地机器上运行命令:

exec host=node command=uname -a

在节点上设置执行审批

节点强制执行自己的允许列表。添加你想要允许的命令:

bash

在VPS上(远程管理节点审批)


openclaw approvals allowlist add --node 我的节点 /usr/bin/uname
openclaw approvals allowlist add --node 我的节点 /bin/bash
openclaw approvals allowlist add --node 我的节点 /usr/local/bin/node

或直接在节点上编辑 ~/.openclaw/exec-approvals.json。

步骤 6 — 设置SSH备用方案(可选但推荐)

节点协议处理命令执行,但以下情况仍需要SSH:

  • - 文件传输(VPS和节点之间的scp/rsync)
  • 完整Shell环境(需要 .bashrc/.zshrc 的命令 — nvm、homebrew PATH、环境变量)
  • 备用方案(节点断开连接时)

设置SSH密钥访问

bash
在VPS和节点之间设置基于SSH密钥的访问:

  1. 1. 在VPS上生成ed25519密钥对
  2. 将公钥复制到节点的 authorized_keys
  3. 创建SSH配置别名(例如 Host my-node),指向节点的Tailscale IP
  4. 使用 ssh my-node 测试,确认无需密码即可访问

详细步骤请参阅 GitHub SSH密钥指南 — 同样的流程适用于任何SSH主机。

何时使用哪种

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 hybrid-gateway-1775874729 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 hybrid-gateway-1775874729 技能

通过命令行安装

skillhub install hybrid-gateway-1775874729

下载

⬇ 下载 hybrid-gateway v1.0.2(免费)

文件大小: 6.54 KB | 发布时间: 2026-4-12 10:14

v1.0.2 最新 2026-4-12 10:14
Remove inline credential placeholders and raw SSH commands to clear VirusTotal heuristics

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部