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