Второй метод блокировки торрентов |
|
|
|
Автор: 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 |