Releases: PBH-BTN/PeerBanHelper
v5.0.6
v5.0.5
错误修复
- 修复 BTN 封禁列表提交缓存的内存泄漏问题,这可能导致 PBH 长时间运行时,内存无法释放并导致崩溃
- 自动更新 Torrent 的数据库数据(如果已存在),而不是直接忽略并显示首次插入的信息,这导致在索引元数据时封禁的 Torrent,此后一直显示不正确的数据
Docker 用户
DockerHub: ghostchu/peerbanhelper:v5.0.5
阿里云国内镜像加速: registry.cn-hangzhou.aliyuncs.com/ghostchu/peerbanhelper:v5.0.5
v5.0.4
新功能
- 当下载器连续多次登陆失败(>= 15次)时,暂停 30 分钟,以避免持续请求导致 IP 一直被下载器封禁(如:qBittorrent)
错误修复
- 修复一个 SQL 唯一约束错误
- 修复 JavaFx 模式下,托盘消息错误触发为对话框消息的问题
- 修复配置文件损坏时,PBH 尝试调用未初始化的 GuiManager 弹出对话框导致空指针的问题
Docker 用户
DockerHub: ghostchu/peerbanhelper:v5.0.4
阿里云国内镜像加速: registry.cn-hangzhou.aliyuncs.com/ghostchu/peerbanhelper:v5.0.4
v5.0.3
默认配置文件设置改进
- 多拨侦测现在 IPV6 前缀长度截取
/60
而不是/64
- 现在默认订阅 all-in-one 规则
错误修复
- 修复种子 Peers 列表出现重复条目的问题
- 修复一些边缘情况下,启用了增量封禁开关的 qBittorrent 可能无法封禁部分 IP 地址的问题
- 修复一个显示问题,导致 WebUI 显示的封禁数量与提供的 blocklist 不匹配的问题,现在统一进行去重显示
- 修复规则统计 UI 界面,匹配器名称可能显示不正确的问题
Docker 用户
DockerHub: ghostchu/peerbanhelper:v5.0.3
阿里云国内镜像加速: registry.cn-hangzhou.aliyuncs.com/ghostchu/peerbanhelper:v5.0.3
v5.0.2
更改
- 重新封禁 Xunlei 0.0.1.9 (-XL0019-) 参见 [社区通报] 重新封禁 -XL0019- (Xunlei 0.0.1.9) 客户端
1.1. 升级后,与 0019 有关的白名单规则将在配置文件升级时被自动移除
错误修复
- GUI 安全模式日志换行错误
- 修复 5.0.1 中数据库错误的问题
Docker 用户
DockerHub: ghostchu/peerbanhelper:v5.0.2
阿里云国内镜像加速: registry.cn-hangzhou.aliyuncs.com/ghostchu/peerbanhelper:v5.0.2
v5.0.1
更改
- 重新封禁 Xunlei 0.0.1.9 (-XL0019-) 参见 [社区通报] 重新封禁 -XL0019- (Xunlei 0.0.1.9) 客户端
1.1. 升级后,与 0019 有关的白名单规则将在配置文件升级时被自动移除
错误修复
- GUI 安全模式日志换行错误
Docker 用户
DockerHub: ghostchu/peerbanhelper:v5.0.1
阿里云国内镜像加速: registry.cn-hangzhou.aliyuncs.com/ghostchu/peerbanhelper:v5.0.1
v5.0.0
欢迎来到 v5.0.0 正式版!
破坏性更改
- 数据库部分得到了大修,不兼容之前的数据库文件。封禁历史记录、封禁列表和统计数据将不会继承,其它配置等数据将会平滑升级
新功能
- GeoIP 模块现在也使用来自 ljxi/GeoCN 的 IP 数据
- 位于中国大陆的 IP 地址位置现在将能够精确到区县
- 位于中国大陆的 IP 地址现在将显示网络类型,支持以下网络类型的显示:
- 宽带
- 基站
- 政企专线
- 业务平台
- 骨干网
- IP专网
- 网吧
- 物联网
- 数据中心
- 此功能需要配置 GeoIP 库
- 各个功能模块的封禁时间现在可以独立调整,或跟随全局设定
- 封禁列表现在显示触发封禁的规则
- 用户现在能够在封禁列表界面上解除对特定 IP 的封禁
- 前后端现在全面支持 i18n,欢迎提交翻译 PR!
- PBH WebUI 现在添加了暴力破解防护
- PBH WebAPI 现在默认禁止 CORS 跨站请求,除非用户手动启用
- 现在允许用户从外部文件系统加载 WebUI 文件
- Peers 列表现在将显示 Peer Flags (仅在支持的下载器上显示)
- 配置文件 (config.yml) 新增代理服务器设置
- PeerID 统计图表现在支持合并同类客户端查看
- 封禁日志现在可以按时间指定查询,时间粒度新增按小时
用户交互体验改进
- GUI 日志框现在更换为了 ListView,并根据日志等级,为日志行染色,错误、提示、警告一目了然
- 新用户安装时不再弹窗提醒退出,而是直接启动,并在控制台引导进入 WebUI (并显示 WebUI Token)
- 配置文件升级时,将对丢失配置文件注释的配置项重新复制注释
- WebUI Peers 列表的种子和 Peers 现在按实时上传速度,倒序排序,方便用户快速定位高上传带宽的种子/Peers
- 多项 WebUI 细节优化
- 下载器出现错误时,WebUI 将提供更加有用的悬浮 Tooltip 提示信息
- 下载器出现错误时,控制台将提供更加有用的日志提示信息
性能优化
- 现在 Peers 封禁检查操作支持多线程并发
- GeoIP 查询任务现在采用懒加载机制,仅在需要时才查询 IP 的 Geo 信息
- 重构缓存系统,极大的改善了缓存命中率,并降低了 CPU 时间
- 现在 PBH WebUI 与 PBH 通讯、PBH 与下载器通讯,皆支持 gzip, deflate 压缩
- 调整 AviaorScript 缓存,不缓存编译结果以节省 RAM 使用
- 对于频繁返回的 CheckResult,进行静态重用
- 其它性能优化
错误修复
- 测试下载器配置创建的临时 Downloader 没有正确关闭导致资源泄漏
- 修复 WebUI 发生更改时,因缓存头设置指定错误,用户可能看到白屏的问题(您需要手动清理一次浏览器缓存,才能使此修复生效)
- 修复封禁日志、封禁列表中,当流量数据为 -1 时,渲染为 NaN Undefined 的问题
- 修复用户同时添加 Transmission 和其它非 Transmission 下载器时,Transmission 封禁可能会失效的问题
- 修复初始化 BTN 失败后,PBH 不再尝试重新初始化 BTN 的问题
- 修复提交封禁列表失败后,本次提交的封禁列表被就地丢弃,而不是排队到下次重试窗口的问题
- 修复 qBittorrent 的部分不交换 Client Name 的 Peers,获取 Client Name 无效/无意义的问题,现在将截取其 16 进制 PeerID 对应的前 8 个 ASCII 字符的字节,并转化为可读文字
- 修复 Transmission 和 qBittorrent 混合使用时,操作列表可能混入其它下载的数据,导致 Transmission RPC 调用时出现类型转换错误崩溃,并导致种子无法被重启、还原状态
- 修复编辑订阅规则后,编辑成功但却提示错误的问题
- 修复订阅规则中存在以
#
开头的注释行时,订阅规则解析可能失败的问题 - 修复 qBittorrent 下载器有时处理 PeerID 可能返回错误结果导致伪装检测脚本检测出错的问题
- 修复触发 BanWave Watchdog 时,创建对话框时出现 JavaFx 线程错误
- 修复创建 HTTP 协议为 HTTP 2.0 的下载器配置时,出现错误的问题
杂项
- 微调 qBittorrent 增量封禁逻辑
- 调整 docker-compose.yml / Docker 示例命令,给予 PBH 更多时间用来安全退出
- 封禁列表不再保存到 banlist.dump,而是存储到数据库
- 现在每个小时都会自动保存一次封禁列表
- 现在 PBH 启动完成后,不会清空暂存的封禁列表
- 32 位有关的支持库文件现在不再参与编译
- 现在存储时不再硬编码字符串,而是存储翻译组件,以支持前端动态 i18n
- 用户脚本现在支持返回 String 类型返回值作为封禁理由
- 如果返回值以 @ 打头,则设置 Action 为 SKIP
- Heap 最大内存从 256MB 调整为 386MB,除了 PBH 需要更多一点的内存以外,386 这个数字灵感来自 Intel 80386 CPU 名称
- PeerID/ClientName 模块不再等待流量,而是在有 PeerID/ClientName 获取成功后,立刻停止等待,进行检查
Docker 用户
DockerHub: ghostchu/peerbanhelper:v5.0.0
阿里云国内镜像加速: registry.cn-hangzhou.aliyuncs.com/ghostchu/peerbanhelper:v5.0.0
v5.0.0-beta1
警告:测试版(Beta)是 PeerBanHelper 用于测试新功能/逻辑的特殊版本,可能存在代码错误并导致您的数据损坏。在使用测试版本前,请注意对数据进行妥善备份。我们不建议非熟练用户使用任何非正式版本。
破坏性更改
- 数据库部分得到了大修,不兼容之前的数据库文件。封禁历史记录和统计数据将不会继承
新功能
- GeoIP 模块现在也使用来自 ljxi/GeoCN 的 IP 数据
- 位于中国大陆的 IP 地址位置现在将能够精确到区县
- 位于中国大陆的 IP 地址现在将显示网络类型,支持以下网络类型的显示:
- 宽带
- 基站
- 政企专线
- 业务平台
- 骨干网
- IP专网
- 网吧
- 物联网
- 数据中心
- 各个功能模块的封禁时间现在可以独立调整,或跟随全局设定
- 封禁列表现在显示触发封禁的规则
- 用户现在能够在封禁列表界面上解除对特定 IP 的封禁
- 前后端现在全面支持 i18n,欢迎提交翻译 PR!
- PBH WebUI 现在添加了暴力破解防护
- PBH WebAPI 现在默认禁止 CORS 跨站请求,除非用户手动启用
- 现在允许用户从外部文件系统加载 WebUI 文件
- Peers 列表现在将显示 Peer Flags (仅在支持的下载器上显示)
- 配置文件 (config.yml) 新增代理服务器设置
用户交互体验改进
- GUI 日志框现在更换为了 ListView,并根据日志等级,为日志行染色,错误、提示、警告一目了然
- 新用户安装时不再弹窗提醒退出,而是直接启动,并在控制台引导进入 WebUI (并显示 WebUI Token)
- 配置文件升级时,将对丢失配置文件注释的配置项重新复制注释
- WebUI Peers 列表的种子和 Peers 现在按实时上传速度,倒序排序,方便用户快速定位高上传带宽的种子/Peers
- 多项 WebUI 细节优化
- 下载器出现错误时,WebUI 将提供更加有用的悬浮 Tooltip 提示信息
- 下载器出现错误时,控制台将提供更加有用的日志提示信息
性能优化
- 现在 Peers 封禁检查操作支持多线程并发
- GeoIP 查询任务现在采用懒加载机制,仅在需要时才查询 IP 的 Geo 信息
- 重构缓存系统,极大的改善了缓存命中率,并降低了 CPU 时间
- 现在 PBH WebUI 与 PBH 通讯、PBH 与下载器通讯,皆支持 gzip, deflate 压缩
- 调整 AviaorScript 缓存,不缓存编译结果以节省 RAM 使用
- 对于频繁返回的 CheckResult,进行静态重用
- 其它性能优化
错误修复
- 测试下载器配置创建的临时 Downloader 没有正确关闭导致资源泄漏
- 修复 WebUI 发生更改时,因缓存头设置指定错误,用户可能看到白屏的问题(您需要手动清理一次浏览器缓存,才能使此修复生效)
- 修复封禁日志、封禁列表中,当流量数据为 -1 时,渲染为 NaN Undefined 的问题
- 修复用户同时添加 Transmission 和其它非 Transmission 下载器时,Transmission 封禁可能会失效的问题
- 修复初始化 BTN 失败后,PBH 不再尝试重新初始化 BTN 的问题
- 修复提交封禁列表失败后,本次提交的封禁列表被就地丢弃,而不是排队到下次重试窗口的问题
- 修复 qBittorrent 的部分不交换 Client Name 的 Peers,获取 Client Name 无效/无意义的问题,现在将截取其 16 进制 PeerID 对应的前 8 个 ASCII 字符的字节,并转化为可读文字
- 修复 Transmission 和 qBittorrent 混合使用时,操作列表可能混入其它下载的数据,导致 Transmission RPC 调用时出现类型转换错误崩溃,并导致种子无法被重启、还原状态
- 修复编辑订阅规则后,编辑成功但却提示错误的问题
- 修复订阅规则中存在以
#
开头的注释行时,订阅规则解析可能失败的问题 - 修复 qBittorrent 下载器有时处理 PeerID 可能返回错误结果导致伪装检测脚本检测出错的问题
- 修复触发 BanWave Watchdog 时,创建对话框时出现 JavaFx 线程错误
- 修复创建 HTTP 协议为 HTTP 2.0 的下载器配置时,出现错误的问题
杂项
- 微调 qBittorrent 增量封禁逻辑
- 调整 docker-compose.yml / Docker 示例命令,给予 PBH 更多时间用来安全退出
- 封禁列表不再保存到 banlist.dump,而是存储到数据库
- 现在每个小时都会自动保存一次封禁列表
- 现在 PBH 启动完成后,不会清空暂存的封禁列表
- 32 位有关的支持库文件现在不再参与编译
- 现在存储时不再硬编码字符串,而是存储翻译组件,以支持前端动态 i18n
- 用户脚本现在支持返回 String 类型返回值作为封禁理由
- 如果返回值以 @ 打头,则设置 Action 为 SKIP
- Heap 最大内存从 256MB 调整为 386MB,除了 PBH 需要更多一点的内存以外,386 这个数字灵感来自 Intel 80386 CPU 名称
- PeerID/ClientName 模块不再等待流量,而是在有 PeerID/ClientName 获取成功后,立刻停止等待,进行检查
Docker 用户
请拉取测试镜像:ghostchu/peerbanhelper-snapshot:ff47db6
v4.4.1
v4.4.0 - XM0001
规则更新
- 新增
-XM0001-
和xm/torrent
特征到 PeerID/ClientName 黑名单中,已确认为hp/torrent
变种- 由 BTN 用户 @yujiangqaq 于 2024/07/03 20:31:24 提交的数据中首次发现,关联 IP 地址
221.11.96.74
处于 hp/torrent 规则集中 - 所有已连接到 BTN 网络的 PBH 客户端将在 20 分钟内自动更新新的云端规则
- 离线用户请更新您的 PBH 版本,或手动编辑规则文件
- 由 BTN 用户 @yujiangqaq 于 2024/07/03 20:31:24 提交的数据中首次发现,关联 IP 地址
新增功能
Docker 用户
全球源:ghostchu/peerbanhelper:v4.4.0
阿里云国内镜像源:registry.cn-hangzhou.aliyuncs.com/ghostchu/peerbanhelper:v4.4.0