• Nenhum resultado encontrado

Aula 09 - Firewalls com IPTABLES

N/A
N/A
Protected

Academic year: 2021

Share "Aula 09 - Firewalls com IPTABLES"

Copied!
56
0
0

Texto

(1)

Sejam bem vindos...

SEGURANÇA DA INFORMAÇÃO

Firewalls

(2)

CARACTERISTICAS DO

IPTABLES

●Especificação de portas/endereço de origem/destino;

• Suporte a protocolos TCP/UDP/ICMP (incluindo tipos de mensagens icmp);

• Suporte a interfaces de origem/destino de pacotes; • Manipulação de serviços de proxy na rede;

• Tratamento de tráfego dividido em chains e tráfego redirecionado;

(3)

CARACTERISTICAS DO

IPTABLES

• Muito rápido, estável e seguro;

• Possui mecanismos internos para rejeitar automaticamente pacotes duvidosos ou mal formados;

• Suporte a módulos externos para expansão das

funcionalidades padrões oferecidas pelo código de firewall;

• Suporte completo a roteamento de pacotes, tratados em uma área diferente de tráfegos padrões;

(4)

CARACTERISTICAS DO

IPTABLES

● Permite especificar exceções para as regras ou parte das regras;

• Suporte a detecção de fragmentos;

• Permite enviar alertas personalizados ao syslog sobre o tráfego aceito/bloqueado;

• Redirecionamento de portas; • Masquerading;

• Suporte a SNAT (modificação do endereço de origem das máquinas para um único IP ou faixa de IP’s);

(5)

CARACTERISTICAS DO

IPTABLES

• Suporte a DNAT (modificação do endereço de destino das máquinas para um único IP ou faixa de IP’s);

• Contagem de pacotes que atravessaram uma interface/regra; • Limitação de passagem de pacotes/conferência de regra

(muito útil para criar proteções contra DoS, syn flood, ping flood, etc);

(6)

NOTAS

DoS (Deny of Service) é um ataque de negação de serviço, também conhecido como DoS Attack, sendo uma tentativa em tornar os recursos de um sistema indisponíveis para seus utilizadores.

SYN flood ou ataque SYN é uma forma de ataque de negação de serviço, na qual o atacante envia uma sequência de requisições SYN para um sistema-alvo visando uma sobrecarga direta na camada de transporte e indireta na camada de aplicação do modelo OSI.

Ping flood é um ataque de negação de serviço simples no qual o atacante sobrecarrega o sistema vítima com pacotes ICMP Echo Request (pacotes ping). Este ataque apenas é bem sucedido se o atacante possui mais largura de banda que a vitima. Como a vitima tentará responder aos pedidos, irá

(7)

TRABALHANDO COM IPTABLES

O iptables possui 5 tabelas da qual 2 são

mais comuns:

Filter: Controla o conteúdo de um pacote

analisando IP, Portas, TCP, UDP e ICMP,

permitindo ou negando conexões.

Nat: Compartilhar e redirecionar pacotes para

(8)

TRABALHANDO COM IPTABLES

As regras no Iptables sempre são iniciadas

apontando sua tabela.

Exemplo:

# iptables -t filter ...

# iptables -t nat ...

(9)

TRABALHANDO COM IPTABLES

Após definir a tabela, será necessário definir a

chain.

Chains Filter:

INPUT: Regras para entrada de pacotes.

OUTPUT:Regras para saída de pacotes.

(10)

TRABALHANDO COM IPTABLES

Chains Nat:

PREROUTING:

Regras

que

serão

processadas antes do roteamento dos

pacotes nas interfaces do firewall.

POSTROUTING:

Regras

que

serão

processada pós roteamento dos pacotes nas

interfaces do firewall.

(11)

TRABALHANDO COM IPTABLES

Após definir a tabela, será definido a chain

como no exemplo abaixo.

Exemplo Filter:

# iptables -t filter -A INPUT

# iptables -t filter -A OUTPUT

# iptables -t filter -A FORWARD

(12)

TRABALHANDO COM IPTABLES

Exemplo Nat:

# iptables -t nat -A POSTROUTING

