Ansible インストール

本番サーバーへの 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 連携:ハードニング付きのブート時自動起動

要件

  • OS:Debian 11+ または Ubuntu 20.04+
  • アクセス:root または sudo 権限
  • ネットワーク:パッケージインストール用のインターネット接続
  • Ansible:2.14+(クイックスタートスクリプトにより自動インストール)

インストール内容

Ansible Playbook がインストールおよび設定するもの:

  1. Tailscale(セキュアなリモートアクセス用のメッシュ VPN)
  2. UFW ファイアウォール(SSH + Tailscale ポートのみ許可)
  3. Docker CE + Compose V2(エージェントサンドボックス用)
  4. Node.js 24 + pnpm(ランタイム依存関係。Node 22 LTS、現在 22.16+ も互換性のためサポート)
  5. OpenClaw(ホストベース、コンテナ化されない)
  6. systemd サービス(セキュリティハードニング付き自動起動)

Gateway はコンテナ内ではなくホスト上で直接実行されますが、エージェントサンドボックスは分離のために Docker を使用します。詳細はサンドボックスを参照してください。

インストール後のセットアップ

インストール完了後、openclaw ユーザーに切り替えます:

sudo -i -u openclaw

インストール後スクリプトが以下の手順をガイドします:

  1. オンボーディングウィザード:OpenClaw の設定
  2. プロバイダーログイン:WhatsApp/Telegram/Discord/Signal の接続
  3. Gateway テスト:インストールの検証
  4. Tailscale セットアップ:VPN メッシュへの接続

よく使うコマンド

# サービスステータスの確認
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):VPN メッシュ経由でのみ Gateway にアクセス可能
  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 コレクションのインストール
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

高度な設定

セキュリティアーキテクチャとトラブルシューティングの詳細:

関連情報