top
logo


Второй метод блокировки торрентов PDF Печать E-mail
Автор: Administrator   
23.01.10 09:43

Как я боролся с torrent.

 


Первым делом подготовим систему, а именно добавим необходимые для нормальной сборки пакеты:
#sudo apt-get update
#sudo apt-get install build-essential kernel-package libncurses5-dev fakeroot

Скачаем все необходимое в /usr/src/ :

#cd /usr/src
#sudo wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.tar.bz2
#sudo wget http://ufpr.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.22.tar.gz
#sudo wget http://ufpr.dl.sourceforge.net/sourceforge/l7-filter/l7-protocols-2009-05-28.tar.gz
#sudo wget http://iptables.org/projects/iptables/files/iptables-1.4.3.2.tar.bz2

Распакуем сюда же:

#sudo tar xvjf iptables-1.4.3.2.tar.bz2
#sudo tar xvjf linux-2.6.28.tar.bz2
#sudo tar xvzf l7-protocols-2009-05-28.tar.gz
#sudo tar xvzf netfilter-layer7-v2.21.tar.gz

Необходимые симлинки … не нарушаем традиции:

#sudo chmod -R a-s /usr/src
#sudo ln -s linux-2.6.28 linux
#sudo ln -s iptables-1.4.3.2 iptables

На этом подготовительный этап считаю законченным, можем приступать:
Копируем действующий конфиг ядра, чтобы без заморочек
переходим в

#cd /usr/src/linux
# sudo cp /boot/config-2.6.x /usr/src/linux/.config

Запатчили ядрышко:
#sudo patch –p1 < ../netfilter-layer7-v2.22/kernel-2.6.25-2.6.28-layer7-2.22.patch

И iptables
#sudo cp ../netfilter-layer7-v2.22/iptables-1.4.3forward-for-kernel-2.6.20forward/*.* /usr/src/iptables/extensions

Применим конфиг действующего ядра к текущему
#sudo make oldconfig

Далее я просто нажимаю интером … оставляя все подефолту.
#sudo make menuconfig

Вот мы и проверим что нам надо что нет … можем выбрать тип процессора и т.д., но будьте осторожны с изменениями!
Идем сюда
Networking support->Networking options->Network packet filtering framework (Netfilter) ->Core netfilter configuration
Ищем и выставляем так: <M> "layer7" match support
Это не трогаем и оставляем: [ ] Layer 7 debugging output
Далее проверяем:
2 раза по Esc (на уровень выше) проверяем в IP: Netfilter Configuration
<M> IPv4 connection tracking support (required for NAT)
<M> Full NAT
Выходим в главное меню, 2 Esc сколько нужно … Save an Alternate Configuration File … OK, т.е. перезаписали .config

#sudo make-kpkg clean
#sudo make-kpkg --initrd --append-to-version=-l7 kernel_image kernel_headers



Можно идти пить кофе, пока сборка не закончится и /usr/src не появятся:
linux-image-2.6.28-l7_2.6.28.9-l7-10.00.Custom_i386.deb
linux-headers-2.6.28-l7_2.6.28.9-l7-10.00.Custom_i386.deb

#cd /usr/src/
#sudo dpkg -i ./linux-*.deb
#sudo shutdown -r now

С ядром покончено идем дальше iptables недоделали

#cd /usr/src/iptables
#./configure --with-ksource=/usr/src/linux
#sudo make

Если при сборке заартачится на xt_layer7.h типа не могу найти и все такое … то скопируйте его с /usr/src/linux/include/linux/netfilter, он там стопудово будет в
/usr/src/iptables/include/linux/netfilter и пробуем снова #sudo make,


#sudo make install

И штрих:
#mv /usr/src/l7-protocols-2009-05-28 /etc/l7-protocols

Переносим датаграммы…
Пробуем модуль …
#sudo modprobe xt_layer7

… Если все хоккей, то дописываем его в /etc/modules, для автозагрузки.
Пример использования:

#iptables -A FORWARD -m layer7 --l7proto bittorrent -j DROP
#iptables –nvL

Подробнее о возможностях можно найти на оффсайте …
Можно вместо bittorrent применять любой из pat файлов /etc/l7-protocols/protocols/
100bao.pat, cvs.pat, guildwars.pat, mohaa.pat ...
подробнее на http://l7-filter.sourceforge.net/protocols
---
В правилах .pat опускается … в этих файлах содержаться датаграммы однозначно определяющие трафик определенного приложения, их можно составлять самому, вооружившись Wireshark (говорят удобно) сам не пробовал. ;)

 

{jcomments on}

Последнее обновление 23.01.10 09:49
 
Интересная статья? Поделись ей с другими:

bottom

 

Unreal Commander PfSense по русски Яндекс.Метрика