# iptables -t nat -A OUTPUT

(13)

TRABALHANDO COM IPTABLES

(14)

TRABALHANDO COM IPTABLES

(15)

TRABALHANDO COM IPTABLES

Após definir a tabela, e a chain como no

exemplo abaixo, é definido os parâmetros de

interface, IP, protocolo e portas.

Exemplo Filter:

# iptables -t filter -A INPUT -p tcp -s

192.168.0.1 ...

(16)

TRABALHANDO COM IPTABLES

# iptables -t filter -A INPUT -p tcp -s

192.168.0.1 –sport 1024:65535 --dport 80 …

#iptables -t nat -A POSTROUTING -o eth0 ...

(17)

TRABALHANDO COM IPTABLES

Alvos do Iptables.

OBS: Para apontar os alvos utilizamos a flag

-j.

(18)

TRABALHANDO COM IPTABLES

Após definir a tabela, e a chain como no

exemplo abaixo, é parâmetros de interface, IP,

protocolo e portas, apontamos o ALVO.

Exemplo Filter:

# iptables -t filter -A INPUT -p tcp -s

192.168.0.1 -j DROP

(19)

TRABALHANDO COM IPTABLES

Após definir a tabela, e a chain como no

exemplo abaixo, é parâmetros de interface, IP,

protocolo e portas, apontamos o ALVO.

Exemplo Filter:

# iptables -t filter -A INPUT -p tcp -s

192.168.0.1 -j DROP

(20)

TRABALHANDO COM IPTABLES

# iptables -t filter -A INPUT -p tcp -s

192.168.0.1 –sport 1024:65535 --dport 80 -j

ACCEPT

#iptables -t nat -A POSTROUTING -o eth0 -j

MASQUERADE

(21)

TRABALHANDO COM IPTABLES

(22)

VERIFICAR CONTEÚDO DA

TABELA EM MEMÓRIA

(23)

VERIFICAR CONTEÚDO DA

TABELA EM MEMÓRIA

1- Verificar conteúdo da tabela filter.

# iptables -t filter -L

2- Verificar conteúdo da tabela nat.

# iptables -t nat -L

(24)

LIMPAR REGRAS EXISTENTES

NA TABELA

(25)

VERIFICAR CONTEÚDO DA

TABELA EM MEMÓRIA

1- Limpa conteúdo da tabela filter.

# iptables -t filter -F

2- Limpa conteúdo da tabela nat.

# iptables -t nat -F

(26)

DEFININDO POLITICA DE

FILTRAGEM PADRÃO

(27)

IMPLEMENTAÇÃO PRÁTICA

1- Definir Politica de Negativa padrão.

# iptables -t filter -P INPUT DROP

# iptables -t filter -P OUTPUT DROP

# iptables -t filter -P FORWARD DROP

OBS: Antes colocar as regras de DROP

padrão, teste o acesso com PING.

(28)

IMPLEMENTAÇÃO PRÁTICA

2- Definir Politica de permissão padrão.

# iptables -t filter -P INPUT ACCEPT

# iptables -t filter -P OUTPUT ACCEPT

# iptables -t filter -P FORWARD ACCEPT

OBS: Antes colocar as regras de ACCEPT

padrão, teste o acesso com PING.

(29)

EXEMPLOS DE REGRAS PARA

FILTRAGEM

(30)

IMPLEMENTAÇÃO PRÁTICA

Ip's de origem são setados coma flag -s de

--source, e IP's de destino são setados

pela flgs -d de --destination.

Exemplos:

# Aceitar pacotes que tenham como origem a rede.

# iptables -t filter -A INPUT -s 192.168.0.0/24 -j ACCEPT # NEGAR pacotes que tenham como origem a rede.

(31)

IMPLEMENTAÇÃO PRÁTICA

Exemplos:

# Aceitar pacotes que tenham como origem a rede 192.168.0.0/24 que tenha como destino seu firewall.

# iptables -t filter -A INPUT -s 192.168.0.0/24 -d 192.168.0.254 -j ACCEPT

# Negar pacotes que tenham como origem a rede 192.168.0.0/24 que tenha como destino seu firewall.

