> ## 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.

# 公网访问与穿透选型

> 自选内网穿透工具，将 HTTPS 地址粘贴到 Myrm。

# 公网访问与穿透选型

Myrm **不内置**任何穿透服务商。请根据你的网络环境选择工具，获得 HTTPS 公网地址后，粘贴到 **设置 → 系统 → 公网 Ingress**。

## 什么时候需要公网地址

| 场景                               | 需要公网 Ingress？        |
| -------------------------------- | -------------------- |
| 同一 WiFi / 公司内网（手机或同事访问）          | 否 — 用系统设置里的 **内网访问** |
| 出站渠道（飞书 WebSocket、钉钉、电报 WS 等）    | 否 — 服务端主动连出去         |
| 入站渠道（LINE、Teams、Webhook、QQ 机器人等） | **是**                |
| Cron Webhook 触发                  | **是**                |
| 外出用手机/4G 访问 WebUI                | **是**（粘贴穿透 URL）      |
| 云托管 Myrm                         | 否 — 平台自动注入           |

渠道卡片上的 **出站/入站徽章** 与系统页的 `ingress-requirement` 会提示你是否必须配置公网地址。

## 推荐工具（任选其一）

### 国内 / 企业内网

| 工具                                    | 说明                           |
| ------------------------------------- | ---------------------------- |
| [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. 用手机扫描 **二维码** 打开移动指挥台。

**注意**：Quick Tunnel 每次生成随机 URL，适合临时手机远程操控，不适合长期 Webhook。长期使用请用上面的自选穿透工具。

### 移动指挥台（Mobile Hub）

隧道运行后，**移动会话中心** 让你可以：

* 在手机上查看所有正在运行的 Agent 会话
* 打开并控制特定会话，支持语音输入（按住说话）
* 接收实时 SSE 进度推送
* 远程审批 HITL 请求、调整指令、或**停止任务（带成功/失败 toast，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. 企业网关可能拦截部分穿透域名 — 换工具或改用内网访问。

### 渠道 Webhook 仍显示 localhost

1. 先配置 **公网 Ingress**。
2. 重新打开渠道设置页以刷新 Webhook URL。
