quarta-feira, 23 de março de 2011

Instalação do Layer 7 no Debian Lenny

Uma dica muito valiosa que reduz muitas linhas do seu script de firewall e o melhor de tudo que funciona direitinho.
Implementando o layer 7 no Linux Debian Lenny, segue o tutorial:

Instalando pacotes necessários:

# aptitude install libncurses5-dev
# aptitude install kernel-package
# aptitude install zlib1g-dev

Entre no diretório source e faça download dos arquivos.

# cd /usr/src
# wget
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.tar.bz2
# wget http://www.netfilter.org/projects/iptables/files/iptables-1.4.2.tar.bz2
# wget http://downloads.sourceforge.net/l7-filter/netfilter-layer7-v2.21.tar.gz
# wget http://downloads.sourceforge.net/l7-filter/l7-protocols-2008-04-23.tar.gz
# wget http://merkel.debian.org/~jurij/2.6.28-1/i386/config-2.6.28-1-686.gz

Remova o iptables:

# aptitude purge iptables

Descompactando os pacotes:

# tar jxvf linux-2.6.28.tar.bz2
# tar jxvf iptables-1.4.2.tar.bz2
# tar zxvf netfilter-layer7-v2.21.tar.gz
# tar zxvf l7-protocols-2008-04-23.tar.gz
# uncompress config-2.6.28-1-686.gz


Criando um link para o diretório do kernel:

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

Copiando as configurações de boot e aplicando os patches do layer7 no kernel:

# cd /usr/src/linux
# cp ../config-2.6.28-1-686 .config
# patch -p1 < ../netfilter-layer7-v2.21/kernel-2.6.25-2.6.28-layer7-2.21.patch


Compilando e instalando o kernel


# make oldconfig
(enter para todas as questões)

# make menuconfig

Entre no diretório Networking -> Networking Options -> Network Packet Filtering Framework (netfilter) -> Core Netfilter Configuration

Marque os módulos (M) layer7 match support e (M) string match support

(M) layer7 match support #MARCAR COMO MÓDULO
(M) string match support #MARCAR COMO MÓDULO

Saia pelo exit, na última tela, escolha a opção salvar para o arquivo .config, ou seja, no último exit você será questionado se deseja salvar. Agora é simples, basta compilar.

# make-kpkg -initrd kernel_image

Foi criado um arquivo linux-image-2.6.28_2.6.28-10.00.Custom_i386.deb no diretório /usr/src, volte ao diretório e instale.

# cd /usr/src
# dpkg -i linux-image-2.6.28_2.6.28-10.00.Custom_i386.deb


Pronto, o novo kernel já esta instalado.

Aplicando os patches no iptables e instalando

Digite:

# cd /usr/src/iptables-1.4.2

Copie os arquivos libxt_layer7.c libxt_layer7.man para o diretório do iptables:

# cp ../netfilter-layer7-v2.21/iptables-1.4.1.1-for-kernel-2.6.20forward/* extensions/

Instalando o iptables:

# ./configure --with-ksource=/usr/src/linux
# make
# make install
# cd /usr/src/l7-protocols-2008-04-23
# make install


Pronto, só reiniciar e usar!

# reboot

Se por acaso o Debian não carregar o módulo automaticamente, execute o seguinte comando:

# modprobe ipt_layer7

Exemplo de regras:

iptables -A FORWARD -m layer7 --l7proto msnmessenger -j DROP
iptables -A FORWARD -m layer7 --l7proto http -j DROP

Se quiser saber quais os protocolos suportados consulte:
http://l7-filter.sourceforge.net/protocols


Fonte: http://www.vivaolinux.com.br/dica/Instacao-do-layer7-no-Debian-Lenny


Nenhum comentário:

Postar um comentário