(32)

EXEMPLOS DE REGRAS PARA

FILTRAGEM - EXTRA

IP DE ORIGEM E DESTINO

Utilizando inversão “!”

(33)

IMPLEMENTAÇÃO PRÁTICA

Utilizamos a inversão para indicar endereços diferentes do escrito em uma regra.

Exemplos:

# Aceitar pacotes que tenham como origem qualquer rede menos a a rede 192.168.0.0/24.

# iptables -t filter -A INPUT ! -s 192.168.0.0/24 -j ACCEPT

# Negar pacotes que tenham como origem qualquer rede menos a a rede 192.168.0.0/24.

(34)

EXEMPLOS DE REGRAS PARA

FILTRAGEM

PROTOCOLOS DE TRANSPORTE

E MENSAGENS

(35)

IMPLEMENTAÇÃO PRÁTICA

Os protocolos são setados com a flag -p

de protocol.

Exemplos:

# Aceitar pacotes com a flag tcp.

# iptables -t filter -A INPUT -p tcp -j ACCEPT # Negar pacotes com a flag tcp.

(36)

EXEMPLOS DE REGRAS PARA

FILTRAGEM

PROTOCOLOS DE TRANSPORTE

E MENSAGENS

TCP/UDP/ICMPP

Utilizando inversão “!”

(37)

IMPLEMENTAÇÃO PRÁTICA

Utilizando a inversão a regra irá tratar

protocolos não especificados na regra,

Exemplos:

# Aceitar pacotes com a flag udp e icmp.

# iptables -t filter -A INPUT ! -p tcp -j ACCEPT # Negar pacotes com a flag udp e icmp.

(38)

EXEMPLOS DE REGRAS PARA

FILTRAGEM

(39)

IMPLEMENTAÇÃO PRÁTICA

A comunicação pode ser tratada nas

interfaces de rede, utilizando as flags -i de

--input e -o de --output.

Exemplos:

# Aceitar pacotes que tenha como entrada e saída a interface eth0.

# iptables -t filter -A INPUT -i eth0 -j ACCEPT # iptables -t filter -A OUPUT -o eth0 -j ACCEPT

(40)

IMPLEMENTAÇÃO PRÁTICA

Exemplos:

# Aceitar pacotes que tenha como entrada e saída qualquer interface.

# iptables -t filter -A INPUT -i eth+ -j ACCEPT # iptables -t filter -A OUPUT -o eth+ -j ACCEPT

# Aceitar pacotes que tenha como entrada e saída qualquer interface menos a eth0.

(41)

EXEMPLOS DE REGRAS PARA

FILTRAGEM

(42)

IMPLEMENTAÇÃO PRÁTICA

Quando criamos uma regra com apenas o protocolo tcp, automaticamente as suas extensões são setadas.

Exemplos:

# iptables -t filter -A INPUT -p tcp -j ACCEPT # iptables -t filter -A OUPUT -p tcp -j ACCEPT

(43)

IMPLEMENTAÇÃO PRÁTICA

Veja as opções que pode serem tratadas ao TCP. --sport ou --source-port : Porta de origem.

--dport ou --destination-port : Porta de destino. Exemplo:

#iptables -t filter -A INPUT -p tcp --sport 80 --dport 1024:65535 -j ACCEPT

(44)

IMPLEMENTAÇÃO PRÁTICA

Veja as opções que pode serem tratadas ao TCP.

--tcp-flags : Trata as flags do TCP SYN, FIN, ACK, RST, PSH, URG.

Exemplos:

#iptables -t filter -A INPUT -p tcp ! --tcp-flags ALL RST -j DROP

(45)

IMPLEMENTAÇÃO PRÁTICA

Outra opção que pode ser tratada é utilizando a opção --syn, que trata diretamente apenas as flags

bidirecionais do TCP “SYN/ACK e RST”. --syn : Trata as flags do TCP bidirecionais. Exemplo:

(46)

EXEMPLOS DE REGRAS PARA

FILTRAGEM

(47)

IMPLEMENTAÇÃO PRÁTICA

