Блокировка Torrent на Linux

Блокировка BitTorrent через nDPI + iptables

Окружение: Ubuntu 22/24, ядро 6.8.x (проверено на 6.8.0-101-generic)


1. Установка зависимостей

apt install build-essential libndpi-dev linux-headers-$(uname -r) git \
            autoconf automake libtool pkg-config libpcap-dev libxtables-dev

2. Клонирование и сборка nDPI

git clone https://github.com/vel21ripn/nDPI.git
cd nDPI
./autogen.sh
./configure && make
make install
ldconfig

3. Сборка kernel модуля xt_ndpi

cd ~/nDPI/ndpi-netfilter
make
sudo make install

4. Установка модуля в систему

sudo cp src/xt_ndpi.ko /lib/modules/$(uname -r)/kernel/net/netfilter/
sudo depmod -a
sudo modprobe xt_ndpi

Проверка:

lsmod | grep ndpi

5. Правила iptables

sudo iptables -I INPUT   -m ndpi --proto bittorrent -j DROP
sudo iptables -I FORWARD -m ndpi --proto bittorrent -j DROP
sudo iptables -I OUTPUT  -m ndpi --proto bittorrent -j DROP

6. Сохранение правил

apt install iptables-persistent
netfilter-persistent save

7. Проверка

# Счётчики пакетов (должны расти при торрент-трафике)
iptables -L -n -v

# Проверка модуля
lsmod | grep ndpi

Важные примечания

  • iptables -m ndpi --help помощь и список приложений для блокировки
  • После обновления ядра (apt upgrade) модуль нужно пересобрать (шаги 3-4)

  • Репозиторий: https://github.com/vel21ripn/nDPI (не оригинальный ntop/nDPI — у него нет netfilter модуля)

Комментарии

Комментариев пока нет.