$cd ../tutorials/
必須セキュリティ30分の読了時間2026年3月
$ cat vps-security.md

export VPSSecurityGuide

/** 5層のセキュリティ対策を用いて、月額$6でOpenClaw VPSをロックダウンします。 */

vps-security-header.jpg
OpenClaw VPS Security Architecture
⚠️ セキュリティ警告:デフォルトのOpenClaw環境にはセキュリティがありません。ポートは無防備で認証もないため、すでにインターネット上で900以上のインスタンスが公開・暴露されている状況です。本ガイドでご自身のシステムを保護してください。
section_01_problem.md

🚨## 問題の提示:無防備なAIインスタンス

デフォルト設定のままVPS上でOpenClawを展開すると、玄関の鍵を開け放した状態になります。Dockerコンテナは直接インターネットに公開され、ダッシュボードへのアクセスにおいてパスワード認証は要求されず、APIキーはポートスキャンを受けるだけで流出の危機に瀕します。

実際、セキュリティ研究者は完全に無防備で稼働しているOpenClawインスタンスを既に900個以上発見しています。トークン流出、不正利用(AI API料金の多大な負担)、データ漏洩のみならず、さらなる攻撃への踏み台とされるリスクを抱えています。

// デフォルト構成で見られる主な脆弱性:
18789ポートがインターネットに直接露出
ダッシュボードに認証の仕組みがない
APIキーが環境変数で可視化されている
SSHブルートフォース(総当たり攻撃)リスクが存在
セキュリティ更新プログラムへの自動パッチ機能の欠如
section_02_layers.md

## 🛡️ 5層のセキュリティ構造

本ガイドでは、多層防御の概念に基づいた堅牢な環境を構築します。個別のプロセスが多用な攻撃をカバーし合い、結果としてあなたのOpenClawはパブリックなインターネットから「不可視」となります。

第1層:Tailscale
WireGuardによって暗号化されたプライベートネットワークを作成し、認可された端末からしか繋がらない設定にします。
第2層:UFWファイアウォール
インターネットからボットのポートへの通信をブロックし、Tailscale経由の通信のみを許可します。
第3層:トークン認証
アクセス自体に認証トークンを必須とします。ネットワークに侵入された場合に備えた強固な施策です。
第4層:Fail2ban
異常なSSH認証の失敗を検知して違反IPアドレスを自動遮断し、ボット等のパスワードアタックを無効化します。
第5層:自動アップデート
サーバー側で重要なセキュリティアップデートを滞りなく適用します。
section_03_tailscale.sh

## 🔐 第1層:Tailscaleプライベートネットワーク

Tailscaleは無料(100デバイスまで)かつ数分でセットアップできるセキュアなVPNインフラです。完了後、VPSはTailscale端末専用のものとなります。

ステップ 1:VPSへTailscaleを導入

$ curl -fsSL https://tailscale.com/install.sh | sh

ステップ 2:Tailscaleの認証

$ sudo tailscale up

出力されるURLリンクをブラウザで開いて自プロセスを認証してください。

ステップ 3:指定ポートの確認

$ docker ps

表示されるポート番号(通常なら 18789)を記録・確認します。

ステップ 4:Tailscale連携

$ sudo tailscale serve --bg http://localhost:18789

これによってTailscaleの内部ネットワーク経由からのみ安全なHTTPSアクセスが可能になります。

section_04_firewall.sh

## 🧱 第2層:UFWファイアウォール

UFWを用いた分かりやすい構成で外部からの18789ポートへのアクセスをシャットダウンします。

ステップ 6:各種ルールの作成

$ sudo ufw allow OpenSSH
$ sudo ufw allow in on tailscale0
$ sudo ufw deny 18789
$ sudo ufw enable

// ⚠️ 注意:ファイアウォール有効化前には必ず「allow OpenSSH」を実施してください(サーバーから締め出されます!)。

ステップ 7:遮断されたかの確認テスト

http://YOUR_VPS_PUBLIC_IP:18789
❌ Connection refused (expected!)
https://your-vps.tail12345.ts.net
✓ OpenClaw dashboard loads
section_05_token.sh

## 🔑 第3層:トークン認証

Webダッシュボードを開くためのOpenClaw初期トークンを設定します。Tailscale内からでも専用の権限が要求されます。

ステップ 8:Gateway Tokenの取得

$ docker inspect $(docker ps -q) | grep -i OPENCLAW_GATEWAY_TOKEN
"OPENCLAW_GATEWAY_TOKEN=abc123xyz789..."

ステップ 9:ダッシュボードへのアクセス確保

https://your-vps.tail12345.ts.net?token=abc123xyz789

// 💡 ワンポイント:認証用クエリ「?token=xxx」が付与されたURLをブックマークしておきましょう。

section_06_fail2ban.sh

## 🚫 第4層:Fail2ban自動防御

Fail2banを通じて認証に失敗するIPをバンすることで、1秒間に何千ものハッキングを試みる攻撃からVPSを守ります。

ステップ 10:Fail2banのインストール

$ sudo apt install fail2ban -y
$ sudo systemctl enable fail2ban
$ sudo systemctl start fail2ban
section_07_updates.sh

## 🔄 第5層:自動セキュリティアップデート化

ゼロデイ攻撃など新たな脅威への対処として、Ubuntu自身を常に自動アップデートするように構成します。

ステップ 11:自動アップデーターの有効化

$ sudo apt install unattended-upgrades -y
$ sudo dpkg-reconfigure -plow unattended-upgrades
section_08_telegram.md

## 📱 ボーナス:Telegram経由のコントロール

より便利に使うため、Telegramボットを経由してVPS外からでも安全にAIを活用できます。

ステップ 12:Telegram ボットのセットアップ

1. 自身のボットを作成
Telegram内で @BotFather へ /newbot を送信し、APIトークンを発行します。
2. 個人IDの読み取り
@userinfobot に話しかけることで自身のIDを取得します。
3. OpenClawへの組込
得られたIDとトークンをOpenClaw環境変数・設定へと注入します。
section_09_verify.md

## ✅ 検証・確認用チェックリスト

以下の全てのセキュリティ項目が適切に設定されているかを確認してください:

Tailscale動作状況確認:`tailscale status`
単一のPublic IPからのアクセスが拒否されること
Tailscale URL(クエリ付き)でダッシュボードが描画されること
UFW動作状況:`sudo ufw status`
Fail2ban動作状況:`sudo systemctl status fail2ban`
自動更新ステータス:`cat /etc/apt/apt.conf.d/20auto-upgrades`
section_10_cost.md

## 💰 費用の内訳

サービス名料金備考
VPS (DigitalOcean/Hetzner)月額$61GB RAM, 1 vCPU
Tailscale VPN無料100端末まで
UFW Firewall無料OS同梱機能
Fail2ban無料オープンソース
合計金額月額$6全セキュリティ機能完備

🎉 わずか月額$6のランニングコストで、あなたのOpenClawインスタンスは完璧な5重の保護下におかれ、専用VPSで24時間安全にお使いいただけます!

video_walkthrough.md

## 🎥 動画ウォークスルー

ビデオ動画でのステップバイステップ解説はこちらから:

YouTubeで視聴する
next_steps.md

## 🚀 次のステップ

OpenClawは保護されました。次の関連チュートリアルへ進んで更なるインテグレーションを行いましょう:

$ cd ../tutorials/* END_OF_TUTORIAL */