- 修复 Linux NPC 注册 systemd/SysV 系统服务时引用临时解压路径的问题。
- 防止从
/usr/bin/npc 重复安装时自覆盖二进制。
- 修复客户端请求使用
Connection: close 时,Host 反向代理未等待后端响应完成就关闭连接,导致分块或压缩响应被截断。 - 增加分块响应终止块和客户端半关闭连接的回归测试,保留有限响应与 SSE 的原有清理行为。
- 管理员可设置用户最大客户端数量,普通用户可在配额内自助创建客户端,用户所有客户端共享用户隧道配额。
- 客户端到期时间不得晚于用户到期时间;客户端留空时跟随用户,用户未设置到期时可独立设置或永不过期。
- 客户端新增和编辑支持 Basic 认证、压缩、加密及访问控制,服务端统一执行配额和到期边界校验。
- 表单统一到期控件、配额提示和自动填充策略,透明 NPS Logo 已接入登录页、控制台和文档站。
- 后台顶栏显示当前服务端版本,并在检测到更高的正式 Release 时提示更新。
- 控制台菜单导航采用最新请求生效策略,快速点击或浏览器前进后退不会再出现地址与内容不一致。
- 新增、编辑隧道在任何数据写入和服务重启前验证代理模式,未知模式会被拒绝。
- 通用新增隧道页面的返回列表链接会随所选模式同步更新。
- 同步控制台 UI、平台泛域名与证书热更新改进,统一 NPS、NPC 和 GUI 发布元数据,准备 GitHub Release 与 Docker 版本标签发布。
- 控制台运行时移除 Bootstrap、Bootstrap Table、Popper 和 DataTables 静态资源,表格改用 ZUI 主题下的原生 NPS 表格适配器,保留原有服务端分页、排序与筛选接口。
- 仪表盘按管理员/普通用户权限隔离客户端、隧道、Host、流量和配额,增加客户端/隧道运行状态、NPS 代理入/出站速率、配额与健康告警、最后更新时间和 15 秒局部刷新。
- 修正当前代理连接、内存百分比和资源状态图表,并修复菜单切换和全屏加载闪烁。
- Host SSE、长连接与 WebSocket 双向转发增加持续输出、客户端中断和资源释放回归保护。
- 新增/编辑页统一为清新蓝色 ZUI 响应式表单,桌面端双列、移动端单列,长字段全宽并消除横向滚动。
- 平台泛域名证书和私钥允许同时留空,留空时仅支持 HTTP;编辑隧道和 Host 显示客户端名称与 ID 且客户端 ID 只读,后端不会接受篡改的归属。
- 全局参数新增平台泛域名池,可维护多个
*.example.com、证书与私钥路径;配置保存在 conf/global.json,被引用的域名不能删除或改名。 - Host 新增自定义域名和平台域名两种模式。平台子域名默认生成可修改的 8 位前缀,后端强制校验唯一性并锁定平台证书。
- 证书续期脚本以临时文件原子替换后,新 TLS 连接自动加载有效的新证书;文件损坏、缺失或不匹配时继续使用最近有效证书,不重启服务也不打断已有连接。
- 域名列表按协议展示 HTTP/HTTPS 链接,新增规则诊断,可确认 Host、路径和协议的路由命中与目标选择。
- 新增平台泛域名、证书热更新与规则诊断,并更新域名代理、全局参数、配置持久化和功能索引说明。
- NPS/NPC/GUI 版本统一升级到
1.1.4。
- 正式 Release 改为在所有平台构建完成后统一上传,并附带 SHA-256 校验文件。
- CLI 与 GUI 更新器改为使用
ZiDuNet/nps 的规范语义版本 Release,校验平台资产和 SHA-256,避免误装上游或分支构建。 - 补齐 Linux ARM 通用包和 Windows ARM64 CLI 包,macOS GUI 更新改为替换完整
.app 包。
- 同步上游 Bridge 握手超时保护、HTTP CONNECT 代理鉴权、SOCKS5 认证协商和更新包安全校验。
- 恢复服务端请求客户端局域网地址、客户端断线重连和心跳退出处理。
- 兼容客户端配置别名
server/server_addr、tp/conn_type。
- 默认语言为简体中文,登录页和管理页支持中英文切换。
- 修复 Bootstrap 下拉菜单缺少 Popper.js 导致语言菜单无法打开的问题。
- 管理面板升级为基于 ZUI 3 的运维控制台:统一导航、面板、表格、表单说明、状态与空数据反馈,支持浅色/深色主题、响应式布局和键盘可访问交互。
- 补齐加载、空数据、错误和表单反馈状态,动态详情内容统一转义。
- 客户端连接数配额使用原子预留,流量统计提供一致快照;HTTP、UDP、WebSocket 代理加强并发关闭和资源回收。
- 发布模板不再携带固定弱凭据;首次启动会轮换已知占位值,配置和日志文件权限按最小权限创建。
- 随机凭据使用系统 CSPRNG,IP 白名单授权接口限制为同源访问,日志不再输出授权密码或客户端密钥。
- 当整个
users.json 在升级时缺失,会从仍保留旧凭据的历史客户端恢复对应用户;已存在文件中的删除、停用或到期状态仍严格生效。
- 修复新增和编辑隧道时不同类型字段显示不稳定的问题。
- 字段集合已对齐上游:TCP/UDP 显示目标地址和本地代理,HTTP 代理/SOCKS5 仅显示监听端口和客户端,私密代理/P2P 显示目标和唯一密钥,文件访问显示本地目录和去除前缀。
- Web 模板启动时会从嵌入资源同步覆盖,避免部署后继续读取旧模板。
- 新增
.dockerignore,显著减少构建上下文。 - Dockerfile 使用 Go module 缓存和 BuildKit cache mount。
- GitHub Actions Docker 镜像构建启用 GHA 缓存,并通过 Go 交叉编译减少 QEMU 模拟构建耗时。
- 新增独立
User 模型,用户数据保存到 conf/users.json。 - 管理员可创建普通用户,并将多个客户端分配给同一个用户。
- 普通用户登录后可查看和管理自己名下多个客户端。
- 普通用户权限按客户端归属过滤,不能访问用户管理和全局设置。
- 新增用户级最大隧道数限制。
- 普通隧道和 Host 域名规则统一计入客户端级和用户级配额。
- 用户到期后自动停用,并断开/清理名下客户端运行资源。
- 启动时自动将旧客户端
WebUserName / WebPassword 迁移为普通用户。 - 同名同密码合并;同名不同密码自动生成
用户名_客户端ID。 - 保留旧客户端登录兼容,降低升级风险。
- 修复 GUI 前端
package.json BOM 导致的 Yarn 安装失败。 - GUI 构建统一使用 Yarn 1.22.22。
- 重写 Web 管理面板视觉样式。
- 支持明暗主题切换。
- 优化仪表盘、列表、表单、按钮和图表展示。
- 修复 HTTP/HTTPS/SOCKS5/P2P 等代理连接资源释放问题。
- 修复 mux 连接池 goroutine 和内存泄漏问题。
- 修复登录验证码绕过问题。
- 修复客户端列表网速和连接数显示问题。
- 修复限速零值导致永久阻塞的问题。
- 支持客户端到期时间。
- NPC 菜单新增更新客户端。
- NPS/NPC 菜单显示当前版本号。
- 基于原版 nps 0.26.10 的二次开发基线。
- 修复流量统计。
- 重设计 Web UI。
- 新增 Docker Compose。