Quando criamos uma regra com apenas o protocolo udp, automaticamente as suas extensões são setadas.

Exemplos:

# iptables -t filter -A INPUT -p udp -j ACCEPT # iptables -t filter -A OUPUT -p udp -j ACCEPT

(48)

IMPLEMENTAÇÃO PRÁTICA

Veja as opções que pode serem tratadas ao UDP. --sport ou --source-port : Porta de origem.

--dport ou --destination-port : Porta de destino. Exemplo:

#iptables -t filter -A INPUT -p udp --sport 53 --dport 1024:65535 -j ACCEPT

(49)

EXEMPLOS DE REGRAS PARA

FILTRAGEM

(50)

IMPLEMENTAÇÃO PRÁTICA

Quando criamos uma regra com apenas o protocolo icmp, automaticamente as suas extensões são setadas.

Exemplos:

# iptables -t filter -A INPUT -p icmp -j ACCEPT # iptables -t filter -A OUPUT -p icmp -j ACCEPT

(51)

IMPLEMENTAÇÃO PRÁTICA

Existem várias mensagens do tipo icmp, mas as mais comuns é do tipo 8 código 0 e tipo 0 código 0.

As mensagens do tipo 8 é o echo request, o tipo 0 echo reply.

Exemplo:

# iptables -t filter -A OUTPUT -p icmp --icmp-type 8/0 -j ACCEPT

# iptables -t filter -A INPUT -p icmp --icmp-type 0/0 -j ACCEPT

(52)

EXEMPLOS DE REGRAS PARA

FILTRAGEM

(53)

IMPLEMENTAÇÃO PRÁTICA

Os módulos do iptables são setadas com a opção -m, temos alguns módulos interessantes para o dia-a-dia, como o mudulo limit.

limit : Esse modulo deve ser especificado com -m limit, é utilizado para suprimir a taxa de pacotes e mensagens de log, fazendo um controle por tempo..

São 2 tipos:

(54)

IMPLEMENTAÇÃO PRÁTICA

--limit-burst: Especifica um número de pacotes para entrada antes de tornar o limite valido.

Exemplos para ICMP:

#iptables -t filter -A INPUT -p icmp --icmp-type 8 -m limit --limit 1/s -j ACCEPT

#iptables -t filter -A INPUT -p icmp --icmp-type 8 -m limit --limit-burst 4 -j ACCEPT

(55)

IMPLEMENTAÇÃO PRÁTICA

Para zerar o contador basta executar o comando: #iptables -Z

(56)

IMPLEMENTAÇÃO PRÁTICA

Outro modulo interessante, é o de MAC -m mac, mas com um detalhe, onde só poderá ser utilizado com as chains INPUT e PREROUTING.

#iptables -t filter -A INPUT -d 0/0 -m mac –mac-source AA:BB:CC:11:22:33 -j DROP

Referências

Documentos relacionados

Não apenas o teor de fibras é importante no controle da fissuração, ou na distribuição das fissuras, mas também outras variáveis devem ser consideradas, tais como

O local de armazenamento deve conter bacia de contenção para reter o produto, em caso de vazamento.. Mantenha os recipientes bem fechados e

Dentro deste contexto, o presente trabalho teve como objetivo a avaliação da influência da razão grãos e água de maceração, tempo de cozimento e tempo de molho na obtenção de

Baseado no exposto acima, o presente estudo teve por objetivo avaliar a adequação da rotulagem dos suplementos de cafeína para atletas, que são comercializados em lojas

Este trabalho apresentou uma análise experimental da transferência de calor por convecção natural na camada-limite sobre um aquecedor 3D montado rente a uma das

opção e por amor, aqui estamos para agradecer e dizer que sem vocês não chegaríamos aqui e chegaríamos aqui e. que

Quero afirmar que em nenhum momento estou faltando com a verdade e me vi forçado a este procedimento, diante do momento aflitivo em que me encontrava.Anexos estão os documentos que

Na data de realização da prova, os candidatos deverão se apresentar, no mínimo, com antecedência de 30 (trinta) minutos do horário determinado para o início das mesmas,