Aplicando plugin Layer7 ao Debian Lenny 64 bits

Publicado por Marcos José Andrade Viana em 28/04/2009

[ Hits: 10.645 ]

 


Aplicando plugin Layer7 ao Debian Lenny 64 bits



Esse tutorial é guia de instalação do módulo Layer7 em sistema operacional Linux Debian Lenny 64 ou 32 bits.

O Layer7 é um excelente plugin para o kernel e iptables, onde é possível realizar o bloqueio de programas direto, sem a necessidade de bloqueio por portas, o que muitas vezes é inviável como no caso de softwares como TOR, que mudam de porta dinamicamente.

A compatibilidade do Layer7 com o kernel que você vai utilizar pode ser verificada no link:
Baixando os fontes:

# cd /usr/src
# wget
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.tar.bz2
# wget http://nchc.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.21.tar.gz
# wget http://iptables.org/projects/iptables/files/iptables-1.4.1.1.tar.bz2
# wget http://jaist.dl.sourceforge.net/sourceforge/l7-filter/l7-protocols-2008-12-18.tar.gz

Preparando o ambiente:

# aptitude install bzip2 gzip unzip
# aptitude install libncurses5-dev
# aptitude install kernel-package
# aptitude install build-essential


Removendo o iptables padrão (versão antiga):

# apt-get remove iptables

Descompactando pacotes:

# tar xvjf linux-2.6.28.tar.bz2
# tar xvjf iptables-1.4.1.1.tar.bz2
# tar xzvf netfilter-layer7-v2.21.tar.gz
# tar xzvf l7-protocols-2008-12-18.tar.gz


Criando link simbólico para o diretório do novo kernel 2.6.8:

# ln -s /usr/src/linux-2.6.28 /usr/src/linux

Copiando as configurações de boot para efetuar compilação do novo kernel:

# cp /boot/config-2.6.26-2-amd64 /usr/src/linux/.config

Aplicando o patch do layer7 no novo kernel:

# cd /usr/src/linux
# patch -p1 < /usr/src/netfilter-layer7-v2.21/kernel-2.6.25-2.6.28-layer7-2.21.patch
# make menuconfig


Na janela que surgirá, siga os passos:

Networking ---> Networking options ---> [*] Network packet filtering Framework (Netfilter) ---> Core Netfilter Configuration

e ative:

<M> Layer 7 match support (EXPERIMENTAL)
[*] Layer 7 debugging output

Agora escolha EXIT até aparecer a tela solicitando para salvar e selecione YES e <ENTER> para salvar.

kernel está configurado para o Layer7, basta agora compilar e instalar. Para isso siga os passos abaixo:

# make
# make module
# make modules_install
# make install


Configurando boot pelo novo kernel:

# cd /boot
# mkinitramfs -o initrd.img-2.6.28 2.6.28
# update-grub


Reinicie o computador e depois verifique se o novo kernel foi realmente carregado usando o comando abaixo:

# uname -r (o kernel deve ser o 2.6.28)

Copiando arquivos do layer7 e instalando o iptables. A versão é a 1.4.1.1:

# cd /usr/src/iptables-1.4.1.1/extensions
# cp /usr/src/netfilter-layer7-v2.21/iptables-1.4.1.1-for-kernel-2.6.20forward/* ./
# cd ..
# ./configure --with-ksource=/usr/src/linux
# make
# make install


Instalando os protocolos do layer7:

# cd /usr/src/ l7-protocols-2008-12-18
# make install


Habilitando Layer7 e testando

Você pode colocar esse comando dentro do arquivo /etc/rc.local:

modprobe ipt_layer7

Testando regras:

# iptables -A FORWARD -m layer7 --l7proto tor -j DROP

Com o comando acima você bloqueou o aplicativo TOR.

Para ver os protocolos suportados, acesse o link:
Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Rodando emuladores no Ubuntu

Blog sobre o Linux

Montando um Linux com até 21 monitores!

Comando sudo - configuração

Rápido contorno para o erro: null: caution: filename not matched

  

Comentários
[1] Comentário enviado por gleysonhp em 29/04/2009 - 17:38h

Ola, ja tem um tempo que eu estava atraz de algum material do L7 no Lenny, acho que este é o primeiro que encontro...

Tenho um servidor Lenny Kernel 2.6.26-1-686, rodando diversos.. sera que se eu fazer exatamente o que você passou, não terei problemas? como conflitos etc?

Agradeço desde já!

[2] Comentário enviado por marcosviana em 29/04/2009 - 18:30h

Olá,

Acredito que não haverá problemas pois essa(2.6.26-1-686) era a mesma versão do meu Debian Lenny, e testei nas distribuições de 32 e 64 bits.

Mas vale salientar que esssa instalação comecei do zero e não tinha nenhuma outra aplicação rodando na máquina.

[3] Comentário enviado por reginaldoteles em 12/05/2009 - 22:06h

Marcos, parabéns o tutorial é excelente, ja havia feito em debian 3.1 e te confesso que ralei muito pra fazer, espero que muitos não somente copiem, mas estudem também.

Novamente, meus parabéns!

Reginaldo Teles

[4] Comentário enviado por removido em 18/05/2009 - 22:32h

Ola Marcos,

Muito bom o seu artigo, parabéns!!!. Obtive sucesso com o kernel 2.6.28, seguindo o artigo; voce usou este kernel por algum motivo especial? Voce sabe se da pra patchear o kernel 2.6.26 sem ter que compilar?

Abs,

Micnet

[5] Comentário enviado por fwneto em 14/02/2011 - 15:57h

ola,

estou tentando seguir esse tutorial, porem estou utilizando o debian 6.

que vem com o iptables 1.4.8 e kernel 2.6.32-5-amd64

existe um kernel.deb com esse patch aplicado? estou apanhando para compilar, compilar até consigo, na hora do boot apresenta erros de initramfs

parece que não pega o kernel certo.

alguem esta passando pelo mesmo problema?

grato
Francisco.

[6] Comentário enviado por xirux em 15/04/2012 - 18:21h

o meu não responde aos comandos de make module e make module_install

[7] Comentário enviado por xirux em 15/04/2012 - 18:28h

Aparentemente só faltava o 's' em make modules_install. rsrs



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts