PeerBanHelper - 封禁吸血刷流作恶的 Peers,现在支持 qBittorrent、Transmission、Deluge 和 BiglyBT 下载器

4 天前
 AkaGhost

在 3 个月前,我在 V2EX 上首次分享了 PeerBanHelper这个小工具,用来和 hp/torrent 、dt/torrent 进行技术对抗。 在这之后越来越多的朋友们加入了 PBH 社区,并贡献了许多关键模块和代码,在此对各位为 PBH 做出贡献的人们说声感谢。

3 个月的更新迭代,现在新推出了 v4.3 版本,除了简单的过滤器,现在更支持伪装检测等等新功能,变化之大我想值得新开一贴再向各位重新介绍一下。

新增支持的下载器

在各位朋友的支持下,我们新扩展了两款下载器的支持,分别是:

只需要分别安装为上述两款 BT 下载器安装扩展插件(Deluge|BiglyBT),就可以连接到 PeerBanHelper 了。

对于还不支持的下载器,可以先使用收集的 IP 规则库,降低影响。

多拨检测

感谢 Github 用户 @CharlesChou73 的出色贡献。PeerBanHelper 新版本现在还支持多拨检测,能够有效检测同一 IP 段下的大量异常用户并封禁它们,例如下图这样的:

连锁封禁

在新的版本里,当特定网段内有 Peers 触发规则被封禁时,它也会连锁封禁同网段下其它的 Peers ,即使它们没有触发多拨检测。

新的 AviatorScript 脚本引擎

新版本中全新添加了 AviatorScript 脚本引擎 以允许 PBH 的用户进行编程,编写自定义的脚本,改变 PBH 的行为。

并由其拓展了两个基于 AviatorScript 的新功能:

PeerID / ClientName 伪装检测

PeerID/ClientName 伪装检测可以检测 PeerID 和 ClientName 不对应的客户端,例如 PeerID 是 -TR2770-,但 ClientName 却标注为 qBittorrent/4.2.5 的客户端。

吸血雷判断

根据特征判断迅雷是否是吸血变种,在 PeerID 和 ClientName 过滤器禁用迅雷检查后,AviatorScript 迅雷检测脚本就可以开始工作,通过 吸血雷快查表 判断迅雷是否是吸血变种,并只封禁吸血的变种。

新的 WebUI

@Gaojianli, @XiaoXice 和 @Kaffu-Chino 三位朋友的加入后,PeerBanHelper 的 WebUI 相比上次发帖的版本也获得了质的飞跃。

除了现在支持通过 WebUI 添加、编辑、删除下载器外,还新增了封禁日志,规则订阅等多个模块。

下载器 封禁名单 封禁日志 规则订阅

Windows 安装程序

之前有朋友提出过建议,在 Windows 上部署困难,现在 PeerBanHelper 也提供了 Windows 的安装程序。和其它的软件一样,双击运行一路下一步就可以安装上了 ;)

对于 Linux 包管理器和 MacOS 的安装包目前还在研究 install4j 中。这些系统的小伙伴还是要手动装一下 JRE 或者使用 Docker 镜像。

社区其它内容

在上次发帖后,PBH 社区也迎来不少 BT 爱好者小伙伴,我们一起建设了一个仓库存放一些可能有用的东西,比如:

获取 PeerBanHelper

https://github.com/PBH-BTN/PeerBanHelper

注:gitcode.com 上面的仓库不是我们传的 :(

最后聊聊别的

最初编写这款工具的时候,仅仅用于临时目的,并希望这种行为能够随着时间逐渐消失。然而现实是,随着时间推移,这种刷流量的方法似乎正在传播的越来越广。
从最初的 hp/torrent, dt/torrent ,开始出现各种变种。从使用自己的 ClietName 变成开始冒充其它合法下载器(例如:qBittorrent 、Transmission 、BitComet 等)。这种情况也从热门种子蔓延到了陈年老种。现在甚至自己新搓的种子,不在任何地方发布,都会被顺着 Tracker, DHT 爬过来吸血。

在这种情况泛滥后,看到不少朋友决定停止做种/屏蔽整个中国 IP 地址。破坏者为了满足一己私欲,正在波及和摧毁整个国内的 BT 生态(特别是在 IPV6 普及后,难得有所好转之时)。

希望 PeerBanHelper 能够帮助到那些仍然愿意把互联网精神继续坚持下去的朋友们。不求回报,帮到就好 ;)

感谢

感谢这些朋友们,为 PBH 贡献代码,或者参与公共资源编写(排名不分先后):

1041 次点击
所在节点    分享创造
8 条回复
povsister
4 天前
感觉不错,已 star
linlord
4 天前
支持✊
Track13
2 天前
真的只有我看不懂这个怎么用吗? readme 写详细点吧。
AkaGhost
1 天前
@Track13 详细的内容在 wiki 里,大致如下:

1. 首先确定一下,部署方式( Docker 、Windows ):
1.1 如果你用 Windows 的话,只需要去 [releases]( https://github.com/PBH-BTN/PeerBanHelper/releases) 里下载最新的 exe 安装程序一路下一步就好了
1.2 如果是 Docker ,则需要根据 Wiki 步骤,拉取镜像,挂载一下 data 目录即可

2. PBH 运行起来后,在 config.yml 中找到自动生成的 Token (可参见 wiki:如何重置 Token 章节)。
2.1 如果你是 Windows 的话,只需要点击窗口菜单的 “程序->打开数据文件存储位置...” 就能找到 config.yml 了
2.2 如果你是 Docker 的话,config.yml 就生成在你挂载的 data 目录底下

3. 添加下载器,这一步很简单,拿着你找到的 Token ,访问 http://127.0.0.1:9898 ,输入 Token 就能登录到 PBH 的网页管理页面。点击添加下载器按钮,选择你要用的下载器即可。
3.1 选择的如果是 qBittorrent 或者 Transmission ,在对话框中填写下载器的 WebUI 地址、用户名和密码即可
3.2 选择的如果是 Deluge 或者 BiglyBT ,则需要根据 README 安装插件,会有专门的分步骤详细教程。
AkaGhost
1 天前
Track13
1 天前
@AkaGhost 我自己摸索出来了,不过对于不常用 bt 下载器的人来说,看见那个连接界面是很难想到 ip 和账号密码是 webui 的。
AkaGhost
1 天前
@Track13 晚些我看看能不能优化一下这部分提示,有问题欢迎随时打开 Issue
yujiang
1 天前
从 2.x 一路用过来,好使的很,挂上去就不用管了😂

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1053476

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX