Iptables detalhado

Tentarei explicar um pouco sobre o Iptables, uma poderosa ferramenta de firewall.

[ Hits: 50.569 ]

Por: Ricardo Vasconcellos em 02/02/2010 | Blog: http://www.vivaolinux.com.br/~qxada07


Meu primeiro firewall



Temos que ter um objetivo para poder começar a configurar um firewall, seguem abaixo algumas dicas:
  1. Escolher qual tabela iremos usar (filter, nat, mangle)
  2. Quais regras iremos configurar (INPUT, FORWARD)
  3. Será necessário configurar a interface de entrada (-i para INPUT) ou de saída (-o para OUTPUT)
  4. Será necessário definir uma porta de acesso
  5. Escolher uma TARGET (ACCEPT, DROP, REJECT)

Seguem abaixo alguns dos principais parâmetros:
  • -A: Faz um Append de uma chain
  • -I: Faz um Index de uma chain
  • -N: Cria uma nova chain
  • -F: Elimina todas as regras
  • -s: Define origem do pacote
  • -d: Define um destino para o pacote
  • -i: Define interface de entrada
  • -o: Define interface de saída
  • -p: Define um protocolo
  • --dport: Define porta de destino
  • --sport: Define porta de origem
  • -j: O que será feito com o pacote

Regras de firewall - diversos

Para listar as regras de firewall criadas podemos utilizar as seguintes regras:

iptables -L
iptables -t nat -L
iptables -t mangle

Removendo regras de acesso:

iptables -A INPUT -i eth0 -s 192.168.100.100 -p tcp --dport 22 -j ACCEPT

Para remover a regra acima iremos usar a seguinte linha:

iptables -D INPUT -i eth0 -s 192.168.100.100 -p tcp --dport 22 -j ACCEPT

ou localize a linha que você queira deletar através do comando:

iptables -L INPUT

e aplique a regra abaixo para deletá-la:

iptables -D INPUT <número da linha>

Para direcionar a saída padrão de internet para o Squid utilize a linha abaixo:

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 8080

Zerando as regras de firewall:

iptables -F
iptables -t nat -F
iptables -t mangle -F

Até pessoal... Espero ter ajudado!

Página anterior    

Páginas do artigo
   1. Vantagens e fluxo de pacote
   2. Meu primeiro firewall
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Iptables - Segurança total para sua rede

Como construir um firewall de baixo custo para sua empresa (parte 3)

Port Scan Attack Detector (PSAD) com iptables

Conheça o firewall OpenGFW, uma implementação do (Great Firewall of China).

Gerenciando regras de Iptables com Firewall Builder

  
Comentários
[1] Comentário enviado por elgio em 02/02/2010 - 19:04h

Não entendi porque traduzir RELATED para reincidente... Não há qualquer sentido nisto!

Related é melhor traduzido para "relacionada", ou seja, conexões que possuem uma relação entre si, mas que não são a mesma.

Quando tu envia o primeiro pacote de SYN TCP, por exemplo, os demais pacotes irão casar com ESTABLISHED pois a conexão está estabelecida. Mesmo UDP não tendo conceito de conexão, ESTABLISHED se aplica também a UDP e até mesmo ICMP (uma resposta de um ping casaria na regra ESTABLISHED).

O que seria então o RELATED?
São outros pacotes que não são da mesma conexão, mas se relacionam com ela.

Exemplo: se tu envia um SYN para a porta 80 e a porta 80 está fechada por um firewall com REJECT, tu vai receber um ICMP tipo 3, código 3 (porta inacessível). Este ICMP casaria com o RELATED pois o iptables entende que diz respeito aquele SYN que passou.

[2] Comentário enviado por zelongatto em 03/02/2010 - 21:42h

Gostei do artigo, simples de entender, vai ajudar bastante quem tinha dificuldades em entender firewall...
valew
abraço

[3] Comentário enviado por andre_deko em 05/02/2010 - 11:29h

Muito bom!!!

De fácil entendimento, e de grande ajuda principalmente para quem está tentando entender iptables para iniciar alguns estudos, bem simples e prático.

Abraço

[4] Comentário enviado por vagnersobrinho em 11/06/2010 - 09:10h

Bom Artigo!

Parabens!

Abraços

[5] Comentário enviado por anderson.brd em 03/09/2010 - 11:26h

Na hora da instalação no Ubuntu, ele pede: interface de Entrada e de Saida. É pra eu digitar: eth0 e eth1 ? O q seria isso ?

Estou no começo mesmo de iptables pra um trabalho, mas já sei alguns comando pra instalar e etc.

Podem ajudar a clarear as idéias ?

Obrigado pela a atenção.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts