托管与部署

Oracle Cloud

在 Oracle Cloud 的 Always Free ARM 层级(最高 4 OCPU、24 GB RAM、200 GB 存储空间)上免费运行持久化 OpenClaw Gateway 网关。

前提条件

设置

  • 创建 OCI 实例

    1. 登录 Oracle Cloud Console
    2. 转到 Compute > Instances > Create Instance
    3. 进行以下配置:
      • 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: 添加你的公钥
    4. 点击 Create,并记下公网 IP 地址。
  • 连接并更新系统

    bash
    ssh ubuntu@YOUR_PUBLIC_IP sudo apt update && sudo apt upgrade -ysudo apt install -y build-essential

    编译某些 ARM 依赖项时需要 build-essential

  • 配置用户和主机名

    bash
    sudo hostnamectl set-hostname openclawsudo passwd ubuntusudo loginctl enable-linger ubuntu

    启用 linger 可让用户服务在注销后继续运行。

  • 安装 Tailscale

    bash
    curl -fsSL https://tailscale.com/install.sh | shsudo tailscale up --ssh --hostname=openclaw

    此后,请通过 Tailscale 连接:ssh ubuntu@openclaw

  • 安装 OpenClaw

    bash
    curl -fsSL https://openclaw.ai/install.sh | bashsource ~/.bashrc

    出现“How do you want to hatch your bot?”提示时,选择 Do this later

  • 配置 Gateway 网关

    将令牌身份验证与 Tailscale Serve 配合使用,以实现安全的远程访问。

    bash
    openclaw config set gateway.bind loopbackopenclaw config set gateway.auth.mode tokenopenclaw doctor --generate-gateway-tokenopenclaw config set gateway.tailscale.mode serveopenclaw config set gateway.trustedProxies '["127.0.0.1"]' systemctl --user restart openclaw-gateway.service

    此处的 gateway.trustedProxies=["127.0.0.1"] 仅用于处理本地 Tailscale Serve 代理的转发 IP/本地客户端。它不是 gateway.auth.mode: "trusted-proxy"。在此设置中,差异查看器路由仍采用失败时关闭的行为:没有代理转发标头的原始 127.0.0.1 查看器请求将返回 Diff not found。对于附件,请使用 mode=file / mode=both;如果需要可共享的查看器链接,请有意启用远程查看器并设置 plugins.entries.diffs.config.viewerBaseUrl(或传递代理 baseUrl)。

  • 锁定 VCN 安全设置

    在网络边缘阻止除 Tailscale 以外的所有流量:

    1. 在 OCI Console 中转到 Networking > Virtual Cloud Networks
    2. 点击你的 VCN,然后点击 Security Lists > Default Security List
    3. Remove0.0.0.0/0 UDP 41641(Tailscale)之外的所有入站规则。
    4. 保留默认出站规则(允许所有出站流量)。

    这会在网络边缘阻止端口 22 上的 SSH、HTTP、HTTPS 及其他所有流量。从此刻起,你只能通过 Tailscale 连接。

  • 验证

    bash
    openclaw --versionsystemctl --user status openclaw-gateway.servicetailscale serve statuscurl http://localhost:18789

    从 tailnet 中的任意设备访问 Control UI:

    Code
    https://openclaw.<tailnet-name>.ts.net/

    <tailnet-name> 替换为你的 tailnet 名称(可在 tailscale status 中查看)。

  • 验证安全状况

    锁定 VCN(仅开放 UDP 41641)并将 Gateway 网关绑定到 loopback 后,公共流量会在网络边缘被阻止,管理访问也将仅限 tailnet。这样便无需执行若干传统的 VPS 加固步骤:

    传统步骤 是否需要? 原因
    UFW 防火墙 VCN 会在流量到达实例之前将其阻止。
    fail2ban 端口 22 已在 VCN 处被阻止,因此不存在暴力破解攻击面。
    sshd 加固 Tailscale SSH 不使用 sshd。
    禁用 root 登录 Tailscale 根据 tailnet 身份进行身份验证,而不是使用系统用户。
    仅使用 SSH 密钥验证 同理——tailnet 身份取代了系统 SSH 密钥。
    IPv6 加固 通常不需要 取决于 VCN/子网设置;请验证实际分配和暴露的内容。

    仍建议执行以下操作:

    • chmod 700 ~/.openclaw,以限制凭据文件权限。
    • openclaw security audit,以执行 OpenClaw 专项安全状况检查。
    • 定期运行 sudo apt update && sudo apt upgrade,以安装操作系统补丁。
    • 定期在 Tailscale admin console 中检查设备。

    快速验证命令:

    bash
    # 确认没有公共端口正在监听sudo ss -tlnp | grep -v '127.0.0.1\|::1' # 验证 Tailscale SSH 已启用tailscale status | grep -q 'offers: ssh' && echo "Tailscale SSH 已启用" # 可选:确认 Tailscale SSH 正常工作后,完全禁用 sshdsudo systemctl disable --now ssh

    ARM 说明

    Always Free 层级使用 ARM(aarch64)。大多数 OpenClaw 功能均可正常工作;少数原生二进制文件需要 ARM 构建:

    • Node.js、Telegram、WhatsApp(Baileys):纯 JavaScript,没有问题。
    • 大多数包含原生代码的 npm 软件包:提供预构建的 linux-arm64 工件。
    • 可选 CLI 辅助工具(例如 Skills 提供的 Go/Rust 二进制文件):安装前请检查是否有 aarch64 / linux-arm64 版本。

    使用 uname -m 验证架构(应输出 aarch64)。对于没有 ARM 构建的二进制文件,请从源代码安装或跳过。

    持久化和备份

    OpenClaw 状态位于:

    • ~/.openclaw/ —— openclaw.json、每个智能体的 auth-profiles.json、渠道/提供商状态和会话数据。
    • ~/.openclaw/workspace/ —— 智能体工作区(SOUL.md、记忆和工件)。

    这些内容会在重启后保留。若要创建可移植快照,请运行:

    bash
    openclaw backup create

    备用方案:SSH 隧道

    如果 Tailscale Serve 无法正常工作,请从本地计算机建立 SSH 隧道:

    bash
    ssh -L 18789:127.0.0.1:18789 ubuntu@openclaw

    然后打开 http://localhost:18789

    故障排查

    实例创建失败(“Out of capacity”)——免费层级 ARM 实例非常抢手。请尝试其他可用性域,或在非高峰时段重试。

    Tailscale 无法连接——运行 sudo tailscale up --ssh --hostname=openclaw --reset 重新进行身份验证。

    Gateway 网关无法启动——运行 openclaw doctor --non-interactive,并使用 journalctl --user -u openclaw-gateway.service -n 50 检查日志。

    ARM 二进制文件问题——大多数 npm 软件包均可在 ARM64 上运行。对于原生二进制文件,请查找 linux-arm64aarch64 版本。使用 uname -m 验证架构。

    后续步骤

    • 渠道 —— 连接 Telegram、WhatsApp、Discord 等
    • Gateway 配置 —— 所有配置选项
    • 更新 —— 使 OpenClaw 保持最新状态

    相关内容

    Was this useful?
    On this page

    On this page