Пачване на ядро 2.6.18 и iptables с layer7 в Debian

Статии свързани с компилиране на ядрото и модули към него.

Модератори: Freya, Kulu Ngile

Пачване на ядро 2.6.18 и iptables с layer7 в Debian

Мнениеот Kulu Ngile » Нед 28, Яну, 2007 1:10

Целта на занятието е да може, чрез iptables да се ограничи upload трафика.За съжаление, аз не намерих пълна информация затова, как става и ще ви покажа начина, по който аз се справих (за всичките команди трябва да сте с root права):
1. Инсталираме следните пакети
Код за потвърждение: Избери целия код
apt-get install linux-source-2.6.18 linux-headers-2.6.18-3 linux-patch-debian-2.6.18 kernel-package fakeroot libncurses5 libncurses5-dev yaird ncftp wget bzip2


2. Сваляме netfilter-layer7 и l7-protocols
Код за потвърждение: Избери целия код
cd /usr/src/
wget http://kent.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.9.tar.gz
wget http://puzzle.dl.sourceforge.net/sourceforge/l7-filter/l7-protocols-2007-01-14.tar.gz


3. Дезархивираме и пачваме ядрото
Код за потвърждение: Избери целия код
cd /usr/src/
tar jxvf linux-source-2.6.18.tar.bz2
tar -zxvf netfilter-layer7-v2.9.tar.gz
cd linux-source-2.6.18
patch -p1 < ../netfilter-layer7-v2.9/kernel-2.6.18-2.6.19-layer7-2.9.patch


4. Инсталираме l7-protocols
Код за потвърждение: Избери целия код
cd /usr/src
tar -zxvf l7-protocols-2007-01-14.tar.gz
cd l7-protocols-2007-01-14
make install


5. Необходими са няколко промени преди да компилираме ядрото

- премахване на iptables
Код за потвърждение: Избери целия код
aptitude remove iptables


- сваляне на новата версия на iptables
Код за потвърждение: Избери целия код
cd /usr/src
ncftp ftp://ftp.netfilter.org/
cd pub/iptables
get iptables-1.3.7.tar.bz2
exit


- дезархивиране и пачване на iptables
Код за потвърждение: Избери целия код
cd /usr/src
tar jxvf iptables-1.3.7.tar
cd iptables-1.3.7
patch -p1 < ../netfilter-layer7-v2.9/iptables-layer7-2.9.patch
chmod +x extensions/.layer7-test


- сваляне, дезархивиране и стартиране на patch-o-matic
Код за потвърждение: Избери целия код
cd /usr/src
ncftp ftp://ftp.netfilter.org/
cd pub/patch-o-matic-ng/snapshot
get patch-o-matic-ng-20070126.tar.bz2
exit
tar -xjvf patch-o-matic-ng-20070126.tar.bz2
cd patch-o-matic-ng-20070126
export KERNEL_DIR=/usr/src/linux-source-2.6.18
export IPTABLES_DIR=/usr/src/iptables-1.3.7
./runme base


- инсталиране на iptables
Код за потвърждение: Избери целия код
cd ../iptables-1.3.7
make KERNEL_DIR=/usr/src/linux-source-2.6.18
make install KERNEL_DIR=/usr/src/linux-source-2.6.18


6. Прекомпилираме ядрото. Използвам тази статия.
Код за потвърждение: Избери целия код
cd /usr/src/linux-source-2.6.18
make menuconfig


Hint 1: Ползвам старата си конфигурация, т.е. на Load an Alternate Configuration File пиша /boot/config-2.6.18-3-k7

Hint 2: Активирам layer7 в ядрото, .т.е. пътя е Networking, Networking options, Network packet filtering (replaces ipchains), Netfilter IP: Configuration и задаваме <M> IP range match support и [*] Layer 7 debugging output

7. Компилирамe ядрото
Код за потвърждение: Избери целия код
make-kpkg clean
fakeroot make-kpkg --revision=red.1.0 kernel_image


8. Инсталирамe новото ядро и правиме update на grub
Код за потвърждение: Избери целия код
cd /usr/src
dpkg -i linux-image-2.6.18_red.1.0_i386.deb
mkinitrd.yaird -o /boot/initrd.img-2.6.18 2.6.18
update-grub


9. Рестартираме, зареждаме новото ядро и проверяваме изхода от
Код за потвърждение: Избери целия код
iptables -m layer7 --help

Трябва да видите нещо от сорта на
Код за потвърждение: Избери целия код
......................................................................................
LAYER7 match v1.3.7 options:
--l7dir <directory>  : Look for patterns here instead of /etc/l7-protocols/
                       (--l7dir must be specified before --l7proto if used!)
--l7proto [!] <name> : Match the protocol defined in /etc/l7-protocols/na


Заб. Ако имате инсталиран драйвер за видеото (в моят случай nvidia), ще ви се наложи в конзолата да го преинсталирате за да може да си пуснете графичнат среда или да замените "nvidia" с "nv". Моят съвет е да се логнете с root и да изпълните
Код за потвърждение: Избери целия код
m-a auto-install nvidia
/etc/init.d/gdm restart
и всичко ще е ОК
Ако съдбата е срещу теб, толкова по-зле за нея.

Изображение
APT HOWTO
Kulu Ngile
Унуфри
 
Мнения: 1233
Регистриран на: Съб 04, Мар, 2006 1:04
Местоположение: София

Назад към Компилиране и настройки на ядрото

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 госта

cron