Skip to content

ProxyGW v1.5.0: Pure Architecture & Observability

Choose a tag to compare

@zlylong zlylong released this 18 Apr 18:14
· 609 commits to main since this release

🚀 Features & Architectural Purity

  • 架构净化 (Pure Architecture): 彻底移除了 Hysteria2、Sing-box 以及相关生态的残留支持,保持纯净的 Xray + Mosdns + FRR/Nftables 极简底层架构。
  • 功能裁剪: 彻底移除了“机场订阅”功能 (Backend 定时轮询与 Frontend UI)。网关定位回归纯粹的企业/家庭级节点管控,拒绝第三方不规范配置导致的崩溃隐患,确保极致稳定。
  • 节点默认路由: 实现了“默认节点”功能。在节点管理页可一键设置主代理节点,底层配置将热更新。
  • 精准的无匹配兜底直连 (Fallback to Direct): 全面支持 Xray 原生的 !cn 倒装匹配模式。彻底移除了旧版的强制兜底代理规则,现在“未命中任何规则的流量”将 100% 精准穿透走 Direct 直连,杜绝国内流量意外绕回节点。
  • 全景流量大盘: 全新设计的前端仪表盘,替换掉冗长的静态架构介绍。利用底层 Xray 的高频 tproxy_in 标签提取与独立的后端轮询进程,带来毫秒级的上下行实时网速看板,以及持久化的高精度 24H 累计流量统计。
  • 侧边栏优化: 重排了全局导航菜单的优先级顺序并进行了文案瘦身(如改为“系统状态”、“实时连接追踪”、“设备分流规则”等),大幅提高日常运维的操作直觉。

🛡️ Security & Hardening (安全与健壮性)

  • 抵御 MITM 的严格指纹验证 (Strict HostKey Verification): 在远程节点自动部署模块,废除了极度危险的 Trust-On-First-Use (TOFU) 盲信写入机制。首连必须核对 SSH HostKey(指纹支持 SHA256 / Base64),完全阻断了在跨洋网络遭遇中间人劫持并持久化注入假 Key 的攻击窗口。
  • 消除远程命令注入面 (RCE Mitigation): 重构了生成远程部署 Bash 脚本的内部实现。彻底弃用脆弱的字符串拼接 JSON,改用 json.Marshal 加 Base64 双重封口渲染配置文本,杜绝因节点名称存在引号、回车等特俗字符而引发的代码污染或远端系统崩溃。
  • 底层应用强隔离 (Concurrency Isolation): 引入了严厉的 applyMutex 互斥锁,彻底杜绝了高并发修改分流规则、添加节点时引起的 Mosdns/Xray 配置文件并行写入撕裂与文件锁定冲突。同时对配置写入的静默失败加入了强拦截拦截,配置保存失败立刻中断服务重启并向上游抛错。
  • 部署并发队列限制 (Bounded Semaphore): 针对 Batch Deploy(批量部署 100+ 节点)的灾难级 Goroutine 井喷问题,新增了全局 Channel 容量锁(最大并行 3)。现在无论是批量建服还是定时检查,底层 SSH 握手都不会瞬间挤爆网关的 CPU 资源和系统 FD(文件句柄)池。
  • Fail-Fast 启动保护: 治理了 initDB() 函数中对于 SQL 执行返回报错的漠视。如今网关启动时的核心表初始化一旦因为磁盘损坏或环境问题失败,进程将立刻 Panic(故障快停),绝对不带病运行。