Linux настройка · 2 min read · Nov 12, 2025
Как настроить классификатор пакетов уровня 7 Linux на CentOS 5.1
Как настроить классификатор пакетов уровня 7 Linux на CentOS 5.1
Введение
Этот учебник проведет вас через настройку классификатора пакетов уровня 7 Linux на CentOS 5.1, который можно легко адаптировать к любой другой дистрибуции Linux.
L7-filter — это классификатор для Linux Netfilter, который идентифицирует пакеты на основе шаблонов в данных прикладного уровня. Это позволяет правильно классифицировать P2P-трафик. Он может классифицировать пакеты, такие как Kazaa, HTTP, Jabber, Citrix, Bittorrent, FTP, Gnucleus, eDonkey2000 и т. д., которые используют непредсказуемые порты, а также стандартные протоколы, работающие на нестандартных портах. Он дополняет существующие классификаторы, которые соответствуют IP-адресам, номерам портов и так далее. http://l7-filter.sourceforge.net/
1) Скачайте необходимые пакеты
1.1) Скачайте ядро L7-filter
wget http://downloads.sourceforge.net/l7-filter/netfilter-layer7-v2.19.tar.gz1.2) Скачайте пространство пользователей L7-filter
wget http://downloads.sourceforge.net/l7-filter/l7-filter-userspace-0.7.tar.gz
1.3) Скачайте определения протоколов L7-filter
wget http://downloads.sourceforge.net/l7-filter/l7-protocols-2008-04-23.tar.gz
Важно: Всегда скачивайте последнюю версию L7-filter с http://sourceforge.net/project/showfiles.php?group_id=80085
1.4) Скачайте Linux Iptables 1.4.0
wget http://www.netfilter.org/projects/iptables/files/iptables-1.4.0.tar.bz2
1.5) Скачайте ядро Linux 2.6.26
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.26.tar.bz2
2) Установите L7-filter
Откройте терминал и выполните
tar -xvf linux-2.6.26.tar.bz2
tar -xvf netfilter-layer7-v2.19.tar.gz
2.1) Примените патч к исходному коду ядра Linux
cd linux-2.6.26
patch -p1 < ../netfilter-layer7-v2.19/kernel-2.6.25-layer7-2.19.patch
2.2) Примените патч и установите iptables 1.4.0
tar -xvf iptables-1.4.0.tar.bz2
cd iptables-1.4.0
patch -p1 < ../netfilter-layer7-v2.19/iptables-1.4-for-kernel-2.6.20forward-layer7-2.19.patch
chmod +x extensions/.layer7-test
make KERNEL_DIR=~/linux-2.6.26
make install KERNEL_DIR=~/linux-2.6.26
3) Установка определений протоколов
tar -xvf l7-protocols-2008-04-23.tar.gz
cd l7-protocols-2008-04-23
mkdir /etc/l7-protocols
cp protocols/* /etc/l7-protocols
4) Компиляция и установка нового ядра Linux
cd linux-2.6.26
make menuconfig
make all
make modules_install
make install
Важно: Вы должны включить следующие параметры (они правильные для Linux 2.6.26, но могут перемещаться, поэтому вам, возможно, придется поискать, если у вас другая версия ядра):
- “Система фильтрации сетевых пакетов (Netfilter)” (Сетевые ? Опция сетевого подключения)
- “Поддержка отслеживания соединений Netfilter” (… ? Система фильтрации сетевых пакетов (Netfilter) ? Основные параметры конфигурации Netfilter)
- “Учет потоков отслеживания соединений” (на том же экране)
- Наконец, “Поддержка соответствия уровня 7”
- Опционально, но настоятельно рекомендуется: множество других параметров Netfilter, в частности “Поддержка FTP” и другие соответствия. Если вы не знаете, что делаете, просто включите все из них.






5) Проверьте настройки GRUB
vim /etc/grub.conf
Он должен выглядеть так:
default=0
timeout=3
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.26)
root (hd0,0)
kernel /vmlinuz-2.6.26 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.26.img
title CentOS (2.6.18-53.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-53.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.18-53.el5.img6) Наконец
Ну, мы закончили, перезагрузите систему и наслаждайтесь.
restart
7) Тестирование l7-filter
iptables -m layer7 –help
Веселитесь!
Get new posts in your inbox
No spam. Unsubscribe anytime.