0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AWS LightsailのOpenClawブループリントで、運用を自動化・永続化するための技術リファレンス

0
Last updated at Posted at 2026-04-06

AWS LightsailのOpenClawブループリントで、運用を自動化・永続化するための技術リファレンス

はじめに

📖 補足:本記事の背景と「読み物版」について

このシステムを「Jarvis」と名付け、AIアシスタントとして運用し始めるまでのストーリーや、執事としての振る舞いなどのエピソードは、個人ブログにて公開しています。技術の裏側にある「AIとの共同生活」に興味がある方はぜひご覧ください。

👉 自分専用AIエージェント「Jarvis」を召喚した1日 | miyakawa.codes

1. 概要

AWS Lightsailのブループリントに採用された個人専用AIエージェント「OpenClaw」を、実運用(カスタムドメイン・HTTPS・常時接続)に耐えうる構成にするための技術ドキュメントです。
セットアップ時に遭遇した「権限の罠」や「サービスファイルのインストール先問題」など、公式ドキュメントを補完する解決策をまとめます。

2. サーバー初期設定とセキュリティの要塞化

Lightsail起動直後、まず行うべきはOSレイヤーの保護です。

システムアップデートと自動更新

  • OS: Ubuntu 24.04 LTS
  • Kernel: 6.17.0-1010-aws への更新を確認。
  • 自動セキュリティアップデート: unattended-upgrades を導入。セキュリティパッチのみ毎日自動適用する設定(自動再起動は無効)を推奨します。

ファイアウォール (UFW) と Fail2Ban

  • UFW: 22(SSH), 80(HTTP), 443(HTTPS) のみを開放。
  • Fail2Ban: SSH監視を有効化。10分以内に5回失敗したIPを 24時間 BAN する強めの設定を採用。
  • 注意点: OpenClaw Gatewayが使用する内部ポート 18789 はloopback(127.0.0.1)のみで動作するため、Lightsailのファイアウォールで外部開放する必要はありません。

3. OpenClawのアップデートと「権限」の罠

プリインストールされている v2026.3.2 から v2026.4.2 へのアップデート時に複数の問題に遭遇しました。

UIからのアップデート失敗とCLIでの解決

Web UI上の「Update now」をクリックしても元のバージョンに戻る現象が発生したため、CLIからの手動更新が必要です。

  • npmの書き込み権限エラー (EACCES): openclaw update 実行時、/usr/lib/node_modules/ への書き込み拒否が発生します。
  • 解決策: sudo openclaw update を使用してください。

補完スクリプトの混入に注意

アップデート時にシェル補完のインストールをYesにすると、.bashrc にzsh用のスクリプトが混入し、起動時にエラーが出る場合があります。導入後は .bashrc の末尾を確認し、不要なコード(120行目〜付近)が含まれていないかチェックを推奨します。

Gatewayサービスファイルのインストール先問題

sudo openclaw gateway install を実行すると、サービスファイルが /root/.config/ に生成されてしまうケースがあります(本来は /home/ubuntu/.config/)。

  • 解決策: openclaw gateway install --force を実行し、正しいパスへ再インストールと自動起動登録(systemd)を行ってください。

4. 【最重要】トークンの永続化とセキュリティ

デフォルト設定では 毎日 UTC 3:00 にトークンが自動ローテーションされ、ブラウザ側で毎日再ペアリングが発生します。

トークンローテーションの無効化

ブラウザに固有Tokenを発行する際の「5つの設定リスト」のうち、4番を無効化することで永続化が可能です。

  • 4. Daily token rotation: Disabled

セキュリティの補完

トークンを永続化させる場合、リバースプロキシ(Apache2)側で Basic認証 を導入することを強く推奨します。

5. カスタムドメイン・HTTPS化の必須設定

certbot --apache -d [domain] 実行後、~/.openclaw/openclaw.json を以下のように修正しないと、Gatewayが正しく接続されません。以下の3箇所の設定が必須です。

"gateway": {
  "publicUrl": "[https://your.domain.com](https://your.domain.com)",
  "http": {
    "allowedOrigins": ["[https://your.domain.com](https://your.domain.com)"]
  },
  "controlUi": {
    "allowedOrigins": [
      "[https://your.domain.com](https://your.domain.com)",   // 公開ドメイン
      "https://[Server-IP]",        // IP直接アクセス(バックアップ)
      "http://localhost:18789"      // ローカルループバック
    ]
  }
}

6. 脱ブラウザ:Telegramへの統合とAI多重運用

ブラウザUIはあくまで「初期設定と緊急時のメンテナンス(外科手術)」のための場所と割り切ります。

  • Telegram連携: API通信を利用するため、ブラウザ向けトークンの有効期限(Daily rotation)に左右されません。
  • AI多重運用: OpenClawがアップデート失敗などで停止した際、並行してセットアップした Claude Code を使い、サーバー内部から直接ファイルの修正・Gatewayの再起動を行う運用が極めて効率的です。

一度設定が完了すれば、iPhone等のチャットアプリから Jarvis_bot へ指示を出すだけで完結する「透明なAIエージェント」環境が整います。

7. 参考コマンド集

トラブルシューティングや設定確認に役立つコマンド群です。

# 証明書の状態と有効期限を確認
sudo certbot certificates

# Lightsail固有の証明書管理デーモンの状態確認
sudo systemctl status lightsail-manage-certd

# OpenClaw Gateway の稼働状況を確認
openclaw gateway status

# Gateway の再起動(設定反映時など)
openclaw gateway restart

# トークンの手動ローテーションが必要な場合
openclaw token rotate

8. まとめ:AIを「育てる」から「使いこなす」へ

今回の構築を通じて、単なるAIツールのセットアップを超えた、以下の実用的な運用フローを確立できました。

  1. インフラの要塞化: Fail2BanやUFWによる堅牢な環境。
  2. 接続の永続化: 毎日発生していた「トークン再ペアリング」からの解放。
  3. AIによるセルフメンテナンス: OpenClawをClaude Codeで外側から修理する運用。
  4. チャットUI統合: Telegramによる「脱ブラウザ」での常時アクセス。

これらにより、PCを開くことなく、日常のコミュニケーションの延長線上でAIエージェントに指示を出せるようになりました。

現在はサンドボックスによる制限がありますが、今後は外部API(Google Drive/Spreadsheet等)との連携を深め、より高度な「情報のハブ」として育てていく予定です。


「備えあれば憂いなし。ログさえあれば原因は分かります」——Jarvis

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?