站点图标 Ayumi Moe

PeerBanHelper:自动封禁吸血BT客户端

前言

6/24 PBH版本迭代很快(作者太勤快),此教程可能已不再适用新版本

最近有使用BT下载番剧的小伙伴都应该注意到了,最近BT圈子并不太平:
很多人发现自己的上传正在呈指数型上升,稍不注意就被盗刷了以TB为单位的流量……

这是一种非常危险信号,因为这很有可能会导致你的家宽被运营商限制上行 ,导致你的日常上网的体验变得非常糟糕。

毫无疑问这是一种非常低劣的恶意行为,也就是所谓的"吸血"行为,旨在于提高下载量以规避ISP审查,以实现提升自己的上传。

根据ip溯源可以查询到一些利益相关者,详见anacrolix的讨论贴:https://github.com/anacrolix/torrent/discussions/891

如何有效防护

BT客户端本身自带有黑名单策略,但使用起来非常麻烦,我自己使用的linuxserver镜像的Qbittorrent则是无法屏蔽客户端。而且这些吸血客户端还会变换着马甲,从一开始:
"anacrolix/torrent","dt/torrent","hp/torrent","taipei/torrent",等等,不断有新的马甲出现,显然,封禁客户端是行不通的。

这里推荐使用PeerBanHelper,一款开源的peer自动封禁程序,支持docker部署,简单易用。

部署方式

推荐使用docker-compose部署:

version: "3.9"
services:
  peerbanhelper:
    image: "ghostchu/peerbanhelper:latest-native-linux"
    restart: unless-stopped
    container_name: "peerbanhelper"
    volumes:
      - ./config:/app/data
    ports:
      - "9898:9898"
        #    environment:
# 取消注释以使用 Native Image 本地二进制文件,占用资源更少,但可能有 BUG
#      USE_NATIVE_IMAGE: 1

运行容器docker-compose up -d

首次运行会生成配置文件,修改配置文件后重新运行即可。

比如peerbanhelper文件夹下的Config/config/config.yml文件。

由于我没有使用过transmission,所以就全部注释掉了,按要求填入qb的地址和端口即可。

运行成功后访问9898端口可以查看封禁的日志:

这样一来BT程序的“反吸血”就完成了,又可以在BT的世界里愉快的玩耍了~

参考: