Log in to leave a comment
No posts yet
AI エージェントが自分のターミナルで直接コマンドを入力し、ファイルを修正する時代が到来しました。Anthropic の Claude Code は革新的です。しかし、この革新は諸刃の剣でもあります。AI がシステムへのフルアクセス権限を持って実行されるということは、セキュリティエンジニアリングの観点から見れば、巨大な災厄の種を抱えているのと同じです。
単純なミスやハルシネーション(幻覚)が一度起きるだけで、.ssh の秘密鍵が外部に露出したり、環境変数に保存された AWS の認証情報が流出したりする可能性があります。これは理論上の仮説ではなく、現実的な脅威です。解決策は明確です。AI エージェントを隔離(閉じ込める)する必要があります。単なる Docker による隔離を超え、システムレベルのセキュリティを提供する Incus が必要な理由はここにあります。
AI エージェントをどこで実行するかが、データセキュリティの成否を分けます。ローカルターミナルで直接実行する行為は、事実上、家の玄関を開けっ放しにするのと変わりません。
| 比較項目 | ホストターミナル | Docker コンテナ | Incus システムコンテナ |
|---|---|---|---|
| 隔離の境界 | なし(権限継承) | プロセスレベルの隔離 | カーネルレベルのシステム隔離 |
| シークレット露出 | 非常に高い | 低い | 極めて低い |
| 状態の持続性 | 永続的 | 揮発性 | 永続적 |
| 権限管理 | ユーザ権限の露出 | Root 乱用のリスク | 非特権モードの強制 |
実際、2024年に発表されたセキュリティレポートによると、自律型エージェントの権限乱用事例のうち 60% 以上が不適切なサンドボックス設定に起因しています。Docker は軽量ですが、エージェントがシステムサービスを操作したり、複雑なパッケージの依存関係を管理したりする必要がある場合に限界を露呈します。対して Incus は、仮想マシン(VM)に近いレベルの独立した OS 環境を提供しながらも、オーバーヘッドははるかに抑えられています。
シニアセキュリティエンジニアが Docker ではなく Incus を選ぶ理由は明確です。Docker はアプリケーションをデプロイするためのツールであり、信頼できないエージェントを閉じ込めるための「牢獄」ではないからです。
Incus の核心は ユーザー名前空間 (User Namespaces) です。コンテナ内部では root (UID 0) 権限を持っているように見えますが、実際のホストシステム上では何の権限も持たない大きな数字のユーザー(例:UID 1,000,000)にマッピングされます。AI がコンテナを脱出したとしても、ホストシステムから見れば正体不明の一般ユーザーに過ぎません。
Docker コンテナは削除するとデータが消えてしまいます。しかし、Claude Code のようなエージェントは、以前の作業のコンテキストやインストールされたツールを記憶しておく必要があります。Incus はシステムコンテナであるため、コンテナを再起動してもすべての状態が保持されます。エージェントに「連続性のある脳」を提供するわけです。
Incus は Linux カーネルの機能を使用するため、Mac で直接実行することはできません。その代わり、軽量な Linux 仮想化レイヤーである Colima を仲介役として活用します。
まず必要なツールをインストールし、AI 作業に適したリソースを割り当てます。CPU とメモリを十分に与えないと、エージェントの推論速度が著しく低下します。
bash brew install colima incus colima start --cpu 4 --memory 8 --runtime incus --network-address
Colima VM 内部の Incus サーバーを Mac のターミナルから制御できるように接続します。
colima ssh でログインし、sudo incus admin init --auto を実行します。incus remote add colima-vm <IP> でサーバーを登録します。インターネット接続が遮断されることがよくあります。これは通常、Docker がインストールされた環境で iptables のポリシーが DROP に変更されるためです。以下のコマンドで通信路を開放する必要があります。
bash sudo firewall-cmd --zone=trusted --change-interface=incusbr0 --permanent sudo firewall-cmd --reload
AI エージェントが意図せず悪意を持ったり、ハッキングされたりした場合、Incus がどのようにシステムを保護するか、具体的なシナリオで確認してみましょう。
エージェントが「デバッグ中だ」と言って printenv を実行したり、悪意のあるライブラリがメモリ内の AWS キーを奪取しようとしたりします。
スクリプトが ~/.ssh/id_rsa パスをスキャンして外部へ送信しようとします。
セキュリティを前提としない AI 導入は、将来的に大きなコストとして跳ね返ってくる技術的負債です。生産性が魅力的だからといって、家の鍵を AI に丸投げすることはできません。Incus サンドボックスは、AI 時代の開発者が備えるべき最低限のシートベルトです。
今すぐローカルターミナルで実行中の Claude Code を停止してください。隔離された Incus 環境へ移行することが、あなたのコード、資産、そしてキャリアを守る最も確実な方法です。今日、今すぐに colima start --edit コマンドで、あなただけの安全な開発ラボを構築してみてください。