本網站為獨立社群專案,與 OpenClaw 官方無任何關聯。內容僅供參考。 了解更多

翻譯文件

本頁為社群翻譯版本,可能與官方最新內容有出入。 查看官方英文原文 →

Ansible 安裝

使用 Ansible 自動化部署 OpenClaw 至生產伺服器的指南,採用安全優先的架構設計。

部署 OpenClaw 至生產伺服器的建議方式是透過 openclaw-ansible — 一個採用安全優先架構的自動化安裝程式。

快速開始

一鍵安裝:

curl -fsSL https://raw.githubusercontent.com/openclaw/openclaw-ansible/main/install.sh | bash

完整指南請參閱 github.com/openclaw/openclaw-ansible

openclaw-ansible 儲存庫是 Ansible 部署的權威來源。本頁面僅提供快速概覽。

您會獲得什麼

  • 防火牆優先安全:UFW + Docker 隔離(僅 SSH + Tailscale 可存取)
  • Tailscale VPN:安全的遠端存取,無需公開曝露服務
  • Docker:隔離的沙箱容器,僅 localhost 綁定
  • 縱深防禦:4 層安全架構
  • 一鍵設定:數分鐘內完成部署
  • Systemd 整合:開機自動啟動並強化安全

需求

  • 作業系統:Debian 11+ 或 Ubuntu 20.04+
  • 權限:Root 或 sudo 權限
  • 網路:需要網路連線以安裝套件
  • Ansible:2.14+(快速開始腳本會自動安裝)

安裝內容

Ansible playbook 會安裝並設定:

  1. Tailscale(用於安全遠端存取的 mesh VPN)
  2. UFW 防火牆(僅開放 SSH + Tailscale 連接埠)
  3. Docker CE + Compose V2(用於代理沙箱)
  4. Node.js 22.x + pnpm(執行環境相依套件)
  5. OpenClaw(主機安裝,非容器化)
  6. Systemd 服務(自動啟動並強化安全)

注意:Gateway 直接在主機上執行(不在 Docker 中),但代理沙箱使用 Docker 進行隔離。詳見沙箱機制

安裝後設定

安裝完成後,切換至 openclaw 使用者:

sudo -i -u openclaw

安裝後腳本會引導您完成:

  1. 初始設定精靈:設定 OpenClaw 選項
  2. 供應商登入:連接 WhatsApp/Telegram/Discord/Signal
  3. Gateway 測試:驗證安裝
  4. Tailscale 設定:連接至您的 VPN mesh

常用指令

# 檢查服務狀態
sudo systemctl status openclaw

# 檢視即時日誌
sudo journalctl -u openclaw -f

# 重新啟動 Gateway
sudo systemctl restart openclaw

# 供應商登入(以 openclaw 使用者執行)
sudo -i -u openclaw
openclaw channels login

安全架構

4 層防禦

  1. 防火牆(UFW):僅公開 SSH(22)+ Tailscale(41641/udp)
  2. VPN(Tailscale):Gateway 僅可透過 VPN mesh 存取
  3. Docker 隔離:DOCKER-USER iptables 鏈防止外部連接埠曝露
  4. Systemd 強化:NoNewPrivileges、PrivateTmp、非特權使用者

驗證

測試外部攻擊面:

nmap -p- YOUR_SERVER_IP

應僅顯示連接埠 22(SSH)開放。所有其他服務(Gateway、Docker)皆已鎖定。

Docker 可用性

Docker 安裝用於代理沙箱(隔離的工具執行),而非用於執行 Gateway。Gateway 僅綁定至 localhost,透過 Tailscale VPN 存取。

詳見多代理沙箱與工具

手動安裝

若您偏好手動控制自動化流程:

# 1. 安裝先決條件
sudo apt update && sudo apt install -y ansible git

# 2. 複製儲存庫
git clone https://github.com/openclaw/openclaw-ansible.git
cd openclaw-ansible

# 3. 安裝 Ansible collections
ansible-galaxy collection install -r requirements.yml

# 4. 執行 playbook
./run-playbook.sh

# 或直接執行(之後需手動執行 /tmp/openclaw-setup.sh)
# ansible-playbook playbook.yml --ask-become-pass

更新 OpenClaw

Ansible 安裝程式設定 OpenClaw 為手動更新。請參閱更新了解標準更新流程。

若要重新執行 Ansible playbook(例如變更設定):

cd openclaw-ansible
./run-playbook.sh

注意:這是冪等操作,可安全地多次執行。

疑難排解

防火牆阻擋連線

若您被鎖在外面:

  • 確保您可以先透過 Tailscale VPN 存取
  • SSH 存取(連接埠 22)始終允許
  • Gateway 設計上可透過 Tailscale 存取

服務無法啟動

# 檢查日誌
sudo journalctl -u openclaw -n 100

# 驗證權限
sudo ls -la /opt/openclaw

# 測試手動啟動
sudo -i -u openclaw
cd ~/openclaw
pnpm start

Docker 沙箱問題

# 驗證 Docker 是否執行中
sudo systemctl status docker

# 檢查沙箱映像檔
sudo docker images | grep openclaw-sandbox

# 若缺少則建置沙箱映像檔
cd /opt/openclaw/openclaw
sudo -u openclaw ./scripts/sandbox-setup.sh

供應商登入失敗

確保您以 openclaw 使用者執行:

sudo -i -u openclaw
openclaw channels login

進階設定

如需詳細的安全架構和疑難排解:

相關資源