公開アクセスとトンネルの選び方
Myrm はトンネル提供サービスは一切内蔵していません。ネットワーク環境に応じてツールを選び、HTTPS の公開アドレスを取得したら 設定 → システム → 公開 Ingress へ貼り付けます。公開アドレスが要る場面
チャネルのカードにある 送信 / 受信バッジ と、システムページの
ingress-requirement が公開アドレスが必須かどうかを示します。
推奨ツール(いずれか一つ)
国内 / 社内 LAN
海外
設定手順
- WebUI のアクセスパスワードを有効にします(システム設定)。
- トンネルツールで WebUI ポート(既定
3000)をマッピングします。 - HTTPS の公開アドレスをコピーします(末尾の
/は付けない)。 - 設定 → システム → 公開 Ingress へ貼り付けます。
- 接続テストをクリックします。
- 受信方向のチャネルや Cron Webhook を設定します。チャネルページを再開すると Webhook アドレスが更新されます。
例:cpolar(国内)
https://….cpolar…. のアドレスを Myrm の公開 Ingress へ貼り付けます。
内蔵の Quick Tunnel(ワンクリックで外へ)
Myrm には Cloudflare Quick Tunnel も内蔵されており、外部ツールを入れずにすぐリモートアクセスできます。- 設定 → システム → リモートアクセス を開きます。
- トンネルを開始 をクリック — 約 5〜15 秒で一時的な HTTPS アドレスが生成されます。
- スマホで QR コードをスキャンしてモバイル指揮台を開きます。
モバイル指揮台(Mobile Hub)
トンネルが動いていると、モバイルセッションセンター で次ができます。- スマホから実行中のすべての Agent セッションを確認
- 特定のセッションを開いて操作(音声入力対応:押して話す)
- リアルタイムの SSE 進捗プッシュを受信
- HITL リクエストを遠隔承認し、指示を調整し、タスクを停止(成功 / 失敗のトースト付き、attach 再接続ストリームでも同様)
- E2EE エンドツーエンド暗号化 — NaCl Box(Curve25519 + XSalsa20-Poly1305)でモバイル通信をすべて暗号化
- HMAC ペアリングトークン — SHA-256 署名 + 自動更新 TTL + Purpose スコープ認可
- Trust Zone 信頼段階 — 6 種の入口経路を自動で 3 段階の信頼に分類。リモートリクエストは
REMOTE_EXPOSED - ツール権限の絞り込み — リモートセッションでは shell / file_write / yolo_mode などの危険ツールを自動無効化
- セッションの chat_id 紐付け — 各ペアリングトークンが特定対話に紐付き、跨セッションの越権を防止
- 鍵ファイルの保護 — 暗号化鍵を 0600 権限で保存し、パスワード変更時に自動ローテーション
- セッション退避 — LRU + TTL(上限 256、1 時間で失効)によるセッション滞留の防止
セキュリティ
- 公開ネットワークへ露出する前に、必ずアクセスパスワードを有効にしてください。
- 本番 Webhook には 安定したドメイン を使ってください(無料のランダムアドレスは再起動で変わります)。
- クラウドホスト利用者は自宅でトンネルを組む必要がありません。
- リモート接続は Trust Zone の信頼段階保護を受けます(危険ツールは自動無効)。
- DNS rebinding 対策: Host ヘッダの偽造を Host 許可リストミドルウェアが拒否します。
- ペアリングトークンのローテーション: パスワードを変更すると、発行済みのトークンはすべて無効になります。
トラブルシューティング
接続テストが失敗する
- トンネルのプロセスがまだ動いているか確認します。
- URL のポートが WebUI と一致しているか確認します。
- 企業ゲートウェイが一部のトンネルドメインを遮断している場合があります — ツールを変えるか LAN アクセスを使ってください。
チャネルの Webhook が localhost のままになる
- まず 公開 Ingress を設定します。
- チャネル設定ページを再開して Webhook URL を更新します。