Nesse artigo vamos falar sobre o patch-o-matic, um patch que quando aplicado ao iptables, lhe fornece formas adicionais de proteção, nos permitindo então criar um firewall extremamente seguro e eficaz.
Todos já sabemos o que o iptables é, para os que não sabem, o
iptables é um firewall nativo do kernel do Linux da versão 2.4.
Nas versões anteriores a 2.2 era usado o ipchains. Com o
iptables é possível criar varias regras de conexão e com isso
ter um firewall muito seguro.
O que esse artigo vai sugerir é a aplicação do
patch-o-matic, que adiciona mais algumas opções que
podem ser muito úteis para o bom andamento da rede.
Download e compilações
Vamos usar a última versão stable do iptables e do patch-o-matic.
Vamos agora partir para a compilação, vou fazer aqui a maneira mais ideal e a que é descrita e também o default, ou seja, vai ser assim mesmo. :-)
Vamos descompactar e copiar o diretório iptables para o /usr/src:
$ tar jxvf iptables-1.2.11.tar.bz2
$ su
# cp iptables-1.2.11 /usr/src/iptables
Agora vamos descompactar e executar o pom (vou me referir ao patch-o-matic como pom):
$ tar jxvf patch-o-matic-ng-20040621.tar.bz2
$ cd patch-o-matic-ng-20040621
Existem vários argumentos para rodar o "runme" do pom, mas vou usar o extra para que possamos aplicar o patch psd e o string. O psd para poder bloquear portscan e o string para bloquear algumas strings na conexão, por exemplo, poderemos bloquear o MSN.
Isso esta sendo rodado dentro do diretório do pom:
# ./runme extra
Ele vai executar um script que vai perguntar onde está o source do kernel e depois onde está o source do iptables, ambos em /usr/src.
Quando aparecer o nome psd, aperte y e depois o enter, faça o mesmo quando aparecer o patch string. Após isso faça o seguinte.
# cd /usr/src/iptables
# make
# make install
Após instalar o iptables, recompile seu kernel indo na opção do IP: Netfilter Configuration ---> e configurando, colocando built-in o psd e o string.
Após isso, recompile, configure o boot e reinicie.
[1] Comentário enviado por y2h4ck em 08/10/2004 - 09:50h
Ae CVS ficou maneiro o artigo :) so achei que vc podia ter dado uma explicada tambem em regras usando timming, pra gente criar umas regras avançadas pra galera.
Mas ficou show de bola, muita gente não saca como usar o POM agora a galera vai saber como colocar pelo menos.
[2] Comentário enviado por ronner em 08/10/2004 - 10:48h
Cara ficou blz mais vc sabe me dizer pq a opção do Protocolo H.323 não aparece com essas versões patch-o-matic-ng-20040621, kernel 2.6.8, iptables-1.2.11, estou querendo habilitar esta opção mais não aparece quando executo ./runme extra por que será?
[3] Comentário enviado por cvs em 08/10/2004 - 11:13h
Bom, não conheço esse Protocolo que vc disse, não sei te falar exatamente o por que não aparece, mas o pom tem outras opçoes para aplicar o patch... de uma olhada no netfilter.org deve haver algo a respeito por lá.
[4] Comentário enviado por ronner em 09/10/2004 - 22:34h
este protocolo e para usar o Audio e Video do msn por exemplo por trás de NAT e esta sendo muito usado para estas situações, mais agradeço a sua ajuda...!
[5] Comentário enviado por y2h4ck em 10/10/2004 - 12:44h
CVS, eheueh parei pra estudar sobre os modulos do POM e decidi tomar seu artigo como base, e vou montar um artigo sobre algumas implementações avançadas utilizando o POM, :)
[6] Comentário enviado por rootUser_ em 14/11/2004 - 15:39h
CVS, curti pra caramba o seu artigo... só que aqui na minha máquina deu um probleminha...
eu instalei tudo como no tutorial quando meu script de firewall é executado na inicialização do linux ele da um seguinte erro:
"Invalid Argument", que eu descobri que são por causa das linhas onde eu uso NAT, com isso ele não compartilha a internet, soh se eu logar como root e executar denovo o script de firewall, aí não dá mais erro, vc sabe porque?????
[7] Comentário enviado por jeziel em 29/11/2004 - 11:01h
apliquei o patch-o-matic em um kernel 2.6.9 só que a opção de string não aparece quando uso o ./runme extra. Ai eu dei uma olha nas instruções deste módulo e acho que não funciona para kenel acima de 2.6.0.
[12] Comentário enviado por gustavo_marcon em 07/12/2005 - 09:40h
Alguém sabe se tenho como criar uma regra que bloqueie/libere o acesso ao msn messenger conforme a string informada para nome de usuário?
Gostaria que de qualquer máquina o msn pudesse ser acessado, mas somente para alguns nomes de login do msn....
Será que tem como? E para Kazza, Skype, etc???
(Mas minha prioridade é só no msn mesmo)
Vlw Galera!
[14] Comentário enviado por fjbvn em 11/12/2007 - 21:00h
Amigo Jedi,
em ipcop, as regras de firewall vc implementa em:
/etc/rc.d/rc.local
as regras default da sua configuração estão em:
/etc/rc.d/rc.firewall
Entretanto, suas personalizações vc pode colocar em rc.local mesmo (fora alguns ajustes extremamente necessários, como o ajuste para a Conectividade Social da CEF).