> ## Documentation Index
> Fetch the complete documentation index at: https://docs.myrmagent.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 公開アクセスとトンネルの選び方

> 好きな内網トンネルツールを選び、Myrm に HTTPS アドレスを貼り付けます。

# 公開アクセスとトンネルの選び方

Myrm は**トンネル提供サービスは一切内蔵していません**。ネットワーク環境に応じてツールを選び、HTTPS の公開アドレスを取得したら **設定 → システム → 公開 Ingress** へ貼り付けます。

## 公開アドレスが要る場面

| 場面 | 公開 Ingress が必要？ |
| - | - |
| 同じ WiFi / 社内 LAN（スマホや同僚から） | 不要 — システム設定の **LAN アクセス**を使ってください |
| 送信方向のチャネル（Feishu WebSocket、DingTalk、Telegram WS など） | 不要 — サーバー側から外へ接続します |
| 受信方向のチャネル（LINE、Teams、Webhook、QQ ボットなど） | **必要** |
| Cron の Webhook トリガー | **必要** |
| 外出中にスマホ / 4G で WebUI を使う | **必要**（トンネルの URL を貼る） |
| クラウドホストの Myrm | 不要 — プラットフォームが自動注入します |

チャネルのカードにある **送信 / 受信バッジ** と、システムページの `ingress-requirement` が公開アドレスが必須かどうかを示します。

## 推奨ツール（いずれか一つ）

### 国内 / 社内 LAN

| ツール | 説明 |
| - | - |
| [cpolar](https://www.cpolar.com/docs) | 無料版あり・国内ノード、`cpolar http 3000` |
| [NATAPP](https://natapp.cn/) | 国内ノード、ngrok に似る（実名認証が必要な場合あり） |
| [花生壳](https://hsk.oray.com/) | 自宅利用では定番 |
| **自作 frp** | 最も制御しやすい；公開 IP を持つ VPS が必要 |

### 海外

| ツール | 説明 |
| - | - |
| **frp** / **nps** | VPS に自作 |
| **ngrok** | 試しやすい；無料版は URL が変わる場合あり |
| **Cloudflare Named Tunnel** | 固定ドメインを紐付けられる；地域により edge への接続が不安定な場合あり |
| **リバースプロキシ** | クラウドサーバーの nginx / Caddy から WebUI ポートへリバースプロキシ |

## 設定手順

1. **WebUI のアクセスパスワード**を有効にします（システム設定）。
2. トンネルツールで WebUI ポート（既定 `3000`）をマッピングします。
3. **HTTPS** の公開アドレスをコピーします（末尾の `/` は付けない）。
4. **設定 → システム → 公開 Ingress** へ貼り付けます。
5. **接続テスト**をクリックします。
6. 受信方向のチャネルや Cron Webhook を設定します。チャネルページを再開すると Webhook アドレスが更新されます。

### 例：cpolar（国内）

```bash theme={null}
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
cpolar authtoken <あなたのtoken>
cpolar http 3000
```

出力された `https://….cpolar….` のアドレスを Myrm の公開 Ingress へ貼り付けます。

## 内蔵の Quick Tunnel（ワンクリックで外へ）

Myrm には **Cloudflare Quick Tunnel** も内蔵されており、外部ツールを入れずにすぐリモートアクセスできます。

1. **設定 → システム → リモートアクセス** を開きます。
2. **トンネルを開始** をクリック — 約 5〜15 秒で一時的な HTTPS アドレスが生成されます。
3. スマホで **QR コード**をスキャンしてモバイル指揮台を開きます。

**注意**: Quick Tunnel は毎回ランダム URL を生成します。**一時的なスマホ遠隔操作**には向きますが、**長期的な Webhook** には向きません。長期利用は上のセルフ選択ツールを使ってください。

### モバイル指揮台（Mobile Hub）

トンネルが動いていると、**モバイルセッションセンター** で次ができます。

* スマホから実行中のすべての Agent セッションを確認
* 特定のセッションを開いて操作（音声入力対応：押して話す）
* リアルタイムの SSE 進捗プッシュを受信
* HITL リクエストを遠隔承認し、指示を調整し、**タスクを停止**（成功 / 失敗のトースト付き、attach 再接続ストリームでも同様）

アクセスは **7 層のセキュリティ体系** で保護されています。

1. **E2EE エンドツーエンド暗号化** — NaCl Box（Curve25519 + XSalsa20-Poly1305）でモバイル通信をすべて暗号化
2. **HMAC ペアリングトークン** — SHA-256 署名 + 自動更新 TTL + Purpose スコープ認可
3. **Trust Zone 信頼段階** — 6 種の入口経路を自動で 3 段階の信頼に分類。リモートリクエストは `REMOTE_EXPOSED`
4. **ツール権限の絞り込み** — リモートセッションでは shell / file\_write / yolo\_mode などの危険ツールを自動無効化
5. **セッションの chat\_id 紐付け** — 各ペアリングトークンが特定対話に紐付き、跨セッションの越権を防止
6. **鍵ファイルの保護** — 暗号化鍵を 0600 権限で保存し、パスワード変更時に自動ローテーション
7. **セッション退避** — LRU + TTL（上限 256、1 時間で失効）によるセッション滞留の防止

## セキュリティ

* 公開ネットワークへ露出する前に、必ずアクセスパスワードを有効にしてください。
* 本番 Webhook には **安定したドメイン** を使ってください（無料のランダムアドレスは再起動で変わります）。
* クラウドホスト利用者は自宅でトンネルを組む必要がありません。
* リモート接続は **Trust Zone** の信頼段階保護を受けます（危険ツールは自動無効）。
* **DNS rebinding 対策**: Host ヘッダの偽造を Host 許可リストミドルウェアが拒否します。
* **ペアリングトークンのローテーション**: パスワードを変更すると、発行済みのトークンはすべて無効になります。

## トラブルシューティング

### 接続テストが失敗する

1. トンネルのプロセスがまだ動いているか確認します。
2. URL のポートが WebUI と一致しているか確認します。
3. 企業ゲートウェイが一部のトンネルドメインを遮断している場合があります — ツールを変えるか LAN アクセスを使ってください。

### チャネルの Webhook が localhost のままになる

1. まず **公開 Ingress** を設定します。
2. チャネル設定ページを再開して Webhook URL を更新します。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.