среда, 11 февраля 2015 г.

Iptables блокировка торрент трафика на шлюзе

Понадобилось блокирова торрент-трафик на OpenVPN сервере.

Решил это дело правилами в таблетках:
# iptables -I FORWARD 1 -m string --string "BitTorrent" --algo bm --to 65535 -j DROP
# iptables -I FORWARD 1 -m string --string "BitTorrent protocol" --algo bm --to 65535 -j DROP
# iptables -I FORWARD 1 -m string --string "peer_id=" --algo bm --to 65535 -j DROP
# iptables -I FORWARD 1 -m string --string ".torrent" --algo bm --to 65535 -j DROP
# iptables -I FORWARD 1 -m string --string "announce.php?passkey=" --algo bm --to 65535 -j DROP
# iptables -I FORWARD 1 -m string --string "torrent" --algo bm --to 65535 -j DROP
# iptables -I FORWARD 1 -m string --string "announce" --algo bm --to 65535 -j DROP
# iptables -I FORWARD 1 -m string --string "info_hash" --algo bm --to 65535 -j DROP




# iptables -L FORWARD -vn --line-numbers
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1       95 24353 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            STRING match  "info_hash" ALGO name bm TO 65535
2       28 40328 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            STRING match  "announce" ALGO name bm TO 65535
3       16   912 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            STRING match  "torrent" ALGO name bm TO 65535
4        0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            STRING match  "announce.php?passkey=" ALGO name bm TO 65535
5        0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            STRING match  ".torrent" ALGO name bm TO 65535
6        0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            STRING match  "peer_id=" ALGO name bm TO 65535
7       95 12940 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            STRING match  "BitTorrent protocol" ALGO name bm TO 65535
8        0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            STRING match  "BitTorrent" ALGO name bm TO 65535

Сохраним данные правила:
# apt-get install iptables-persistent
# /etc/init.d/iptables-persistent save

2 комментария:

  1. ШИКАРНО! Такого решения я искал по прострорам инета весь день! Автор жжет!

    ОтветитьУдалить
  2. скажите, какое есть решение, чтобы пробросить определенный порт в ворварде для торрента, скажем так, привилегированному человеку, директору или в этом роде, то что перекрыть торренты это хорошо, но он может поднять вопрос для личных нужд

    ОтветитьУдалить