近日,马鞍山小红花科技有限公司自主研发的内网穿透反向转发系统 TSMTravel 正式开源发布。该项目已在 Gitee 平台完整开放源码,面向所有有内网服务外网访问需求的开发者与企业免费提供。TSMTravel 取意于「Tunnel Session Multiplexer + travel」——把内网流量复用(多路复用)到一条隧道上,穿行到公网。
一句话理解它的价值:内网把流量塞进隧道,公网把流量送到外面。内网服务原地不动,公网凭空多出几个可用端口。
TSMTravel 在设计上完全对标业界知名的内网穿透工具 frp,同样采用服务端与客户端双端模型、控制连接与数据连接分离、工作连接池与 token 鉴权等成熟架构。但在工程实现与使用体验上,它做了三处关键改进:管理界面从简单的 dashboard 升级为完整的 Web 管理面板;配置存储从 ini / toml 文件改为 SQLite 数据库(只存低频配置,安全可靠);角色设定不再是 frps / frpc 两个程序,而是同一份程序装好后访问管理端口自助选择角色,极大降低了部署门槛。
四大核心优势:一键直连——客户端只需主动出站连接服务端,无需在路由器或交换机上做任何端口映射,也不依赖任何第三方中转平台;傻瓜式部署——Windows 平台双击脚本即可启动,Linux 平台一条命令完成虚拟环境创建、依赖安装、数据目录初始化、角色与鉴权写入的全流程;可视化操作——所有隧道管理、服务器配置、接入信息查看都在 Web 面板中点点鼠标完成,无需手写配置、无需命令行操作;跨平台支持——完整支持 Linux 与 Windows 两大平台,Windows 端还可一键打成免安装独立程序,目标机器无需安装 Python 与任何依赖。
管理面板自带安全鉴权:首次访问需先设置管理员账号密码(采用 PBKDF2 加盐哈希存储于 SQLite),此后所有管理接口均需登录后方可调用,并配合会话 Cookie 与连续失败限速机制,保障运维安全。架构上严格遵循「管理面与数据面分离」红线——管理进程(FastAPI + SQLite)压力小、负责交互;转发内核(asyncio + uvloop)独立承载控制端口与全部转发端口的流量,两者仅通过本机 IPC 交换指令与状态快照,转发逻辑绝不写在管理进程中。
典型应用场景一:让无公网 IP 的 NAS 变成可公网访问的私有云。 这是 TSMTravel 最典型、最高频的使用场景。家庭宽带与多数企业内网普遍拿不到独立公网 IPv4(运营商大内网 NAT 已成常态),摆在家里的群晖、威联通、绿联等各类 NAS 设备因此只能在内网访问,人在外面想看照片、取文件、访问私有云盘,往往束手无策。使用 TSMTravel,只需一台有公网 IP 的云服务器做服务端,把家里的 NAS 装成客户端,即可为 NAS 上的管理后台、私有云盘、相册、下载器等各项服务各开一条隧道,直接暴露到公网。客户端全程只主动出站,无需在光猫或路由器上做任何端口映射、无需改动现有网络,NAS 本身也不对外暴露任何端口;出门在外,用手机或笔记本随时访问家里的 NAS,体验和访问公网服务完全一样。
典型应用场景二:借助海外服务器免备案访问,域名直连国内服务。 国内服务器托管网站通常需要完成 ICP 备案,流程周期长、材料要求高,不少个人开发者与初创团队在项目验证阶段常常卡在这一步。TSMTravel 给出了另一条路径:用一台海外服务器做服务端,把国内服务器装成客户端,通过隧道把国内服务转发到海外节点,再用域名直连海外节点的公网端口对外提供服务——网站无需备案即可访问,省去备案等待周期,项目可以立刻上线验证。同时,隧道全程 TLS 1.3 加密传输,国内服务依然留在本地机房、数据不出境,既拿到了免备案的便利,又兼顾了数据安全与访问速度,特别适合跨境业务部署、内容分发与网络加速等场景。
TSMTravel 同样内置了完善的工程化能力:提供 pytest 端到端验收用例,覆盖反向转发、多客户端多隧道、错误 token 拒绝、断线重连、客户端离线后转发端口释放、动态申请端口白名单、TLS 1.3 协商等关键路径;自带并发与吞吐压测脚本,可直接输出性能报告。项目文档齐全,部署文档中包含详细的安全组放行清单与系统调优参数。
项目已在 Gitee 完整开源,欢迎广大开发者下载体验、提交 Issue 与参与共建。


