Repository navigation
Releases: Elegying/AnyTLS_Panel
Release list
AnyTLS Panel v1.4.19
修复
- 修复长账号名撑破卡片、详情标题与分享节点预览横向溢出。
- 修复手机表格将名称、日期和说明挤成窄列,调整窄屏标题与操作区换行。
- 账号设置、重命名和添加规则沿用现有表单反馈:校验失败保留草稿、定位错误字段,提交中防止重复操作。
- 无活跃专线账号时阻止进入无法完成的创建流程,提供明确的账号管理入口。
- 提高深色背景上的小字与检测详情链接对比度。
- 检测结果自动过期刷新时保留已展开详情及键盘焦点,避免打断阅读。
验证
- 在独立数据库和虚构数据环境实际操作页面,覆盖 320、390、768、1280 像素宽度、长名称、空数据、错误草稿、服务创建/续期/暂停恢复及键盘操作。
- 新增账号设置、重命名、规则校验回滚、无活跃账号入口及自动过期焦点回归测试。
AnyTLS Panel v1.4.18
修复
- 上游订阅的响应头与正文共同受绝对截止时间约束,持续慢速发送不能长期占用同步线程;超时断开不会被误认为正常正文结束。
- 累计流量上报增加持久化采样序号,拒绝乱序样本,重复请求不重复记账;数据库 schema 9 保留原有计数基线。
- VLESS、Trojan 的 H2/HTTP 传输转换保留 Host 与路径,避免生成残缺的 Clash 节点配置。
- 分享链接轮换阻止重复并发操作,显示处理中状态,并在失败后提供核对当前链接的恢复提示。
- 采集器使用随机私有临时文件保存序号,避免异常退出残留文件在 PID 复用时阻断上报。
升级说明
- 节点侧应同步更新 traffic_collector.sh,保留采集器 ID 和 .sequence 文件;可先升级采集器,再升级面板。
- 旧采集器不传序号时仍支持单调累计值;计数下降返回 409,升级采集器后可安全上报重置。
AnyTLS Panel v1.4.17
修复
-
Caddy 慢请求集成检查兼容请求取消的 499 返回码,并通过后端访问日志确认半包没有转发至应用。
-
定时节点检测在任务领取后重新检查总预算,预算耗尽时不再启动新探测,并释放检测占用。
-
流量累计计数接口要求采集器 ID 为字符串,拒绝数字 ID 与已有字符串 ID 碰撞,避免错误重置基线并重复累计。
-
VMess URI 与 Clash YAML 统一拒绝非法加密方式类型、布尔或小数 alterId 及负数,防止保存不可用配置或悄悄改写参数。
-
多地址入口检测的 TCP 延迟只计算当前建连耗时,不再累加先前地址的连接或握手等待。
-
新增和迁移用户服务在同一写事务内检查账号状态并保存,避免并发停用账号绕过前置检查;失败分支主动回滚。
-
订阅 HTTP 正文提前结束且未满足 Content-Length 时判为不完整响应,继续安全地址回退;同步失败保留已有节点。
-
上游订阅 URL 的非 ASCII 路径及查询参数使用 UTF-8 百分号编码,保留已有百分号转义、加号和参数分隔符。
-
新增账号、单账号及批量同步在保存节点前校验当前重命名规则,拒绝名称扩展超限并回滚,避免成功保存后订阅不可用。
-
流量采集器按十进制校验端口并同步计数规则标记,拒绝超长整数溢出与非法端口。
-
定时节点检测汇总将 TLS 失败纳入 failed,避免已保存的失败证据在任务日志中漏计。
-
修改密码及登录升级旧密码哈希时原子核对原凭据与会话版本,防止并发旧请求覆盖新密码;冲突时要求重新登录。
-
上游订阅地址显式端口 0 在 DNS 查询前被拒绝,不再被替换为默认端口。
-
上游订阅请求的 Host 头使用 IDNA 编码,修复国际化域名发送失败或编码不正确的问题。
-
账号流量令牌生成拒绝小数及其他非整数类型,避免截断后生成其他账号的有效令牌。
-
不存在账号的批量节点检测返回 404,避免误报为成功的空任务;已有空账号仍正常返回空结果。
-
Hysteria2/hy2 链接省略端口时使用标准默认 443,URI 与 Clash 双向转换保留 pinSHA256 证书固定约束。
-
Hysteria2 导出的跳过证书校验选项使用官方 insecure 字段,避免内部兼容别名掩盖外部客户端无法识别的问题。
-
部署与备份的数值参数按十进制规范化并在运算前限制位数,修复前导零八进制误读及超长整数溢出绕过范围限制。
-
单账号与批量同步原子保存上游流量及对应周期,避免重置日变化后刚同步的流量被清零;无上游流量样本时保留本地周期标记。
-
Shadowsocks 的 Base64 凭据解码后原样保留密码,明文 URI 继续执行 URL 解码,修复含
%xx的密码被改写。 -
代理检测在总时间预算内依次尝试已验证的入口地址,避免首个 IP 不可达时误判;保留 SNI、Host、证书校验及核心异常处理。
-
后端批量节点检测优先处理未检测或最久未检测的节点,重复调用可覆盖上轮预算内未处理的节点。
-
新增回归检查,覆盖两类同步、正常月度重置、凭据往返转换、地址回退预算和批量检测进度。
-
客户服务导入在事务内检查账号名称唯一性,拒绝歧义并整批回滚;微信号与备注上限统一使用页面的共享限制。
-
删除重命名规则前后校验订阅可生成性,阻止正常配置因删除而失效,同时允许逐步移除非法历史规则。
-
上游 STATUS 统计逐字段校验数值范围和有效日期,非法字段不再覆盖有效响应头或已保存配额;合并上传、下载后重新计算累计量。
-
用户服务详情及账号 JSON 接口在读取前执行到期流量重置,避免跨月展示旧周期数据。
-
新增账号保留上游零配额,账号列表、详情及仪表盘不再将零配额替换为 250 GB 或产生错误使用率提醒。
-
订阅拉取和入口检测为后续公网 IP 保留连接预算,首个 IP 连接超时不再阻止地址回退。
-
地址回退覆盖 TLS 握手及订阅响应读取,避免首个地址耗尽后续地址预算;TLS 失败后继续检测其他地址,全部失败时保留已有 TCP/TLS 分层证据。
-
粘贴明文或 Base64 订阅时同步读取 STATUS 流量、配额及到期日;元数据行允许首尾空白,上传与下载合计越界时忽略该组计数。
-
VMess 配置比较忽略 Base64 JSON 中的显示名称,保留仅改名节点的健康记录;凭据或连接参数变化仍清除旧证据。
-
已关联暂停或停用专线的用户服务可保留原账号并编辑资料;新增服务或迁移到其他未启用账号仍被拒绝,编辑不会恢复专线或改变订阅令牌。
-
日常备份使用正确编码的只读 SQLite 文件 URI,避免数据库路径中的
#、?、%被解释为 URI 语法后备份到错误文件。 -
VMess 分享链接与 Clash 之间保留标准 gRPC 服务名、HTTP 伪装及 H2 域名/路径,兼容原有 serviceName 字段;高级 HTTP 参数仍要求完整 YAML 输出。
-
VMess 转换保留标准 insecure、证书指纹 pcs 和独立证书名称 vcn,入口探测对不能执行的证书约束明确标记未验证,真实核心继续接收完整约束。
-
拒绝 VMess 布尔、小数端口及非法文本选项,异常传输配置不会阻断同一订阅内其他正常节点的解析。
AnyTLS Panel v1.4.16
修复与验证
- 真实代理检测读取固定目标的已完成校验结果,只有 HTTPS 预期 204 被确认才显示验证通过;修复核心延迟接口返回成功时,目标 403/500 仍被误报为 204 的问题。
- 核心启动、控制接口及不完整响应归为检测未完成,保留上次完整结果;仅已完成的代理请求失败进入节点失败状态。
- 固定入口 IP 时保留 WebSocket 默认 Host,尊重显式 Host 与独立 SNI,避免依赖域名分流的节点被误判。
- 旧版代理成功记录显示为待复测,不再计入当前验证通过;新结果继续使用原有 15 分钟有效期,入口检查语义不变。
- 扩展真实核心回归,覆盖目标 403/500、错误密码、错误证书固定值和 WebSocket Host;修复 macOS 健康恢复测试对系统 flock 的不必要依赖。
兼容性
- 无新增生产依赖或数据库迁移,保留用户、分享链接、节点配置、屏蔽规则和既有定时任务设置。
- 升级后曾由旧版核心取得的“代理验证通过”需重新检测;仍明确区分面板服务器证据与客户端网络可达性。
AnyTLS Panel v1.4.15
修复与验证
- 签名安装入口及部署主流程显式使用适合低权限服务读取代码的创建权限,修复调用方
umask 077导致新虚拟环境无法启动的问题;签名暂存目录仍为 0700,密钥和备份继续使用各自的严格权限。 - 子 Shell 的部署失败交由主 Shell 回滚,避免同一失败重复还原、重复重启;清理也只由部署主进程执行。
- 增加签名安装器权限隔离、子 Shell 失败只回滚一次的回归,真实 Ubuntu 部署/更新/回滚测试统一从
umask 077启动。 - 正式交付下列 1.4.14 的全部订阅、安全、监控、界面和部署改进。1.4.14 的首次部署失败后已自动恢复旧版本,该版本未公开发布;本版完成修复后重新验证。
AnyTLS Panel v1.4.13
Fixed
- Caddy 在请求进入应用线程前缓冲完整请求体,并限制大小、请求头和请求体读取时间;增加真实慢请求与超限上传回归。
- 修复仪表盘健康状态刷新脚本异常、专线停用后服务状态误报、最大到期日期导致详情页崩溃,以及分享说明与实际过滤不一致。
- 对订阅重命名后的名称去重,同时更新链式代理引用;屏蔽、缺失、歧义或循环依赖不会降级为直连。
- 完整保存 Clash 节点参数;补齐通用链接的 ALPN 和 TUIC 参数;不能完整转换时明确要求兼容格式,SSRVPN 自动使用 YAML。
- 批量同步按 4 个账号分批拉取和提交,降低峰值内存;任务锁跨 Worker 生效,进程退出后自动释放。
- 健康恢复命令添加超时,单元预算提高到 90 秒,覆盖双组件恢复及复查。
- 统一北京时间显示,分享弹窗增加实际输出数量、节点名称和 Clash 链接。
Compatibility
- 数据库迁移 8 为节点增加完整配置字段;已有缓存继续可用,下次成功同步后保存完整参数。无新增运行依赖。
- 通用格式无法表达的节点参数返回 HTTP 406,改用
?format=clash;普通订阅地址及分享令牌保持兼容。 - 默认 Caddy 读取预算为请求头 10 秒、请求体 30 秒、空闲连接 2 分钟。共用监听器的站点也受读取预算影响;已有自定义服务器选项须自行设置这些期限,部署会保留其配置并拒绝不满足预算的更新。
AnyTLS Panel v1.4.12
Added
- 订阅设置增加节点关键词屏蔽总开关,按原始节点名称匹配,支持多个关键词与英文大小写忽略。
- 账号分享、用户分享和管理端合并订阅统一过滤;兼容 Base64 与 Clash,关闭后恢复输出,不删除节点。
Fixed
- 首页节点待办改为数量汇总和监控入口,不再渲染全部节点明细,减少浏览器状态数据。
Compatibility
- 数据库迁移 7 新增屏蔽设置表,默认关闭;无新增依赖。全部匹配时返回空订阅,客户端可能保留旧节点。
AnyTLS Panel v1.4.11
Changed
- 监控页按入口及连接参数合并重复账号节点,每组仅展示、检测一个稳定代表节点,并显示关联账号与配置数量。
- SNI、TLS 验证模式、协议或传输参数不同的节点保持独立,无法解析的配置不参与合并。
- 复用现有单项和批量检测接口,不复制账号认证结果,不改动账号详情、订阅数据或数据库结构。
AnyTLS Panel v1.4.10
Fixed
- 旧版检测记录显示“旧版结果待复测”,说明需点击检测取得分层结果,避免与新结果超时混淆。
- 批量检测优先处理待确认及最早尝试的节点,达到每轮两分钟上限后可继续剩余项目,避免大列表反复检测前几项。
- 批量请求增加 400 毫秒间隔,保留最多四路并发与原有限流;遇到限流遵循 Retry-After 暂停并保留待测队列和已有证据。
- 监控、账号详情及仪表盘使用服务器计算的结果年龄和浏览器单调计时,避免设备时钟偏差将新结果误判为过期。
Compatibility
- 无数据库迁移或新依赖,仍采用 15 分钟有效期与手动复测,不改变代理验证能力或出站安全边界。
AnyTLS Panel v1.4.9
Fixed
- 节点检测不再把 TCP/TLS 入口可达或 TLS 异常标为代理在线;分层记录 DNS、TCP、TLS、代理认证和代理访问,未执行的阶段明确标注。
- TLS 默认执行证书和主机名验证,使用节点 SNI、ALPN;显式跳过证书验证的配置会标明验证模式。QUIC、REALITY、插件等未支持的部分不冒充成功。
- 监控页、账号详情与仪表盘统一结果语义、UTC 时间及 15 分钟有效期;旧在线记录仅作历史参考,异常保留上次证据。
- 检测按节点配置独立持久化;同步时仅在连接配置不变时保留结果,避免凭据、SNI 或传输变更沿用旧结果。
- 批量检测增加进度、并发与总时间限制,使用数据库短租约防止重复检测;手机宽度下检测信息纵向呈现。
Compatibility
- 数据库 schema 6 为节点增加分层结果、最近尝试信息和探测租约表;迁移可重复执行,不将旧
is_online=1升级为代理验证通过。 - 本版本仍只执行入口检测,没有任何协议完成代理认证或代理访问验证;API
online仅保留入口兼容含义,新调用方应读取health。 /api/check-by-host仅接受已有且唯一的节点配置;同入口多配置返回 409,改用节点 ID 检测。