Containers

Ansible

將 OpenClaw 部署至正式環境伺服器,使用採安全優先架構的自動化安裝程式 openclaw-ansible

先決條件

需求 詳細資訊
作業系統 Debian 11+ 或 Ubuntu 20.04+
存取權限 Root 或 sudo 權限
網路 用於安裝套件的網際網路連線
Ansible 2.14+(由快速入門指令碼自動安裝)

你會獲得什麼

  • 防火牆優先的安全性:UFW + Docker 隔離(僅可連線至 SSH + Tailscale)
  • 使用 Tailscale VPN 進行遠端存取,無須將服務公開
  • 使用 Docker 建立隔離的沙箱容器,僅繫結至 localhost
  • Systemd 整合與安全強化,開機時自動啟動
  • 單一命令完成設定

快速入門

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

安裝內容

  1. Tailscale(用於安全遠端存取的網狀 VPN)
  2. UFW 防火牆(僅開放 SSH + Tailscale 連接埠)
  3. Docker CE + Compose V2(預設的代理程式沙箱後端)
  4. Node.js 和 pnpm(OpenClaw 需要 Node 22.22.3+、24.15+ 或 25.9+;建議使用 Node 24)
  5. 以主機模式安裝、未容器化的 OpenClaw
  6. 具備安全強化的 systemd 服務

安裝後設定

  • 切換至 openclaw 使用者

    bash
    sudo -i -u openclaw
  • 執行新手引導精靈

    安裝後指令碼會引導你設定 OpenClaw。

  • 連線訊息頻道

    登入 WhatsApp、Telegram、Discord 或 Signal:

    bash
    openclaw channels login --channel <name>
  • 驗證安裝

    bash
    sudo systemctl status openclawsudo journalctl -u openclaw -f
  • 連線至 Tailscale

    加入你的 VPN 網狀網路,以進行安全的遠端存取。

  • 快速命令

    bash
    # 檢查服務狀態sudo systemctl status openclaw # 檢視即時日誌sudo journalctl -u openclaw -f # 重新啟動閘道sudo systemctl restart openclaw # 頻道登入(以 openclaw 使用者身分執行)sudo -i -u openclawopenclaw channels login --channel <name>

    安全架構

    四層防禦模型:

    1. 防火牆(UFW):僅對外公開 SSH (22) 和 Tailscale (41641/udp)
    2. VPN(Tailscale):僅能透過 VPN 網狀網路連線至閘道
    3. Docker 隔離:DOCKER-USER iptables 鏈可防止連接埠對外公開
    4. Systemd 安全強化:NoNewPrivilegesPrivateTmp、非特權使用者

    驗證你的外部攻擊面:

    bash
    nmap -p- YOUR_SERVER_IP

    應只有連接埠 22 (SSH) 開放。閘道和 Docker 會維持鎖定狀態。

    Docker 用於代理程式沙箱(隔離的工具執行環境),而非用於執行閘道。沙箱設定請參閱多代理程式沙箱與工具

    手動安裝

  • 安裝先決條件

    bash
    sudo apt update && sudo apt install -y ansible git
  • 複製儲存庫

    bash
    git clone https://github.com/openclaw/openclaw-ansible.gitcd openclaw-ansible
  • 安裝 Ansible 集合

    bash
    ansible-galaxy collection install -r requirements.yml
  • 執行 playbook

    bash
    ./run-playbook.sh

    或直接執行 playbook,然後手動執行設定指令碼:

    bash
    ansible-playbook playbook.yml --ask-become-pass# 接著執行:/tmp/openclaw-setup.sh
  • 更新

    Ansible 安裝程式會將 OpenClaw 設定為手動更新;標準流程請參閱更新

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

    bash
    cd openclaw-ansible./run-playbook.sh

    此操作具備冪等性,可安全地多次執行。

    疑難排解

    防火牆封鎖我的連線
    • 請先透過 Tailscale VPN 連線;依設計,閘道只能透過此方式存取。
    • SSH(連接埠 22)一律允許連線。
    服務無法啟動
    bash
    # 檢查日誌sudo journalctl -u openclaw -n 100 # 驗證權限sudo ls -la /opt/openclaw # 測試手動啟動sudo -i -u openclawcd ~/openclawopenclaw gateway run
    Docker 沙箱問題
    bash
    # 驗證 Docker 是否正在執行sudo systemctl status docker # 檢查沙箱映像檔sudo docker images | grep openclaw-sandbox # 若缺少沙箱映像檔,請建置該映像檔(需要原始碼簽出)cd /opt/openclaw/openclawsudo -u openclaw ./scripts/sandbox-setup.sh# 若使用 npm 安裝且沒有原始碼簽出,請參閱# https://docs.openclaw.ai/gateway/sandboxing#images-and-setup
    頻道登入失敗

    請確認你是以 openclaw 使用者身分執行:

    bash
    sudo -i -u openclawopenclaw channels login --channel <name>

    進階設定

    如需詳細的安全架構與疑難排解資訊,請參閱 openclaw-ansible 儲存庫:

    相關內容

    Was this useful?
    On this page

    On this page