2026年 OpenClaw Gateway 外向き通信ガバナンスとセキュリティガードレール実践:ドメイン許可リスト、Sandbox、監査ログ、人在ループ(HITL)をリモート物理 Mac で再現する Runbook(openclaw.json 断片+FAQ)
OpenClaw Gateway を ZoneMac のリモート物理 Mac で運用するセキュリティ/プラットフォームチームには、外向きの多いサービスと同水準の厳格さが必要です。明示的な外向き方針、ツール Sandbox、追記型の監査、不可逆操作の HITL(人在ループ)。本稿は 意思決定マトリクス、コピペ可能な openclaw.json 構造、七ステップ Runbook、引用用しきい値、FAQ、およびネットワーク受入と CI 運用への導線をまとめます。
1. はじめにと対象範囲
外向き通信のガバナンスは「インターネットを遮断する」ことではなく、契約です。ゲートウェイが呼び出してよい上流、ツールが実行してよい範囲、ログに残す項目、人が承認すべきタイミングを定義します。無人の 物理 Mac では、この契約が「便利なエージェント」と「オープンプロキシ」の分岐点になります。
本 Runbook は 127.0.0.1 でゲートウェイに到達でき、openclaw.json を編集できることを前提とします。外向きを広げる前の RTT/損失ベースラインは
マルチリージョンのリモート物理 Mac 受入:RTT/ジッター/パケット損失 SLO
を、共有 Runner プールと Artifact 同期の考え方は
GitHub Actions セルフホスト macOS Runner と Ephemeral Mac の閾値マトリクス
と併読してください。
2. よくある痛み
- 見えない外向きの拡散。 モデルエンドポイント、OAuth 発行者、パッケージミラーを足すたびに影響範囲が広がり、名前付き許可リストがなければインシデント時に「想定トラフィックか侵害か」を切り分けられません。
- Sandbox 境界のないツール。 シェル・ブラウザ・ファイルツールが共有 Mac のユーザーデータや CI 秘密に触れうる状態では、プロンプトインジェクションがそのままホスト権限でのコマンド実行に繋がります。
- 監査の欠落と HITL の不在。
request_id相関とローテーションのない JSONL はディスクを圧迫しコンプライアンスにも耐えません。不可逆操作に承認キューがないと、プール機材上で「静かな運用」リスクが残ります。
3. 意思決定マトリクス:ガードレール × 戦略
左列はセキュリティ上の論点、右列は共有リモート Mac 上の本番エージェントに推奨する最低ラインです。
| ガードレール | 危険なショートカット | 推奨ベースライン |
|---|---|---|
| 外向きドメイン | 柔軟性のため HTTPS を広く許可 | プロファイルごとに FQDN を明示した既定拒否。ブレークグラスはチケットと期限付き |
| ツール Sandbox | 対話ユーザーと同一シェル | 専用ワークスペースルート、コマンド許可リスト、プロファイルごとの子プロセス/壁時計上限 |
| 監査 JSONL | コンソールのみ | ts、request_id、actor、decision、egress_host など構造化フィールド、サイズベースのローテーション |
| HITL | セッションごとの手動信頼 | 方針駆動:高影響ツールはキュー投入、SLA タイマー、タイムアウト時のエスカレーション |
| シークレット | 世界読み取り可能なファイルに API キー | macOS Keychain または launchd 注入の環境変数、設定パス ACL の制限 |
| 変更管理 | 差分なしで JSON を本番直編集 | バックアップ、PR またはチケット参照、ステージングでのゴールデンリクエスト、ロールバック断片の保管 |
4. 再現可能な openclaw.json 断片
以下は 例示 です。キー名は利用中の OpenClaw バージョンに合わせ、チャンネル束縛や認証参照を壊さないようマージし、Mac 上にはタイムスタンプ付きバックアップを残してください。
4.1 外向き方針とドメイン許可リスト
{
"gateway": {
"outbound": {
"defaultPolicy": "deny",
"profiles": {
"prod-llm": {
"allowHosts": [
"api.openai.com",
"api.anthropic.com",
"*.openai.azure.com"
],
"denyHosts": ["metadata.google.internal"],
"tlsMinVersion": "1.2",
"dns": { "resolver": "system", "ndots": 1 }
},
"breakglass-24h": {
"allowHosts": ["pypi.org", "files.pythonhosted.org"],
"expiresAt": "2026-04-17T00:00:00Z",
"ticket": "SEC-4821"
}
},
"activeProfile": "prod-llm"
}
}
}
4.2 ツール Sandbox(ワークスペース+コマンド許可リスト)
{
"gateway": {
"tools": {
"sandbox": {
"enabled": true,
"profile": "strict-ci",
"profiles": {
"strict-ci": {
"workspaceRoots": ["/Users/agent/OpenClawWorkspaces/ci-bot"],
"allowCommands": ["/usr/bin/git", "/usr/bin/curl", "/opt/homebrew/bin/jq"],
"denyPatterns": ["**/\.ssh/**", "**/Library/Keychains/**"],
"maxSubprocesses": 4,
"wallClockMs": 120000,
"network": "outbound-profile:prod-llm"
}
}
}
}
}
}
4.3 監査ログ(JSONL)
{
"gateway": {
"audit": {
"enabled": true,
"sink": "file",
"path": "/var/log/openclaw/audit.jsonl",
"rotateBytes": 268435456,
"fields": [
"ts", "request_id", "channel", "actor", "tool", "decision",
"egress_host", "http_status", "latency_ms", "hil_state"
],
"redact": ["authorization", "cookie", "x-api-key"]
}
}
}
4.4 人在ループ(HITL)ゲート
{
"gateway": {
"humanInTheLoop": {
"enabled": true,
"queues": {
"default": { "timeoutMs": 300000, "escalateTo": "pagerduty:gateway" }
},
"requireApprovalFor": [
{ "toolPattern": "payment.*", "queue": "default" },
{ "toolPattern": "prod-k8s.*", "queue": "default" },
{ "egressHost": "*.corp.internal", "queue": "default" }
],
"dryRunChannels": ["staging-slack"]
}
}
}
外向きプロファイル、ツール Sandbox の network、HITL キューを揃えてください。任意ホストを呼べるツールが、ブレークグラス無しで defaultPolicy: deny をすり抜けないようにします。
5. 七ステップ Runbook(リモート物理 Mac)
- 外向き通信の棚卸し。 1 週間のゲートウェイトレースから FQDN を洗い出し、意図した LLM/OAuth エンドポイントと突き合わせ、締める前に「謎の名前解決」を潰す。
- 設定のバックアップとブランチ。
cp openclaw.json openclaw.json.bak.$(date +%Y%m%d%H%M)。差分を変更チケットに添付。 - 外向きと Sandbox ブロックのマージ。 先に
defaultPolicy: deny、続いて許可リスト。ツールのnetworkを同名プロファイルに束ねる。 - JSONL 監査+ローテーションを有効化。 ログディレクトリがゲートウェイユーザー専用に書けること。方針が求めるならローテ済みファイルを中央ストレージへ。
- 高影響ツール向け HITL。 決済や本番オーケストレーションから開始。ステージングは
dryRunChannelsを活用。 - localhost でのゴールデンテスト。 許可 1 件、意図的拒否 1 件(監査に構造化ブロックが残ること)、承認/タイムアウト双方の HITL キュー投入。
- 可観測性とレビュー。 拒否率、HITL キュー深さ、監査書き込み失敗をダッシュボード化。許可リストと Sandbox コマンド一覧は四半期レビュー。
6. 拒否/HITL の切り分け
| 症状 | 想定原因 | 対処 |
|---|---|---|
| 拒否イベントの急増 | 新しい上流ホスト名や CDN 分割 | 直近のプロンプト/ツールを diff。チケット付きで FQDN を追加。ワイルドカードはスコープを絞る |
| 開発では動くが本番でブロック | プロファイル不一致または Sandbox が厳しい | activeProfile とツールの workspaceRoots を比較。チャンネル→プロファイル対応を揃える |
| HITL キュー滞留 | 承認クラスに入るツールが多すぎる | requireApprovalFor のパターンを絞る。営業時間内の承認者を追加。SLA レビュー後にのみタイムアウト延長 |
| 日中に監査ファイルが消える | ローテーション、権限、ディスク満杯 | df と launchd stderr を確認。リクエストエラーとは別に監査シンク異常をアラート |
| 安心感だけが過剰 | OS ハードニングなしの許可リストのみ | FileVault、最小権限ユーザー、自動セキュリティアップデート、Mac 側のネットワーク制御とセットで運用 |
7. 引用用の数値(Runbook 向け)
- JSONL ローテーション:
rotateBytes: 268435456(256 MiB)でコールドストレージ送付前にファイル分割。フォレンジックの粒度と APFS の inode 負荷のバランス。 - HITL 既定待機:
timeoutMs: 300000(5 分)を社内オペキューの初期値に。p95 承認時間を計測してから顧客向けボットは短縮。 - Sandbox 壁時計: 非ストリーミングツールチェーンの第一上限として
wallClockMs: 120000(2 分)。引き上げはチケットとプロファイリング付きで。
8. FAQ
ドメイン許可リストは企業ファイアウォールの代替になりますか?
いいえ。許可リストはアプリケーションレベルの方針であり、境界/ホストのファイアウォールは依然として重要です。Mac のネットワーク制御と OpenClaw 内の明示 FQDN をレイヤー化してください。
ツール Sandbox と OS レベルのハードニングはどう分担しますか?
Sandbox はエージェントのコマンドとパスを制限します。Gatekeeper、SIP、FileVault、パッチ運用はシステムを守ります。両方必要です。
共有リモート Mac の JSONL はどのくらい保持しますか?
多くの場合ディスク上ホット 30〜90 日、コンプライアンスが求めれば不変オブジェクトストレージで長期。常にローテーションと SIEM 転送。バックアップのない単一肥大ファイルは避けてください。
HITL はいつ必須ですか?
不可逆または高影響:決済、本番変更、一斉連絡、広い外向きなど。外向きと Sandbox でリスクが上限化されている対話 Q&A だけは自動のままでよい場合があります。
外向きや Sandbox の編集でゲートウェイ再起動が必要ですか?
一部キーはホットリロード。TLS の bind、Sandbox プロファイル、launchd の環境変数はリロードが要ることが多いです。本番前にステージングでゴールデンリクエストを一本通してください。
9. まとめとノード選定
外向きガバナンスはエージェントトラフィックを監査可能な契約に変換します:既定拒否の外向き、Sandbox されたツール、構造化 JSONL、失敗コストが高いところでの HITL。このスタックにより、共有物理 Mac 上で OpenClaw を、各ノードを汎用外向き中継にしない運用が可能になります。
無人ゲートウェイには macOS の価値が効きます。Gatekeeper、SIP、FileVault は典型的な Windows フリート基準と比べマルウェア全体クラスのリスクを下げやすく、ネイティブ Unix ツールと安定した launchd 監督で設定ドリフトも見えやすくなります。Mac mini M4 はアイドル時おおよそ 4W、静音、7×24 向けの信頼性があり、ゲートウェイと軽量ツール負荷にラック不要で収まります。同じ方針を ZoneMac のリモートベアメタル で回すと、SSH と実ファイルパスに沿った Runbook のまま運用できます。
予測可能な Apple Silicon 上で OpenClaw のガードレールを、運用負荷を抑えて載せたいなら、Mac mini M4 は有力な起点です。専用のリモート物理 Mac に本稿の Runbook を載せるには、ZoneMac の案内を確認してください。
OpenClaw の外向きガバナンス向けリモート物理 Macが必要ですか?
ZoneMac の Mac mini クラウドレンタルなら、launchd 監督下のゲートウェイ、APFS 上の JSONL、SSH で辿れる Runbook を、騒がしい共有 VM なしで実現できます。