Tox Tunnel Ops

🔒 零配置端到端加密 P2P 隧道,替代 ngrok/Tailscale

基于 Tox 协议的端到端加密 P2P 隧道工具,无需公网 IP、中心服务器或 VPN 即可穿透 NAT 实现 SSH/RDP/数据库/内网服务远程访问,是 ngrok/Tailscale 的自托管开源替代方案。

收藏
2.8k
安装
1k
版本
0.4.8
CLS 安全扫描中
预计需要 3 分钟...

使用说明

ToxTunnel 核心能力

ToxTunnel 是一款基于 Tox P2P 网络协议(libsodium 加密)的 TCP 隧道工具,实现零配置内网穿透。核心特性包括:

  • 端到端加密:流量经 Tox 协议加密,无需信任中继服务器
  • 无中心化架构:无账号注册、无中心节点、无端口映射需求
  • NAT Traversal:自动处理 NAT、运营商级 NAT、双 NAT 场景
  • 多协议支持:SSH、RDP/VNC、PostgreSQL/MySQL/Redis/MongoDB、HTTP/HTTPS、SMB 等任意 TCP 端口

典型应用场景

| 场景 | 配置要点 |
|------|---------|
| 远程 SSH 访问 | `local_port: 2222` → `remote_host: 127.0.0.1:22`,可选 SSH ProxyCommand 管道模式 |
| 数据库隧道 | 偏移端口设计(PG 15432、MySQL 13306),建议只读账号 + 时限规则 |
| 开发服务器暴露 | 临时隧道,配合 Basic Auth,测试后清理 |
| NAS/Homelab 远程访问 | 多端口转发(Web + SSH + 文件服务),建议 systemd/launchd 持久化 |
| 动态代理调试 | SOCKS5/HTTP CONNECT 监听(**仅限 loopback**),服务端 rules.yaml 仍控制目标范围 |
| 生产高可用 | 多服务器故障转移(`server_id` 列表 + `failover` 策略) |

安全架构

rules.yaml  # 服务端访问控制(per-friend 精确匹配)
├── friend: "64-char-hex-public-key"  # 精确匹配,无通配符
├── allow: [{host: "127.0.0.1", ports: [22, 5432]}]
└── deny:  [{host: "10.*", ports: []}]  # deny 优先

关键安全约束

  • 默认拒绝内网段(10/172.16/192.168),需显式放行特定主机:端口
  • SOCKS5 监听器强制绑定 loopback,禁止 0.0.0.0/公网 IP
  • Metrics 端点默认 127.0.0.1:9100,外置需可信网络隔离
  • 支持热重载(toxtunnel reload)实现无中断权限撤销

运维特性

  • 可观测性:Prometheus /metrics 端点,暴露活跃隧道数、好友在线状态、Tox 迭代延迟等指标
  • 实时诊断toxtunnel inspect 通过 Unix Socket/命名管道查看隧道状态,无需日志追踪
  • 连接恢复:v0.4+ 支持隧道快速重附着(resume.enabled),维护期间 SSH 会话不中断
  • 流量优化:自适应 BDP 流控(默认)、自适应写合并(coalesce_mode: adaptive

显著优点

  • 零依赖自托管:对比 ngrok/frp 无中继服务器成本,对比 Tailscale/ZeroTier 无第三方账号体系
  • 最小权限天然设计:per-friend rules 比 VPN 的「连入内网即获全访问」更细粒度
  • 跨平台一致:macOS(pkg)、Linux(DEB/RPM)、Windows(MSI)原生包 + 一键安装脚本

潜在局限

  • 延迟敏感型场景受限:Tox DHT 查找 + 可能的 UDP→TCP 中继 fallback,相比直连 WireGuard 有额外 RTT(典型 20-150ms)
  • 带宽吞吐上限:Tox 单帧 1367 字节限制 + 流控窗口,大文件传输需启用 adaptive 模式调优
  • Windows 功能受限:管道模式(SSH ProxyCommand)不支持,SOCKS5/端口转发为主
  • 身份管理负担tox_save.dat 即 Tox 身份,丢失不可恢复,需自行备份
  • 无 UDP 转发:纯 TCP 隧道,UDP 服务(如 QUIC、WireGuard 自身)需其他方案

适合人群

  • 家庭实验室/NAS 用户:无需公网 IP 远程管理 Synology/TrueNAS
  • 开发者/DBA:临时安全访问生产数据库,细粒度审计
  • 隐私敏感用户:拒绝第三方 SaaS,完全自托管
  • 受限网络环境:企业内网、4G/5G 运营商 NAT 下仍需远程运维

常规风险

| 风险类别 | 说明 | 缓解措施 |
|---------|------|---------|
| 配置过度宽松 | rules.yaml 误配 `host: "*"` 导致内网暴露 | 强制最小权限模板,拒绝通配 friend |
| SOCKS5 误绑公网 | 绕过验证绑定 0.0.0.0:1080 成为开放代理 | 配置校验器硬拒绝非 loopback |
| 持久化密钥泄露 | `tox_save.dat` 备份不当 | 加密备份,权限 0600 |
| 临时访问未撤销 | 合约商维护后规则残留 | 热重载删除规则 + 审计 `toxtunnel inspect` |
| DHT 污染/恶意节点 | Tox 网络层风险 | 启用 `bootstrap_mode: lan` 纯内网部署可选 |

Tox Tunnel Ops 内容

examples文件夹
references文件夹
scripts文件夹
手动下载zip · 56.5 kB
db-migration.mdtext/markdown
请选择文件