[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Lógica do IPTABLES



Davi escreveu:
Em Quinta 29 Março 2007 11:09, Daniel Vieira Dias escreveu:
 Davi escreveu:
Em Quinta 29 Março 2007 07:50, André escreveu:
Caros colegas,
Gostaria de entender melhor sobre a lógica de como um determinado pacote é
analisado pelo IPTABLES, tipo... gostaria de saber se mudar a ordem das
regras se isso vai influenciar em alguma coisa... e como é analisado esse
tipo de coisa (Qual a sequência de análise das Regras?)... Na net já
encontrei muita coisa sobre as regras, mas não vi ainda algo falando como
essas regras são tratadas (a sequencia e tudo mais). Espero ter conseguido
expor minha dúvida aqui e que o colegas possam me orientar.

Se você rodar um
# iptables -L
Você vai ver _todas_ as regras da tua máquina... Elas são analisadas em
ordem: de cima para baixo.

Olá,

Não está errado, mas incompleto, pois a opção -L sem a opção -t <tabela> assume que a tabela é a "filter", a qual se aplica somente depois de roteado o pacote, e somente mostra as regras da mesma. Para ver as outras use:

# iptables -t mangle -L ; iptables -t nat -L ; iptables -L

Agora sim a vemos tudo... ;-) Se usar também a opções -v poderá ver mais informações

 Porém a seqüência não está correta...

 A seqüência correta seria:

1) pacote entrante na interface antes de ser roteado (Pre-Routing): mangle/prerouting => nat/prerouting => 2 2) roteamento: se vai para o próprio firewall (Input => 3) ou o atravessa (Forward => 4) 3) para o próprio firewall (Input): magle/input => filter/input => morre num processo local
4) atravessa o firewall (Forward): mangle/forward => filter/forward => 5
5) pacote sainte depois de roteado (Post-Routing): magle/postrouting => nat/postrouting => vai para a rede 6) pacote sainte de um processo local (Output): magle/output => nat/output => filter/output => 5

Em cada elo (Pre-Routing, Input, Forward, Output e Post-Routing), as regras são verificas de cima para baixo, sendo que quando o pacote casa com a condição da regra, "executa" o que estiver programado, podendo o pacote, dependendo da regra, ser morto aí mesmo ou continuar passando pelas regras até que termine e, após ter passado por todas as regras, se passar, cai na regra suprema do elo (chain), chamada de política do elo (chain policy).

Acho que isso é o básico que se precisa saber.

--
Atenciosamente,

          Junior Polegato

          Um peregrino de problemas; Um pergaminho de soluções!
          Página Profissional: http://www.juniorpolegato.com.br



Reply to: