Repository navigation
Releases
Releases · toddpan/onenat
oneNat Release r2026.11.06
oneNat Release r2026.11.06
oneNat 客户端 (隧道代理客户端) 发行版。客户端在远端机器运行, 连到 oneNat 服务端
建立反向隧道, 把本机服务暴露成公网入口。
📦 客户端资产 (GitHub Release Assets)
| 文件名 | 形态 | 平台 | sha256 |
|---|---|---|---|
onenat-client-darwin-amd64.tar.gz |
归档 | darwin/amd64 | 33e1702ebfd5017315a6d1ca0f0c26b0e375f0f7fe31b007a91c8f580d357f19 |
onenat-client-darwin-arm64.tar.gz |
归档 | darwin/arm64 | 2b2e123fdbe830eef3c5a442d9626881784a83cb499e7f66f54ee96f1942a8f8 |
onenat-client-linux-amd64.tar.gz |
归档 | linux/amd64 | fdd8437e588e47f64b10d2508d5ea5208351f1a546b949167c50437a82e4198b |
onenat-client-linux-arm.tar.gz |
归档 | linux/arm | 62b755c097eff28a2b413c8c430e8009f3480689d9b3757d28db8fdb0694cb68 |
onenat-client-linux-arm64.tar.gz |
归档 | linux/arm64 | 197a81fd252c4ad58279c7e88edfbaa878da4e27c0a0acebcedd0e0a05b8a713 |
onenat-client-windows-amd64.zip |
归档 | windows/amd64 | 0cf6abde300ffe23f49d5fa02c505ef904d229b7b6af4d1e74c9ab2bb99cc002 |
onenat-client-windows-arm64.zip |
归档 | windows/arm64 | 67686fb7ca6fa41ad4a5292186afd1a60bc7976efd4e0e239a6c8e32e0dcfd8b |
onenat-client_darwin_amd64 |
裸二进制 | darwin/amd64 | 540d7ee9afb53e2c753bbbc3a23cf354cf9a2a5ca3a4c299336ddd8be52b9ec5 |
onenat-client_darwin_arm64 |
裸二进制 | darwin/arm64 | 40d7e6f14744e2322685b7c38400f0a5908cb582444c0603dc82c0f2e92298a8 |
onenat-client_linux_amd64 |
裸二进制 | linux/amd64 | 9c660c6394a9bf6ace8eb5a16ce49680c66f079711534e02f13bffd95620e404 |
onenat-client_linux_arm |
裸二进制 | linux/arm | 212b2b129a38e45dc710364b966e9c68d2ff7afcf32ff8c293b577694aca0727 |
onenat-client_linux_arm64 |
裸二进制 | linux/arm64 | 93a5fe9395ce45e262bc5cf397c12e76cd4ec3d3c8dce4440968124f583b12c7 |
onenat-client_windows_amd64.exe |
裸二进制 | windows/amd64 | 1bdfad4b6c25e1aed710443e9c3b28d67f0414a8bf85cbc469c2452a3afd379f |
onenat-client_windows_arm64.exe |
裸二进制 | windows/arm64 | 3c448cdca1792be00aa174f390142dbbd56db2506a3cef2d464d9e7b30527f5f |
checksums.txt |
校验清单 | 全部资产 | (本清单不含自身) |
🔐 校验
# 下载并校验 (sha256, 格式 "<hex> <file>")
sha256sum -c checksums.txt # Linux
shasum -a 256 -c checksums.txt # macOS📥 使用
- 裸二进制 (下划线命名): 下载后
chmod +x即可直接运行, 无需解包 ——
下游工具 (如 dsh-onenat 插件) 就是按这个形态消费的。 - 归档 (连字符命名): 兼容历史 release 命名, 便于人工下载; 内部单文件
(onenat-client/ Windows 为onenat-client.exe)。
🔐 客户端是用 -tags release 编译的
release tag 的客户端只信任内嵌的 ngrokroot.crt, 不会跳过服务端证书校验
(src/ngrok/client/debug.go 的 debug tag 版本会跳过校验, 绝不对外分发)。
oneNat Release r2026.09.07
oneNat Release r2026.09.07
自 r2026.09.01 以来的能力升级:应用管理 + AI 技能体系 + 实例级凭证。oneNat 仍是基于 ngrok 协议内核的内网穿透与受管隧道平台,本版让「端口背后的系统」成为平台一等公民——每个端口映射绑定一个应用,应用带技能文档与凭证,AI Agent 按规范安全使用。
🆕 新增功能
1. 🗂️ 应用管理 (App Management)
- 应用 CRUD:新增
/apps应用管理页与/apps/:id应用详情页,登记端口背后的真实系统(SSH / 数据库 / Web API…); - 凭证安全存储:应用凭证 AES-256-GCM 加密落盘,页面打码显示;明文 reveal 需显式授权且受限速与审计约束;
- 技能文件管理:按应用上传/下载/在线编辑/删除技能文档(文件名消毒 + 扩展名白名单 + SHA256 校验 + 单应用容量限额);
- 端口映射必选绑定应用:隧道详情页为每条映射选择应用,AI 资源列表随映射内嵌应用元数据与技能清单(技能 URL 自动烘入调用方 KEY);
- 内置应用自动预置:全新安装自动创建「SSH Server」与「DSH」两个内置应用,并附带平台预制的完整使用技能。
2. 🤖 AI SKILL 体系升级
/skill/onenat.md全面重写:新增快速开始、隧道↔应用绑定校验(防绑错技能)、tcp 隧道直接承载 HTTP 的地址换算法、公网端口动态变化提醒、凭证获取章节、行为约定;/skill/index.md平台总索引:全部应用 + 全部技能的 Markdown 目录,AI 一跳获取;- AI 只读接口:
GET /api/v1/resources(隧道+映射+绑定应用实时清单)、GET /api/v1/apps、GET /api/v1/apps/:id/skills/:name/content,全部 API KEY 鉴权、只读、免协调。
3. 🔑 实例级凭证 —— 映射级凭证覆盖(本版核心)
同一应用部署在多台机器上(如两台机器各跑一个 DSH),每条映射指向不同实例、凭证各不相同:现在凭证跟实例走。
- 映射上可设置独立凭证:支持
bearer/basic/header三种认证类型; - 三态语义:修改映射时省略
auth= 保持现状;auth_type: "none"= 清除覆盖、回退应用默认;其余 = 设置/替换; - AI 取有效凭证:新端点
GET /api/v1/mappings/:id/credentials,返回「映射覆盖 ?? 应用默认」的有效凭证,resolved_from字段标明来源(mapping/app);非本账号的映射一律 404,不泄露存在性; - 资源列表可感知:
GET /api/v1/resources的每个映射新增id/auth_override/auth_type(按覆盖优先富化后的有效认证类型); - Web UI:映射表单新增「实例凭证」区,下拉切换「继承应用默认凭证 / 实例独立凭证」。
4. 🔐 API KEY「允许读取凭证」开关
- 新端点
PATCH /api/keys/:id(body{"can_read_cred": bool})+ keys 页徽章开关,仅 owner/admin 可改,写入审计key.update_perm; - 默认关闭:AI 凭证读取(应用级与映射级)统一走
CanReadCred门禁,未授权返回 403 并审计cred.read: denied;开启后仍限速 5 次/分、逐次审计; - 安全修复:修复
Mapping/MappingView因内嵌密文类型MarshalJSON被提升而遮蔽视图字段的序列化缺陷——凭证密文绝不出现在任何 API 视图,且auth_override/auth_type派生标记可靠输出。
5. 👁 体验细节
- 全站密码输入框新增「小眼睛」明文切换(含动态注入的应用凭证/实例凭证弹窗,MutationObserver 自动补挂)。
6. 🔧 修复与运维
- fix(client):无 TTY 环境(systemd / 后台 / 无人值守)下 termbox 初始化失败被忽略,
draw()卡死导致 updates 广播分发器阻塞、客户端消息循环冻结(新隧道建立与 ConfigSync 全部失效)。现初始化失败自动回退纯日志模式;顺带修复 go1.26 vet non-constant format string; - feat(install):
install.sh/install.ps1渲染时内嵌dl/客户端 MD5 清单——本地版本一致时跳过下载(幂等重装),下载后二次校验、不符拒绝落盘;重装已运行客户端时自动 restart 服务使新密钥生效; - fix(onenat):修复 AI 实测发现的资源入口一致性缺陷;
onenat.md明确隧道↔应用绑定与动态获取语义; - chore:
-skillsDir默认改为<webData>/skills(不再相对 CWD);onenat.service增加-webAdminPass保证重装后后台登录账号不变; - 运维工具
packaging/onenat-reissue.sh:服务端迁机/换公网 IP 后用既有 CA 重签证书并无缝切换,客户端二进制免重编免重装。
📦 发行包与客户端下载 (Assets)
| 文件名 | 平台 / 说明 |
|---|---|
oneNat-r2026.09.07.tar.gz |
服务端完整安装包 (含 4 平台服务端 + 启动脚本 + 7 平台客户端分发) |
onenat-client-linux-amd64.tar.gz |
Linux x86_64 独立客户端 |
onenat-client-linux-arm64.tar.gz |
Linux ARM64 独立客户端 |
onenat-client-linux-arm.tar.gz |
Linux ARM 独立客户端 |
onenat-client-darwin-arm64.tar.gz |
macOS Apple Silicon 独立客户端 |
onenat-client-darwin-amd64.tar.gz |
macOS Intel 独立客户端 |
onenat-client-windows-amd64.zip |
Windows x86_64 独立客户端 |
onenat-client-windows-arm64.zip |
Windows ARM64 独立客户端 |
checksums.txt |
SHA256 文件校验和 |
🚀 服务端快速启动
# 1. 解压
tar -xzf oneNat-r2026.09.07.tar.gz && cd oneNat-r2026.09.07
# 2. 启动 (默认端口: 隧道 4443 / 管理后台 18080)
DOMAIN=你的服务器IP WEB_ADMIN_PASS=你的管理员密码 bash start-onenat.sh
# 3. 浏览器打开 http://你的服务器IP:18080 (初始 admin 密码见启动输出)⬆️ 从 r2026.09.01 升级
- 数据文件
onenat-dashboard.json向后兼容,直接替换二进制重启即可;存量映射未绑定应用仍可用(新增映射强制选应用); - 如需启用 AI 凭证读取,请在 后台 API KEY 页对目标 KEY 打开「允许读取凭证」;
- 建议同步设置
ONENAT_SECRET_KEY(或保留onenat-secret.key)——应用/映射凭证加密主密钥,丢失后已存凭证需重新录入。
oneNat Release r2026.09.01
oneNat Release r2026.09.01
🎉 oneNat (v1.7.0 Fork & Managed Platform) 首个正式发行版本发布!
oneNat 是一款基于 ngrok 协议内核重构的高性能、全功能内网穿透与受管隧道平台,内置 Web 管理后台、多用户权限隔离、AI Agent SKILL 资源接入与跨平台一键部署能力。
🌟 核心特性一览
1. 🖥️ Web 管理后台 (Dashboard)
- 多用户角色隔离:支持
admin(管理员)与user(普通用户)两级权限; - 隧道与端口映射全生命周期管理:在 Web 界面可视化增删改查 TCP/HTTP/HTTPS 端口映射;
- 配置云端动态下发 (ConfigSync):Web 端修改端口映射后,在线客户端实时生效且无需重启;
- 流量与连接可观测:支持最近客户端连接记录、7 天流量统计图表与实时在线状态展示;
- 移动端适配:支持手机端自适应排版与抽屉式导航菜单。
2. ⚡ 跨平台一键安装 (One-Click Deployment)
- Linux & macOS (含 macOS 11 Big Sur 兼容):
自动识别系统与 CPU 架构(amd64 / arm64 / arm),支持实时下载进度条,并自动注册
curl -sSL http://<服务端IP>:18080/install.sh | bash -s -- <隧道ID> <KEY>
systemd或launchd常驻服务。 - Windows (x86_64 / ARM64):
一键下载安装并注册当前用户开机自启(免管理员权限)。
powershell -NoProfile -ExecutionPolicy Bypass -Command "& ([scriptblock]::Create((irm 'http://<服务端IP>:18080/install.ps1'))) -TunnelId '<隧道ID>' -Key '<KEY>'"
3. 🤖 AI Agent SKILL 接入
- 用户自管 API KEY:每个用户可自主创建/吊销独立的 AI 访问凭据;
- 只读权限约束:AI 仅具备隧道资源列表查询与连接权限,无创建/修改权限,保障内网安全;
- 一键安装提示词:复制一行提示词即可让 AI 助手自动挂载 oneNat 技能并使用专属内网资源。
4. 🛡️ 全链路安全加固
- LocalAddr 限制与 SSRF 防御:默认仅限转发
127.0.0.1/localhost,防止内网跳板穿透; - RegProxy 连接防劫持:引入基于一次性 Nonce Token 与隧道密钥的 HMAC-SHA256 签名校验;
- 特权端口与配额保护:禁止映射到
< 1024系统端口,单隧道映射数量配额限制; - HTTP 子域名多租户防抢占:数据层绑定子域名所有权;
- 原生 HTTPS 支持:服务端支持配置 TLS 证书并在安全连接下为 Session Cookie 自动标记
Secure。
📦 发行包与客户端下载 (Assets)
| 文件名 | 平台 / 说明 | 大小 |
|---|---|---|
oneNat-r2026.09.01.tar.gz |
服务端完整安装包 (含 4 平台服务端 + 启动脚本 + 7 平台客户端分发) | ~80 MB |
onenat-client-linux-amd64.tar.gz |
Linux x86_64 独立客户端 | ~7.6 MB |
onenat-client-linux-arm64.tar.gz |
Linux ARM64 独立客户端 | ~7.1 MB |
onenat-client-linux-arm.tar.gz |
Linux ARM 独立客户端 | ~7.1 MB |
onenat-client-darwin-arm64.tar.gz |
macOS Apple Silicon 独立客户端 | ~7.2 MB |
onenat-client-darwin-amd64.tar.gz |
macOS Intel 独立客户端 | ~7.6 MB |
onenat-client-windows-amd64.zip |
Windows x86_64 独立客户端 | ~7.7 MB |
onenat-client-windows-arm64.zip |
Windows ARM64 独立客户端 | ~7.1 MB |
checksums.txt |
SHA256 文件校验和 | - |
🚀 服务端快速启动
# 1. 解压服务端
tar -xzf oneNat-r2026.09.01.tar.gz && cd oneNat-r2026.09.01
# 2. 启动服务 (默认端口: 隧道 4443 / 管理后台 18080)
DOMAIN=你的服务器IP WEB_ADMIN_PASS=你的管理员密码 bash start-onenat.sh
# 3. 访问 Web 管理后台: http://你的服务器IP:18080