What: switch to 你/你的 tone; standardize Skills/Gateway网关/local loopback/私信 wording Why: align zh-CN docs with issue 6995 feedback + idiomatic tech style Tests: pnpm docs:build
9.2 KiB
read_when, summary, title, x-i18n
| read_when | summary | title | x-i18n | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
在 Oracle Cloud(Always Free ARM)上运行 OpenClaw | Oracle Cloud |
|
在 Oracle Cloud (OCI) 上运行 OpenClaw
目标
在 Oracle Cloud 的 Always Free ARM 层级上运行持久化的 OpenClaw Gateway网关。
Oracle 的免费层级非常适合运行 OpenClaw(特别是如果你已有 OCI 账户),但也存在一些权衡:
- ARM 架构(大多数东西都能运行,但某些二进制文件可能仅支持 x86)
- 容量和注册流程可能不太稳定
费用对比(2026)
| 提供商 | 方案 | 配置 | 月费用 | 备注 |
|---|---|---|---|---|
| Oracle Cloud | Always Free ARM | 最高 4 OCPU, 24GB RAM | $0 | ARM,容量有限 |
| Hetzner | CX22 | 2 vCPU, 4GB RAM | ~ $4 | 最便宜的付费选项 |
| DigitalOcean | Basic | 1 vCPU, 1GB RAM | $6 | 界面简洁,文档完善 |
| Vultr | Cloud Compute | 1 vCPU, 1GB RAM | $6 | 机房节点多 |
| Linode | Nanode | 1 vCPU, 1GB RAM | $5 | 现为 Akamai 旗下 |
前提条件
- Oracle Cloud 账户(注册)— 如果遇到问题请参阅社区注册指南
- Tailscale 账户(在 tailscale.com 免费注册)
- 约 30 分钟
1) 创建 OCI 实例
- 登录 Oracle Cloud 控制台
- 导航至 Compute → Instances → Create Instance
- 配置:
- Name:
openclaw - Image: Ubuntu 24.04 (aarch64)
- Shape:
VM.Standard.A1.Flex(Ampere ARM) - OCPUs: 2(最高 4)
- Memory: 12 GB(最高 24 GB)
- Boot volume: 50 GB(免费额度最高 200 GB)
- SSH key: 添加你的公钥
- Name:
- 点击 Create
- 记下公共 IP 地址
提示: 如果实例创建失败并提示 "Out of capacity",请尝试其他可用性域或稍后重试。免费层级容量有限。
2) 连接并更新
# 通过公共 IP 连接
ssh ubuntu@YOUR_PUBLIC_IP
# 更新系统
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential
注意: ARM 架构下编译某些依赖需要 build-essential。
3) 配置用户和主机名
# 设置主机名
sudo hostnamectl set-hostname openclaw
# 为 ubuntu 用户设置密码
sudo passwd ubuntu
# 启用 lingering(注销后保持用户服务运行)
sudo loginctl enable-linger ubuntu
4) 安装 Tailscale
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up --ssh --hostname=openclaw
这将启用 Tailscale SSH,让你可以从 tailnet 上的任何设备通过 ssh openclaw 连接,无需公共 IP。
验证:
tailscale status
从现在开始,通过 Tailscale 连接: ssh ubuntu@openclaw(或使用 Tailscale IP)。
5) 安装 OpenClaw
curl -fsSL https://openclaw.ai/install.sh | bash
source ~/.bashrc
当提示 "How do you want to hatch your bot?" 时,选择 "Do this later"。
注意:如果遇到 ARM 原生构建问题,请先安装系统包(例如
sudo apt install -y build-essential),再考虑使用 Homebrew。
6) 配置 Gateway网关(local loopback 绑定 + 令牌认证)并启用 Tailscale Serve
默认使用令牌认证。这种方式可预测,且无需在控制 UI 中设置任何"不安全认证"标志。
# 将 Gateway网关限制在虚拟机本地
openclaw config set gateway.bind loopback
# 为 Gateway网关 + 控制 UI 启用认证
openclaw config set gateway.auth.mode token
openclaw doctor --generate-gateway-token
# 通过 Tailscale Serve 暴露(HTTPS + tailnet 访问)
openclaw config set gateway.tailscale.mode serve
openclaw config set gateway.trustedProxies '["127.0.0.1"]'
systemctl --user restart openclaw-gateway
7) 验证
# 检查版本
openclaw --version
# 检查守护进程状态
systemctl --user status openclaw-gateway
# 检查 Tailscale Serve
tailscale serve status
# 测试本地响应
curl http://localhost:18789
8) 锁定 VCN 安全规则
一切正常运行后,锁定 VCN 以阻止除 Tailscale 外的所有流量。OCI 的虚拟云网络在网络边缘充当防火墙——流量在到达实例之前就被拦截。
- 在 OCI 控制台中进入 Networking → Virtual Cloud Networks
- 点击你的 VCN → Security Lists → Default Security List
- 删除所有入站规则,仅保留:
0.0.0.0/0 UDP 41641(Tailscale)
- 保留默认出站规则(允许所有出站流量)
这将在网络边缘阻止 22 端口 SSH、HTTP、HTTPS 及其他所有流量。从此以后,你只能通过 Tailscale 连接。
访问控制 UI
从 Tailscale 网络上的任意设备访问:
https://openclaw.<tailnet-name>.ts.net/
将 <tailnet-name> 替换为你的 tailnet 名称(可在 tailscale status 中查看)。
无需 SSH 隧道。Tailscale 提供:
- HTTPS 加密(自动证书)
- 通过 Tailscale 身份进行认证
- 从 tailnet 上的任何设备访问(笔记本电脑、手机等)
安全性:VCN + Tailscale(推荐基线)
锁定 VCN(仅开放 UDP 41641)并将 Gateway网关绑定到 local loopback 后,你将获得强大的纵深防御:公共流量在网络边缘被阻止,管理访问通过 tailnet 进行。
这种配置通常不再需要额外的主机防火墙规则来阻止全网 SSH 暴力破解——但你仍应保持操作系统更新、运行 openclaw security audit,并确认没有意外监听公共接口。
已受保护的内容
| 传统步骤 | 是否需要? | 原因 |
|---|---|---|
| UFW 防火墙 | 否 | VCN 在流量到达实例之前就已拦截 |
| fail2ban | 否 | VCN 阻止了 22 端口,不存在暴力破解 |
| sshd 加固 | 否 | Tailscale SSH 不使用 sshd |
| 禁用 root 登录 | 否 | Tailscale 使用 Tailscale 身份认证,而非系统用户 |
| 仅密钥 SSH 认证 | 否 | Tailscale 通过 tailnet 进行认证 |
| IPv6 加固 | 通常不需要 | 取决于你的 VCN/子网设置;请验证实际分配/暴露的内容 |
仍然建议执行
- 凭据权限:
chmod 700 ~/.openclaw - 安全审计:
openclaw security audit - 系统更新: 定期运行
sudo apt update && sudo apt upgrade - 监控 Tailscale: 在 Tailscale 管理控制台 中检查设备
验证安全状态
# 确认没有公共端口在监听
sudo ss -tlnp | grep -v '127.0.0.1\|::1'
# 验证 Tailscale SSH 是否激活
tailscale status | grep -q 'offers: ssh' && echo "Tailscale SSH active"
# 可选:完全禁用 sshd
sudo systemctl disable --now ssh
备选方案:SSH 隧道
如果 Tailscale Serve 无法正常工作,可使用 SSH 隧道:
# 从本地机器(通过 Tailscale)
ssh -L 18789:127.0.0.1:18789 ubuntu@openclaw
然后打开 http://localhost:18789。
故障排除
实例创建失败("Out of capacity")
免费层级 ARM 实例非常热门。请尝试:
- 切换不同的可用性域
- 在非高峰时段重试(清晨)
- 选择配置时使用 "Always Free" 筛选器
Tailscale 无法连接
# 检查状态
sudo tailscale status
# 重新认证
sudo tailscale up --ssh --hostname=openclaw --reset
Gateway网关无法启动
openclaw gateway status
openclaw doctor --non-interactive
journalctl --user -u openclaw-gateway -n 50
无法访问控制 UI
# 验证 Tailscale Serve 是否在运行
tailscale serve status
# 检查 Gateway网关是否在监听
curl http://localhost:18789
# 需要时重启
systemctl --user restart openclaw-gateway
ARM 二进制文件问题
某些工具可能没有 ARM 构建版本。检查:
uname -m # 应显示 aarch64
大多数 npm 包都能正常工作。对于二进制文件,请查找 linux-arm64 或 aarch64 版本。
持久化
所有状态保存在:
~/.openclaw/— 配置、凭据、会话数据~/.openclaw/workspace/— 工作区(SOUL.md、记忆、产物)
定期备份:
tar -czvf openclaw-backup.tar.gz ~/.openclaw ~/.openclaw/workspace
另请参阅
- Gateway网关远程访问 — 其他远程访问模式
- Tailscale 集成 — 完整 Tailscale 文档
- Gateway网关配置 — 所有配置选项
- DigitalOcean 指南 — 付费但注册更简单的选择
- Hetzner 指南 — 基于 Docker 的替代方案