Agent ZeroをVPSで安全にセルフホストする方法
Agent ZeroはWeb UIからコード、ブラウザー、shellを実行できます。port 50001を全公開する危険を避け、Dockerとloopback、SSHトンネルでVPS上のUIを安全に保護する手順を解説します。
Agent Zeroとは何か、危険が潜む場所
Agent Zeroは、Dockerを前提としたオープンソースのエージェントフレームワークです。プライマリエージェントは下位エージェントを起動できます。各エージェントは、それぞれ分離されたDockerコンテナ内で実行され、コードの実行、ブラウザーの操作、シェルコマンドの実行が可能です。全体をWeb UIから制御します。高い能力を備え、実際に楽しく使えます。6ドルのVPSのような小規模なハードウェアでも動作します。フレームワークではなくマルチエージェント構成そのものが必要なら、同じホスト上の2つのClaude Codeセッションが相互に直接メッセージを送信する方法もあります。こちらは実行とセキュリティ確保がはるかに容易です。
危険なのはWeb UIです。Web UIは、コマンドを実行してファイルを書き込むシステムの制御パネルです。そのため、外部公開された認証なしのWeb UIは、そのシステムへのリモート侵入口になります。さらに、ほとんどのセットアップガイドが見落としがちな落とし穴があります。標準のdocker runは、すべてのネットワークインターフェースでport 50001にインターフェースを公開します。公開VPSでは、コンテナの起動直後からインターネット全体から接続可能になるということです。これを修正することが、最後ではなく最初に行うべき作業です。
必要なもの
Docker をインストールした VPS、言語モデルの API key、または接続先として指定できるローカルモデルが必要です。まずは数 GB の RAM があれば十分です。Agent Zero は、Docker が動作する環境であれば、小規模な VPS から GPU サーバーまで実行できます。Docker に慣れていない場合は、Docker の基礎ガイドで、以下のコマンドが前提とする内容を確認できます。
Docker を使用し、loopback にバインドする
公式ドキュメントのクイックスタートは、単一の docker run です。ほかの場所にあるコピー&ペースト用の例と異なる重要な点は、公開するアドレスです。port 50001 で全インターフェースに公開しないでください。loopback に公開します。
docker run -d --name agent-zero \
-p 127.0.0.1:5080:80 \
-v a0_usr:/a0/usr \
agent0ai/agent-zero-p 127.0.0.1:5080:80 は Web UI をサーバーの loopback アドレスだけにバインドするため、インターネットからアクセスできません。SSH トンネル経由で自分のマシンからアクセスします。
ssh -L 5080:127.0.0.1:5080 you@your-vps次に、ローカルで http://127.0.0.1:5080 を開き、UI でモデルプロバイダーを設定します。複数ユーザーで恒久的に運用する場合は、代わりに VPN または認証機能付きのリバースプロキシの背後に配置してください。ただし、UI をそのままインターネットへ公開してはいけません。この習慣は、機密性の高い操作を制御するインターフェースを持つ、サーバー上のほかのツールにも適用する価値があります。self-hosted のオープンな脆弱性スキャナーにも同じ方法でアクセスし、公開 port ではなく、UI へのトンネルを使用してください。
他のガイドが終わる地点と、そこで終えてはいけない理由
Agent Zero のインストール方法を検索すると、ホスティング会社が公開しているものを含め、port 50001 で動作する Web UI を起動したところで終わるガイドが多数見つかります。しかし、リスクが始まるのはまさにそこです。終わりではありません。仕上げに必要なことは2つあります。1つ目は、前述のとおり UI を非公開にすることです。2つ目は、default-deny の firewall をサーバーの前段に配置することです。これにより、想定外の container や将来の設定ミスによって、忘れていた port が公開されるのを防げます。
sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw enable全体像についてはfirewall の基本を確認してください。また、IPv6 の見落としにも注意が必要です。IPv4 のルールを厳格に設定していても、:: 上のサービスには IPv6 経由でアクセスできるためです。
コンテナ分離はエージェントを保護しますが、サーバーは保護しません
Agent Zero の設計は、ある種の分離については適切です。下位エージェントは別々のコンテナで実行されるため、互いに隔離されます。この分離には価値があります。ただし、「サンドボックス化されているので安全だ」と解釈して、それ以上確認しなくなるのは危険です。コンテナ分離が保護するのは、エージェント同士です。インターネットからサーバーを保護することも、公開された Web UI が第三者に制御を渡すことを防ぐこともできません。これらはホスト側で利用者が対処する必要があります。誰も監視していない間にエージェントへどこまでの操作を許可するかを、事前に決めてください。これは Claude Code の権限モード と同じ判断です。常時無人で稼働するサーバーには、目の前にあるラップトップより厳しい設定を適用します。
Secrets、ユーザー、ホスト
Agent Zero の config または環境ファイルには、モデル API key やその他の認証情報を保存してください。これらのファイルは、必要なアカウントだけが読み取れるようにし、shell の履歴やリポジトリには残さないでください。同じ考え方は、ホスト上で Secret を保護する他の要素にも当てはまります。たとえば Vaultwarden のハードニングでは、アプリが適切に実行している暗号化よりも、admin token と backup file の保護が重要です。最小権限のユーザーに従い、root ではなく権限のないユーザーでホストを管理してください。SSH は SSH のハードニングのように、key-only authentication に変更します。そのうえで、以下のチェックリストを確認し、見落としがないようにします。
Agent を比較する場合も、基本的なセキュリティ対策は同じです。OpenClaw のハードニングガイドとOpenHands ガイドでは、control surface を非公開にし、権限のないユーザーで実行し、デフォルトで firewall を有効にし、ホストを自分が作成していないコードを実行する環境として扱います。5 つの Agent を横並びで比較するには、2026 年に最適な self-hosted AI agentsを参照してください。
これらの基礎となる概念については、VPS 上で独自の AI agent を構築するで説明しています。Difyも、比較対象として検討できる self-hostable platform です。
FAQ
Agent Zero をセルフホストしても安全ですか?
Web UI を非公開にし、ホストを適切に強化すれば安全に運用できます。Agent Zero はコード、ブラウザー、シェルを実行します。また、デフォルトでは port 50001 で公開される Web UI から制御します。そのため、危険なのはフレームワーク自体ではなく、インターフェースの公開です。UI を loopback にバインドし、SSH または VPN 経由で接続してください。前段にデフォルト拒否のファイアウォールを置き、権限のないユーザーとして実行してください。
Agent Zero はデフォルトで Web UI をインターネットに公開しますか?
標準の docker run は、すべてのネットワークインターフェースの port 50001 でインターフェースを公開します。パブリック VPS では、コンテナの起動直後からインターネット経由で到達可能になります。公開アドレスを 127.0.0.1 に変更して、UI が loopback だけで待ち受けるようにしてください。その後、SSH トンネルまたは VPN 経由で接続します。
Agent Zero は小規模な VPS で実行できますか?
はい。Agent Zero は Docker が動作する環境で実行できるため、小規模で安価な VPS でも動作します。ただし、負荷の高いタスクや大規模なローカルモデルには、より多くのメモリが必要です。ホスティングされた API ではなくセルフホストモデルを指定する場合は、Agent Zero だけでなくモデルに必要な容量を基準に VPS の構成を決めてください。
Agent Zero は OpenClaw や Hermes とどう違いますか?
機能は重なりますが、目的が異なります。Agent Zero は Docker を前提とし、Web UI から操作するフレームワークです。中核となるエージェントが、分離されたコンテナ内で下位エージェントを起動します。OpenClaw と Hermes は、チャットアプリ経由で利用するパーソナルアシスタントです。いずれもセキュリティ上の基本方針は同じです。制御インターフェースを非公開にし、ホストを適切に強化してください。