Compilando kernel com suporte a POM (path-omatic) e Layer7 no Debian e Slackware

Esse artigo visa auxiliar os administradores de rede a implementar políticas mais efetivas de bloqueio pacotes na rede, tais como emule, msn e etc. Foca ainda configuração de diretivas de segurança tais como o PSD e o STRING, que podem auxiliar o Squid no bloqueio a tráfego HTTP.

[ Hits: 50.749 ]

Por: Leandro Moreira em 28/06/2006


Introdução



Compilar o kernel é uma arte, compilar o kernel com iptables é um sofrimento, passei duas semanas quebrando pedra até conseguir compilar o kernel com iptables e suporte a psd, string e o layer7.

Pacotes necessários:
Observação: Caso esteja usando o Debian, precisará também dos seguintes pacotes:

# apt-get install kernel-package
# apt-get install libncurses5-dev
# apt-get install libqt3-dev


Este artigo foi elaborado usando a versão 2.6.14 do kernel, a versão 1.3.5 do iptables e a versão 20040621 do patch o matic.

Preparando a instalação


Primeiramente vamos remover o iptables caso ele esteja instalado, esse processo varia de distro para distro:

# aptitude remove iptables

Descompactando os arquivos:

# cd /usr/src
# tar -zxvf <<local_do_fonte_do_kernel>>
# tar -zxvf <<local_do_fonte_do_iptables>>
# tar -zxvf <<local_do_fonte_do_POM*>>


    Próxima página

Páginas do artigo
   1. Introdução
   2. Aplicando o POM (Patch-o-matic):
   3. Aplicando Layer7
   4. Habilitando os módulos no kernel
   5. Compilando kernel e iptables
   6. Instalando os protocolos do Layer7 e exemplos de regras
Outros artigos deste autor

Instalando e configurando o Nagios com e sem MySQL

Recuperando RouterOS na RouterBOARD 450

Integrando autenticação do Squid ao Active Directory

Integrando Apache 2 com Tomcat 5

Monitorando Host via IPMI no Zabbix

Leitura recomendada

Recompilando o Kernel no Ubuntu Linux 9.04

Compilando kernel no Debian Squeeze

Compilando o Kernel Linux

Fazendo seu Linux hibernar

Linux (kernel) - A história do seu criador

  
Comentários
[1] Comentário enviado por fredaum em 28/06/2006 - 16:45h

muito legal

na empresa onde trabalho fiz isso também, nos meus dois proxy, e vale lembra que é a única maneira (que eu conheço pelo menos) de bloquear o acesso do skype, é utilizando layer7, segue as regras para quem se interessar:

iptables -A FORWARD -s 192.x.x.x -m layer7 --l7proto skypeout -j DROP
iptables -A FORWARD -s 192.x.x.x -m layer7 --l7proto skypetoskype -j DROP

Abraços e parabéns pelo artigo.

[2] Comentário enviado por rjacomel em 28/06/2006 - 17:03h

Recomendo a utilização do IPP2P também:

http://www.ipp2p.org/

É próprio para bloqueio de softwares P2P (Kazaa, eMule, BitTorrent, etc.)

Parabéns pelo artigo.

[3] Comentário enviado por PetersonPS em 28/06/2006 - 18:13h

Muito bom mesmo.

Tentei a um tempo atras aplicar o POM e não tive sucesso, através deste artigo consegui identificar onde errei.

Parabéns.


[4] Comentário enviado por josevaldo em 30/06/2006 - 00:02h

Cara, o artigo tá bem explicado, porem aqui no meu slack 10.2 com kernel 2.613, não teve como habilitar as opções no kernel para que eu podesse recompilá-lo... será onde foi q eu errei.?

[5] Comentário enviado por leandromoreirati em 19/07/2006 - 16:45h

Como vc aplicou os patchs esta da forma como eu descrevi no artigo?

[6] Comentário enviado por balani em 01/08/2006 - 08:25h

Gostaria de parabenizar pelo artigo, está muito bom, eu gostaria de tirar uma duvida, não consegui aplicar o modulo string no meu kernel, estou usando conectiva 10 kernel 2.6.11 iptables 1.3.5, pois fiz to o procedimento de para aplicação do patch e ele não apareceu no menu da compilação. se puder me ajudar.

[7] Comentário enviado por leandromoreirati em 03/08/2006 - 00:44h

Caro,
Por default o string ja vem aplicado nos kernels da família 2.6 o que acontece e que dentro do network configuration tem algumas opções que se nao ativadas alguns módulos dentre eles o string e o layer7 nao aparecem, tenta ativar todas as opções e ve se ela aparece ( nao tenho um fonte de 2.6.11 aki pra ver ) ou se achar melhor da um screen na sua tela de opções e me manda por email.

[8] Comentário enviado por robertocruz em 04/01/2007 - 04:11h

Na aplicação do patch do Layer 7 sobre o kernel deu erro.

# patch -p1 < ../netfilter-layer7-v2.1/kernel-2.6.13-2.6.15-layer7-2.1.patch 9.1

patching file include/linux/netfilter_ipv4/ip_conntrack.h
Hunk #1 succeeded at 127 (offset -126 lines).
patching file include/linux/netfilter_ipv4/ipt_layer7.h
patching file net/ipv4/netfilter/Kconfig
Hunk #1 FAILED at 205.
1 out of 1 hunk FAILED -- saving rejects to file net/ipv4/netfilter/Kconfig.rej
patching file net/ipv4/netfilter/Makefile
Hunk #1 succeeded at 65 with fuzz 2 (offset -9 lines).
patching file net/ipv4/netfilter/ip_conntrack_core.c
Hunk #1 succeeded at 337 (offset 2 lines).
patching file net/ipv4/netfilter/ip_conntrack_standalone.c
Hunk #1 succeeded at 192 (offset 4 lines).
patching file net/ipv4/netfilter/ipt_layer7.c
patching file net/ipv4/netfilter/regexp/regexp.c
patching file net/ipv4/netfilter/regexp/regexp.h
patching file net/ipv4/netfilter/regexp/regmagic.h
patching file net/ipv4/netfilter/regexp/regsub.c

Alguém tem alguma idéia do que se trata e/ou de como resolver?

[9] Comentário enviado por leandromoreirati em 06/12/2007 - 16:59h

Qual é a versao do kernel que vc esta usando?


Contribuir com comentário