Entendendo a teoria do iptables

Esse artigo aborda a parte teórica do iptables (firewall para Linux). Nele (artigo) procuro explicar todos os elementos necessários para criação de uma regra de filtragem de pacote.

[ Hits: 97.506 ]

Por: marcelo fonseca de oliveira em 01/09/2006


Composição das regras do iptables: tabelas, opções e chains



Tabelas


São os locais usados para armazenar os chains. As tabelas são referenciadas em uma regra iptables com a opção "-t tabela". Existem 3 tabelas disponíveis:
  • filter - tabela padrão, usada no tráfego de dados comum com ocorrência de NAT (geração de outra conexão);
  • nat - usada quando há ocorrência de NAT (geração de outra conexão);
  • mangle - raramente usada, utilizada para alterações especiais de pacotes.

Se você deixar em branco [-t tabela], a tabela usada será a filter.

Opções


Representada por uma letra sempre escrita em maiúscula.
  • -P = define uma regra padrão;
  • -A = acrescenta uma nova regra às existentes;
  • -D = apaga uma regra;
  • -L = lista as regras existentes;
  • -F = apaga todas as regras;
  • -I = insere uma nova regra;
  • -h = mostra a ajuda;
  • -R = substitui uma regra;
  • -C = chega as regras existentes;
  • -Z = zera uma regra especifica;
  • -N = cria uma nova regra com um nome;
  • -X = exclui uma regra específica pelo seu nome.

Chains


Com eles podemos especificar a situação do tratamento dos pacotes, seja qual tabela for, exemplo: para tabelas filter temos as seguintes tipos de chains:
  • INPUT - consultado para dados que chegam ao computador;
  • OUTPUT - consultado para dados que saem do computador;
  • FORWARD - consultado para dados que são redirecionados para outra interface de rede ou outra máquina.

Já para as tabelas nat os chains possíveis são:
  • PREROUTING - consultado para os dados que precisam ser modificados logo que chegam (DNAT e redirecionamento de portas);
  • POSTROUTING - consultado para dados que precisam ser modificados após o tratamento de roteamento (SNAT e IP Masquerading);
  • OUTPUT - consultado quando os dados gerados localmente precisam ser modificados antes de serem roteados (IPs locais).

Para as tabelas mangle usamos os seguintes chains: INPUT, FORWARD, PREROUTING, POSTROUTING, OUTPUT. Como dito anteriormente, esse tipo de tabela é raramente usada (alterações especiais de pacotes).

Página anterior     Próxima página

Páginas do artigo
   1. iptables - definição
   2. Composição das regras do iptables: tabelas, opções e chains
   3. Composição das regras do iptables: dados e ações
   4. Manipulando regras
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Autenticação no Iptables

Configurando firewall Shorewall no CentOS

Port Scan Attack Detector (PSAD) com iptables

Um poderoso firewall para a sua rede wireless com IP x MAC

Configurando o iptables-p2p no Slackware

  
Comentários
[1] Comentário enviado por White_Tiger em 01/09/2006 - 10:20h

Cara. Tenho de te elogiar. Esse artigo ajuda muita gente a entender como funciona o firewall. Acho que vc poderia incrementar ele com expluicações sobre o prerouting com redirect que eh algo que vive tirando o povu do sério.

No geral seu artigo está muito bom.

[2] Comentário enviado por ijv314 em 01/09/2006 - 11:34h

Ótimo artigo. A um tempo atrás precisei de informações nesse nivel e tive que quebrar um pouco a cabeça. Com certeza esse artigo me ajudou a entender melhor o funcionamento dessa importante ferramenta para o gerenciamento de redes.

Abraços!!!

[3] Comentário enviado por agk em 01/09/2006 - 11:55h

Muito bom, parabéns, para quem está iniciando é fundamental conhecer essa ferramenta e dominar ela.

[4] Comentário enviado por brunokino em 03/09/2006 - 10:23h

Nossa, Muito bom, parabéns, informações de nivel é super importante. Continue assim, compartilhando conhecimentos. :-) esse é o verdadeiro espirito Open Source :-)

Abraços

Bruno Kinoshita

[5] Comentário enviado por rrinfor em 04/09/2006 - 13:58h

Sou novato em gerenciamento de redes Linux, e lêr o seu artigo foi de extrema importância para mim, agora tenho uma forte introdução sobre o assunto, o que me dar mais liberdade para evoluir em conhecimento sobre o mesmo.

Muito obrigado!

[6] Comentário enviado por pedemesa em 06/09/2006 - 22:03h

Muito bom!!! Ainda não posso usar, mas assim que meu 486 estiver OK denovo me vai ser muito útil pra fazer um router dele!!!

[7] Comentário enviado por lipecys em 26/09/2007 - 16:03h

Muito obrigado pelas dicas..........

[8] Comentário enviado por SyN em 28/01/2008 - 14:35h

Para quem não entende de iptables tá bom mesmo.
Mas nada como o velho e bom site netfilter.org
Lá você aprender de verdade.

Bye

[9] Comentário enviado por rogerio_gentil em 04/07/2008 - 16:56h

Eu estava com muitas dúvidas sobre iptables. Lendo o artigo, consegui entender melhor a sintaxe das regras e do comando. Para quem esta iniciando, como eu, é uma ótima leitura.

Parabéns. Excelente artigo!

[10] Comentário enviado por minduim em 19/03/2009 - 13:14h

Socorro alguém poderia me ajudar? Estou com um problema com Squid e autenticação de usuários. Alguém poderia me ajudar? http://www.vivaolinux.com.br/topico/Servidores-Linux-para-iniciantes/Problemas-com-autenticacao-de-s...

[11] Comentário enviado por QuestLoder em 12/05/2009 - 12:55h

Parabéns,

Este artigo vai ajudar e muito os iniciantes.

Abraço.

[12] Comentário enviado por gustavo luis em 13/11/2009 - 12:26h

tem como rolar um
continua no proximo capitulo nao ???
vlw pela dica d mais seu post

[13] Comentário enviado por aantonov em 19/06/2012 - 10:17h

Coleta, Parabens !

Este foi um dos mais completos artigos para o entendimento do iptables que eu ja li.

Foi muito claro e objetivo para leigos como eu.

Continue postando artigos de qualidade como este.

Obrigado !


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts