一、什么是 OpenClaw?
OpenClaw 是一个轻量级的去中心化节点管理工具,专注于简化多节点间的安全通信与代理转发。它采用端到端加密的配对机制,无需中心化注册服务或数据库,即可完成节点间的身份认证与互信建立。
相较于传统的代理管理方案,OpenClaw 的核心优势在于:
- 零配置配对:通过一次性密钥交换完成节点身份绑定
- 去中心化架构:不依赖任何中心化控制平面,节点间直连
- 双向认证:基于 Noise 协议的加密握手,抵御中间人攻击
- 热更新:节点配置变更无需重启,自动同步
二、前置要求
在开始部署前,请确保满足以下条件:
- 一台公网可访问的 Linux 服务器(推荐 Ubuntu 22.04+ 或 Debian 12+)
- 用于本地客户端的设备(macOS / Linux / Windows)
- 一个拓扑域名或至少一个节点的固定公网 IP
- 防火墙放行指定端口(默认 TCP/8443)
推荐配置:2C4G 云服务器 + 50GB SSD,月流量 1TB 起步。SSD 的随机读写性能对 Noise 握手阶段影响显著。
三、节点部署
3.1 服务端安装
通过一键脚本安装 OpenClaw 服务端组件:
# 下载并运行安装脚本
curl -fsSL https://get.openclaw.dev/install.sh | bash
# 验证安装版本
openclaw version
# 输出示例:OpenClaw v0.7.2 (linux/amd64)
安装完成后,初始化节点配置:
# 初始化节点(首次运行)
openclaw init --node-name kr-relay-01
# 生成的配置文件位于 ~/.openclaw/config.yaml
# 包含节点身份密钥对、监听地址等核心参数
3.2 配置文件详解
编辑 ~/.openclaw/config.yaml,核心参数说明:
node:
name: kr-relay-01
listen: 0.0.0.0:8443
public_addr: "your-server-ip:8443"
network:
heartbeat_interval: 30s
reconnect_backoff:
initial: 1s
max: 60s
multiplier: 1.5
security:
key_type: ed25519
noise_protocol: "Noise_XX_25519_AESGCM_SHA256"
| 参数 | 说明 | 默认值 |
|---|---|---|
node.listen | 监听地址和端口 | 0.0.0.0:8443 |
node.public_addr | 公网可达地址(用于配对公告) | 自动检测 |
network.heartbeat_interval | 心跳间隔 | 30s |
security.key_type | 身份密钥算法 | ed25519 |
3.3 注册为系统服务
# 创建 systemd 服务
sudo openclaw service install
# 启动并设置开机自启
sudo systemctl start openclaw
sudo systemctl enable openclaw
# 查看运行状态
sudo systemctl status openclaw
# ● openclaw.service - OpenClaw Relay Node
# Loaded: loaded (/etc/systemd/system/openclaw.service; enabled)
# Active: active (running) since 2026-05-11 08:00:00 UTC
建议同时配置防火墙规则:
sudo ufw allow 8443/tcp。如果使用云服务商的安全组,记得在控制台放行对应端口。
四、节点配对
4.1 服务端生成配对信息
在已部署的服务端节点上,生成配对二维码或文本:
# 生成配对令牌(有效期 30 分钟)
openclaw pair generate --ttl 30m
# 输出格式:
# ┌──────────────────────────────────────┐
# │ Pairing Token │
# │ openclaw://pair?node=kr-relay-01 │
# │ &key=e8f2a1c3b5d7... │
# │ &addr=203.0.113.10:8443 │
# │ │
# │ Token expires at: 2026-05-11T08:30Z │
# └──────────────────────────────────────┘
4.2 客户端发起配对
在本地客户端设备上执行配对:
# 使用配对令牌连接到服务端
openclaw pair connect \
--token "openclaw://pair?node=kr-relay-01&key=e8f2a1c3b5d7...&addr=203.0.113.10:8443"
# 配对成功输出:
# ✓ Pairing established with kr-relay-01
# ✓ Identity fingerprint: 3a1b:fc8e:9d42:...:7f3c
# 查看已配对节点列表
openclaw node list
# ┌──────────────┬─────────────────┬──────────┬──────────┐
# │ Name │ Address │ Status │ Latency │
# ├──────────────┼─────────────────┼──────────┼──────────┤
# │ kr-relay-01 │ 203.0.113.10 │ connected│ 42ms │
# └──────────────┴─────────────────┴──────────┴──────────┘
安全提示:配对令牌是一次性的,使用后即失效。若需重新配对,请在服务端重新生成。建议通过带外渠道(如加密即时通讯)传输配对信息。
4.3 双向配对(点对点)
如果两个节点都需要互相主动发起连接,可在两端分别执行配对:
# 节点 A 上生成,节点 B 上连接
# 节点 B 上生成,节点 A 上连接
openclaw pair mutual --node-a kr-relay-01 --node-b jp-relay-01
五、连接验证
配对完成后,验证端到端通信是否正常:
# 测试延迟
openclaw ping kr-relay-01
# pong from kr-relay-01: rtt=42.3ms
# 检查传输速率
openclaw bench kr-relay-01 --size 100MB
# Throughput: 245.6 Mbps
# 查看连接状态
openclaw status
# Status: ✅ Connected
# Peers: 1 active
# Uptime: 3d 14h 22m
# Rx: 2.4 GB
# Tx: 1.8 GB
六、常见问题
连接超时
确认服务端 8443 端口在公网可达:
# 从外部测试端口可达性
nc -zv your-server-ip 8443
# Connection to your-server-ip port 8443 [tcp/*] succeeded!
配对令牌过期
令牌有效期默认为 30 分钟,过期后需重新生成。可通过 --ttl 参数调整:
openclaw pair generate --ttl 2h # 延长至 2 小时
密钥指纹不匹配
配对时显示的指纹应与服务端节点公钥指纹一致。验证方法:
# 服务端查看自身指纹
openclaw node fingerprint
# 3a1b:fc8e:9d42:...:7f3c
重连失败
检查服务端日志定位原因:
journalctl -u openclaw -n 50 --no-pager