Hosting
Oracle Cloud
在 Oracle Cloud 的 Always Free ARM 方案(最多 4 個 OCPU、24 GB RAM、200 GB 儲存空間)上免費執行持續運作的 OpenClaw 閘道。
先決條件
- Oracle Cloud 帳戶(註冊)——如果遇到問題,請參閱社群註冊指南
- Tailscale 帳戶(可在 tailscale.com 免費註冊)
- 一組 SSH 金鑰對
- 約 30 分鐘
設定
建立 OCI 執行個體
- 登入 Oracle Cloud Console。
- 前往 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 位址。
連線並更新系統
ssh ubuntu@YOUR_PUBLIC_IP sudo apt update && sudo apt upgrade -ysudo apt install -y build-essential某些相依套件需要使用 build-essential 才能在 ARM 上編譯。
設定使用者與主機名稱
sudo hostnamectl set-hostname openclawsudo passwd ubuntusudo loginctl enable-linger ubuntu啟用 linger 可讓使用者服務在登出後繼續執行。
安裝 Tailscale
curl -fsSL https://tailscale.com/install.sh | shsudo tailscale up --ssh --hostname=openclaw從現在起,請透過 Tailscale 連線:ssh ubuntu@openclaw。
安裝 OpenClaw
curl -fsSL https://openclaw.ai/install.sh | bashsource ~/.bashrc出現「How do you want to hatch your bot?」提示時,選取 Do this later。
設定閘道
搭配 Tailscale Serve 使用權杖驗證,以提供安全的遠端存取。
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 Proxy 的轉送 IP/本機用戶端處理。它不是 gateway.auth.mode: "trusted-proxy"。在此設定中,差異檢視器路由會維持失敗時關閉的行為:若原始 127.0.0.1 檢視器請求未包含轉送 Proxy 標頭,將傳回 Diff not found。附件請使用 mode=file/mode=both;若需要可分享的檢視器連結,請明確啟用遠端檢視器並設定 plugins.entries.diffs.config.viewerBaseUrl(或傳入 Proxy baseUrl)。
鎖定 VCN 安全性
在網路邊界封鎖除 Tailscale 以外的所有流量:
- 在 OCI Console 中前往 Networking > Virtual Cloud Networks。
- 按一下您的 VCN,然後前往 Security Lists > Default Security List。
- 移除除
0.0.0.0/0 UDP 41641(Tailscale)以外的所有輸入規則。 - 保留預設輸出規則(允許所有輸出流量)。
這會在網路邊界封鎖連接埠 22 上的 SSH、HTTP、HTTPS,以及其他所有流量。從此時起,您只能透過 Tailscale 連線。
驗證
openclaw --versionsystemctl --user status openclaw-gateway.servicetailscale serve statuscurl http://localhost:18789從 tailnet 上的任何裝置存取控制介面:
https://openclaw.<tailnet-name>.ts.net/將 <tailnet-name> 替換為您的 tailnet 名稱(可在 tailscale status 中查看)。
驗證安全態勢
鎖定 VCN(僅開放 UDP 41641)並將閘道繫結至回送介面後,公用流量會在網路邊界遭到封鎖,而管理存取僅限 tailnet。這使您不必執行多項傳統 VPS 強化步驟:
| 傳統步驟 | 是否需要? | 原因 |
|---|---|---|
| UFW 防火牆 | 否 | VCN 會在流量抵達執行個體之前將其封鎖。 |
| fail2ban | 否 | VCN 已封鎖連接埠 22,因此沒有暴力破解的攻擊面。 |
| 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 管理主控台中檢查裝置。
快速驗證命令:
# 確認沒有監聽中的公用連接埠sudo ss -tlnp | grep -v '127.0.0.1\|::1' # 驗證 Tailscale SSH 已啟用tailscale status | grep -q 'offers: ssh' && echo "Tailscale SSH active" # 選用:確認 Tailscale SSH 正常運作後,完全停用 sshdsudo systemctl disable --now sshARM 注意事項
Always Free 方案採用 ARM(aarch64)。大多數 OpenClaw 功能都能正常運作;少數原生二進位檔需要 ARM 組建版本:
- Node.js、Telegram、WhatsApp(Baileys):純 JavaScript,沒有問題。
- 大多數包含原生程式碼的 npm 套件:有預先建置的
linux-arm64成品可用。 - 選用的命令列介面輔助工具(例如 Skills 所提供的 Go/Rust 二進位檔):安裝前請確認是否有
aarch64/linux-arm64發行版本。
使用 uname -m 驗證架構(應輸出 aarch64)。若二進位檔沒有 ARM 組建版本,請從原始碼安裝或略過。
持久性與備份
OpenClaw 狀態儲存在以下位置:
~/.openclaw/——openclaw.json、每個代理程式的auth-profiles.json、頻道/供應商狀態,以及工作階段資料。~/.openclaw/workspace/——代理程式工作區(SOUL.md、記憶、成品)。
這些資料在重新啟動後仍會保留。若要建立可攜式快照:
openclaw backup create備用方案:SSH 通道
如果 Tailscale Serve 無法運作,請從本機電腦使用 SSH 通道:
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 以重新驗證。
閘道無法啟動——執行 openclaw doctor --non-interactive,並使用 journalctl --user -u openclaw-gateway.service -n 50 檢查記錄。
ARM 二進位檔問題——大多數 npm 套件可在 ARM64 上運作。對於原生二進位檔,請尋找 linux-arm64 或 aarch64 發行版本。使用 uname -m 驗證架構。