Obs.:
- Testado com as versões abaixo citadas;
- Utilize por sua conta e risco;
- Os procedimentos foram todos executados como superusuário (root).
Fazer o download dos pacotes:
Kernel:
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.25.tar.bz2
Iptables 1.4.0:
http://www.netfilter.org/projects/iptables/files/iptables-1.4.0.tar.bz2
Layer7:
http://downloads.sourceforge.net/l7-filter/netfilter-layer7-v2.18.tar.gz?modtime=1209437315&big_mirror=0
Protocolos do Layer7:
http://downloads.sourceforge.net/l7-filter/l7-protocols-2008-04-23.tar.gz?modtime=1208987798&big_mirror=0
Remover a instalação anterior do
iptables:
# removepkg iptables
Descompactar os pacotes:
# cd /usr/src
# tar -jxvf /root/linux-2.6.25.tar.bz2 -C /usr/src
# tar -jxvf /root/iptables-1.4.0.tar.bz2 -C /usr/src
# tar -zxvf /root/netfilter-layer7-v2.18.tar.gz -C /usr/src
# tar -zxvf /root/l7-protocols-2008-04-23.tar.gz-C /usr/src
Aplicando os patches:
# cd /usr/src/linux
# patch -p1 < ../netfilter-layer7-v2.18/kernel-2.6.25-layer7-2.18.patch
No iptables:
# cd /usr/src/iptables-1.3.4
# patch -p1 < ../netfilter-layer7-v2.18/iptables-1.4-for-kernel-2.6.20forward-layer7-2.18.patch
# chmod +x extensions/.layer7-test
Importando as configurações do kernel anterior:
# cp /boot/(config) /usr/src/linux-2.6.25/.config
# make oldconfig
(enter para todas as questões)
Compilando o Kernel:
# make menuconfig
Networking-->
Networking options -->
Network Packet Filtering framework (Netfilter) -->
Core Netfilter Configuration -->
(M) layer7 match suport #MARCAR COMO MÓDULO
(M) string match support #MARCAR COMO MÓDULO
# make
# make modules
# make modules_install
Copiando a imagem para o kernel novo:
# cp /usr/src/linux-2.6.25/arch/i386/boot/bzImage /boot/bzImage
# cp /usr/src/linux-2.6.25/System.map /boot/
# cd /boot
# rm -rf vmlinuz
# ln -s bzImage vmlinuz
Adicionando ao LILO:
# vim /etc/lilo.conf
image = /boot/vmlinuz
root = /dev/hda2
label =
Linux_new
read-only
# lilo
Compilando iptables:
# make SBIN_DIR=/sbin LIBDIR=/lib
# make SBIN_DIR=/sbin LIBDIR=/lib install
Instalando os protocolos do Layer7:
# cd /usr/src/l7-protocols-2008-04-23
# make install
# reboot
Exemplos de regras:
#Bloqueio do menssager
iptables -A FORWARD -m layer7 --l7proto msnmessenger -j DROP
#Bloqueio do orkut usando o math string
iptables -A FORWARD -m string --string "orkut" --algo bm -j DROP
Site dos protocolos suportados no layer7:
Referências:
[1] Comentário enviado por
picioli em 20/09/2008 - 00:28h:
Parabéns pelo TUTO. O primeiro sobre L7 que eu peguei e que realmente funcionou!
[2] Comentário enviado por
trashfull em 23/09/2008 - 21:01h:
vlw picioli, apanhei bastante pra fazer o L7 funcionar tb.
[3] Comentário enviado por
lf_sm em 09/10/2008 - 12:40h:
Aroldo,
Segui o prodecimento descrito acima, não deu nenhum erro.
Porém quando tento executar o comando :
iptables -A FORWARD -m layer7 --l7proto msnmessenger -j DROP
não é possível.
Estou usando o Slacware 12.1
Tem algum detalhe que não está descrito no tutorial?
Agradeço a atenção.
[4] Comentário enviado por
trashfull em 13/10/2008 - 08:47h:
Luiz Fernando,
Eu não testei esta implementação no Slackware12.1, mais acredito q funcione sem problemas.
Qual o erro q é retornado?
As vezes pode ser necessário compilar o iptables da seguinte maneira.
+ ou - isso
# make KERNEL_DIR=/usr/src/linux-2.6.26
# make install KERNEL_DIR=/usr/src/linux-2.6.26
Em algumas implementações precisei copiar as libs do iptables para o dir /lib.
[ ]s
[5] Comentário enviado por
linus black em 05/09/2009 - 13:18h:
amigo a um problema na parte da compilação do iptables ounde se da o comando
make SBIN_DIR=/sbin LIBDIR=/lib
[6] Comentário enviado por
trashfull em 01/04/2011 - 11:29h:
Aqui nao ocorreram erros linus black, o que acontece?
Se eu puder ajudar, estou a disposicao
[ ] s