SlideShare uma empresa Scribd logo
Firewall Iptables - Filter
Prof. Andrei Carniel
Universidade Tecnológica Federal do Paraná – UTFPR
E-mail: andreicarniel@utfpr.edu.br / andrei.carniel@gmail.com
Firewall Iptables (1/4)
• O IPTables é uma versão robusta, completa e tão estável quanto seus
antecessores IPFWADM e IPCHAINS, implementados nos Kernels
Linux 2.0 e 2.2 respectivamente.
• IPTables é um firewall muito conhecido na comunidade Linux que foi
incorporado ao mesmo em 1999.
• Principais características:
 Filtro de Pacotes (Foco dessa aula)
 NAT
 QoS sobre tráfego
 Redirecionamento de endereços e portas
 Detecção de fragmentos
 Bloqueio de ataques
 Entre outros.
2
Firewall Iptables (2/4)
• Surgiu com o objetivo de proteger as máquinas de acessos ou tráfego
indesejado.
• Proteger serviços que estejam rodando na máquina.
• Bloquear a passagem de algo que não deseja receber (por exemplo:
conexões vindas da Internet).
• Foi introduzido no kernel 2.4 do Linux.
• É um firewall em nível de pacotes, com funcionamento baseado em
endereço e porta de origem/destino, prioridade, entre outros.
• Seu funcionamento é baseado na comparação de regras para saber se
um pacote pode ou não passar.
3
Firewall Iptables (3/4)
• Pode ser usado para:
▫ Monitorar e/ou modificar tráfego de rede, efetuar NAT (masquerading,
source NAT, destination NAT);
▫ Redirecionamento de pacotes;
▫ Marcação de pacotes;
▫ Modificação de prioridade dos pacotes de entrada/saída;
▫ Contagem de bytes;
▫ Divisão de tráfego;
▫ Proteção anti-spoofing (pacotes com IP falsificado);
▫ Proteção contra syn flood (forma de negação de serviço);
▫ Proteção contra DoS (forma de negação de serviço);
▫ Etc.
4
Firewall Iptables (4/4)
• Não funciona de forma automática, ou seja, somente instalar e esperar
que ele faça o resto.
• É necessário pelo menos conhecimentos básicos em redes TCP/IP e
roteamento e portas.
• Esses conhecimentos são necessários para criar regras de segurança.
• Lembre-se:
▫ A segurança do sistema depende do conjunto de regras que serão criados
por você;
▫ 95% das invasões de sucesso são devido a falhas humanas na configuração;
• Trabalharemos principalmente com a função Filtro de Pacotes que é a
mais utilizada no IPTables, bloqueando e permitindo serviços em uma
rede.
5
Filter
6
Chains – Lista de regras
• Basicamente para filtragem de pacotes existem basicamente três tipos
de chains, são elas:
▫ INPUT --> Refere-se a todos os pacotes destinados à máquina filtro.
▫ OUTPUT --> Refere-se a todos os pacotes gerados na máquina filtro.
▫ FORWARD --> Refere-se a todos os pacotes oriundos de uma máquina e
destinados a outra. São pacotes que atravessam a máquina filtro, mas não
são destinados a ela.
7
Chains – Lista de regras
• Para verificar as regras em nas CHAINS, digite:
▫ # iptables -L
• O resultado deve ser algo como:
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
8
Chains – Lista de regras
• Note que não existem regras em qualquer das CHAINS, mas o policy
padrão é ACCEPT, ou seja, aceite qualquer pacote de qualquer
origem/destino.
• Outra observação importante aqui é que o comando acima nos
mostrou a as 3 tabelas disponíveis.
• Sempre que formos inserir uma nova regra podemos utilizar a opção
-t filter para especificar a tabela, mas essa opção não é
obrigatória.
9
Manipulando Chains
• O Iptables trabalha com uma tabela de regras que é analisada uma a
uma até que a última seja processada.
• Por padrão, se uma regra tiver qualquer erro, uma mensagem será
mostrada e ela descartada.
• O pacote não conferirá e a ação final (se ele vai ser aceito ou rejeitado)
dependerá das regras seguintes.
• Agora que sabemos a existência das três CHAINS, devemos usar
comandos para adicionar regras:
10
Manipulando Chains
Principais comandos para inclusão e exclusão de chains!
11
Manipulando Chains
• Sintaxe padrão:
▫ #iptables -[COMANDO] [CHAIN] [TARGET]
• Exemplo:
▫ #iptables –P INPUT DROP
• Todos os pacotes por default serão rejeitados.
12
Manipulando Chains – Inclusão e Exclusão (1/5)
• -P --> Policy (política). Altera a política da chain. A política
inicial de cada chain é ACCEPT.
• Isso faz com que o filtro, inicialmente, aceite qualquer INPUT,
OUTPUT ou FORWARD.
• A política pode ser alterada para DROP, que irá negar o serviço da
chain, até que uma opção -A entre em vigor.
• O -P não aceita REJECT ou LOG. Exemplos:
▫ #iptables -P FORWARD DROP
▫ #iptables -P INPUT ACCEPT
13
Manipulando Chains – Inclusão e Exclusão (2/5)
• -A --> Append (anexar). Acresce uma nova regra à chain.
• Tem prioridade sobre o -P.
• Geralmente, como buscamos segurança máxima, colocamos todas as
chains em política DROP, com o -P e, depois, abrimos o que é
necessário com o -A.
• Exemplos:
▫ #iptables -A OUTPUT -d 172.20.5.10 -j ACCEPT
▫ #iptables -A FORWARD -s 10.0.0.1 -j DROP
▫ #iptables -A FORWARD -d www.chat.com.br -j DROP
14
Manipulando Chains – Inclusão e Exclusão (3/5)
• -D --> Delete (apagar). Apaga uma regra.
• A regra deve ser escrita novamente, trocando-se a opção para -D.
Exemplos:
• Para apagar as regras anteriores, usa-se:
▫ #iptables -D OUTPUT -d 172.20.5.10 -j ACCEPT
▫ #iptables -D FORWARD -s 10.0.0.1 -j DROP
▫ #iptables -D FORWARD -d www.chat.com.br -j DROP
15
Manipulando Chains – Inclusão e Exclusão (4/5)
• Também é possível apagar a regra pelo seu número de ordem.
• Pode-se utilizar o -L para verificar o número de ordem.
• Verificado esse número, basta citar a chain e o número de ordem.
Exemplo:
▫ #iptables -D FORWARD 4
• Isso deleta a regra número 4 da chain FORWARD.
16
Manipulando Chains – Inclusão e Exclusão (5/5)
• -L --> List (listar). Lista as regras existentes. Exemplos:
▫ #iptables -L
▫ #iptables -L FORWARD (Lista apenas da Chain FORWARD)
• -F --> Flush (esvaziar). Remove todas as regras existentes.
No entanto, não altera a política (-P). Exemplos:
▫ #iptables -F
▫ #iptables -F FORWARD (Remove apenas regras da Chain FORWARD)
17
Manipulando Chains – Inclusão e Exclusão (6/6)
• -I --> Insert(inserir). Insere uma nova regra no início da
lista. Exemplos:
▫ #iptables –I OUTPUT –d 200.200.2 –j ACCEPT
• -N --> New(nova). Adiciona uma nova chain.
▫ #iptables -N internet
• Para adicionar uma regra na chain:
▫ #iptables -A internet -d 127.0.0.1 -j DROP
• Para deletar uma chain:
▫ #iptables -X internet
18
Manipulando Chains
Principais comando para manipulação de
origem e destino!
19
Manipulando Chains – Origem e Destino (1/4)
• -s --> Source (origem). Estabelece a origem do pacote.
• Geralmente é uma combinação do endereço IP com a máscara de sub-
rede, separados por uma barra. Exemplo:
▫ #-s 172.20.0.0/255.255.0.0
• No caso, vimos a sub-rede 172.20.0.0. Para hosts, a máscara sempre
será 255.255.255.255. Exemplo:
▫ #-s 172.20.5.10/255.255.255.255
20
Manipulando Chains – Origem e Destino (2/4)
• Agora vimos o host 172.20.5.10. Ainda no caso de hosts, a máscara
pode ser omitida.
• Caso isso ocorra, o Iptables considera a máscara como
255.255.255.255. Exemplo:
▫ #-s 172.20.5.10
• Isso corresponde ao host 172.20.5.10. Há um recurso para simplificar a
utilização da máscara de sub-rede.
• Basta utilizar a quantidade de bits 1 existentes na máscara. Assim, a
máscara 255.255.0.0 vira 16. A utilização fica assim:
▫ #-s 172.20.0.0/16
21
Manipulando Chains – Origem e Destino (3/4)
• Outra possibilidade é a designação de hosts pelo nome. Exemplo:
▫ #-s www.chat.com.br
• Para especificar qualquer origem, utilize a rota default, ou seja,
0.0.0.0/0.0.0.0, também admitindo 0/0.
• Exemplo Geral:
▫ #iptables -A INPUT -s 200.200.200.0/24 -j DROP
• Bloqueia o tráfego vindo da rede 200.200.200.*.
22
Manipulando Chains – Origem e Destino (4/4)
• -d --> Destination (destino). Estabelece o destino do
pacote.
• Funciona exatamente como o -s, incluindo a sintaxe.
• Exemplo Geral:
▫ #iptables -A OUTPUT -d 10.1.2.3 -j DROP
• Bloqueia conexões com o destino 10.1.2.3:
23
Manipulando Chains – Protocolos
• -p --> Protocol (protocolo). Especifica o protocolo a ser
filtrado.
• O protocolo IP pode ser especificado pelo seu número (vide
/etc/protocols) ou pelo nome. Os protocolos mais utilizados são
udp, tcp e icmp. Exemplo:
▫ #-p icmp
• Exemplo:
▫ #iptables -A OUTPUT -d 200.200.200.20 -p tcp -j DROP
• Bloqueia qualquer pacote com destino para 200.200.200.20 via
protocolo TCP.
24
Manipulando Chains – Interface de Rede (1/3)
• -i --> In-Interface (interface de entrada). Especifica a
interface de entrada.
• As interfaces existentes podem ser vistas com o comando #ifconfig.
• Exemplo:
▫ #-i ppp0
• O -i não pode ser utilizado com a chain OUTPUT.
25
Manipulando Chains – Interface de Rede (2/3)
• O sinal + pode ser utilizado para simbolizar várias interfaces.
• Exemplo:
▫ #-i eth+
• eth+ refere-se à eth0, eth1, eth2 e etc.
• Exemplo geral:
▫ #iptables -A FORWARD -i eth0 -j ACCEPT
• Os pacotes que entrarem pela interface eth0 serão aceitos.
26
Manipulando Chains – Interface de Rede (3/3)
• -o --> Out-Interface (interface de saída). Especifica a
interface de saída.
• Similar a -i, inclusive nas flexibilidades.
• O -o não pode ser utilizado com a chain INPUT.
• Exemplo:
▫ #iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
• Todos os pacotes que saírem pela interface ppp0 (modem) serão
mascarados. Isso dá um nível de segurança elevado à rede que está
atrás da ppp0. É uma boa regra para navegação na Internet.
27
Manipulando Chains – Portas (1/2)
• --sport --> Source Port. Porta de origem.
• Só funciona com as opções -p udp e -p tcp. Exemplo:
▫ #-p tcp --sport 80
• Refere-se à porta 80 sobre protocolo TCP.
• Exemplo:
▫ #iptables -A OUTPUT -d 200.200.200.20 -p tcp --sport
100:1023 -j DROP
• Bloqueia qualquer pacote com destino a 200.200.200.20, que utiliza
protocolo TCP e se originou na faixa de portas 100 a 1023.
28
Manipulando Chains – Portas (2/2)
• --dport --> Destination Port. Porta de destino.
• Só funciona com as opções -p udp e -p tcp.
• Similar a --sport.
• Exemplo:
▫ #iptables -A OUTPUT -d 200.200.200.20 -p tcp --dport
100:1023 -j DROP
• Bloqueia qualquer pacote com destino a 200.200.200.20, que utiliza
protocolo TCP e tem como destino qualquer porta da faixa de 100 a
1023.
29
Manipulando Chains – Exclusão (1/2)
• ! --> Exclusão. Utilizado com -s, -d, -p, -i, -o e outros,
para excluir o argumento.
• Funciona para muitos parâmetros, como o endereço de
origem/destino, protocolo, porta, mensagens ICMP, fragmentos, etc...
podem ser precedidos pelo sinal “!” que significa exceção
• Exemplo:
▫ #-s ! 10.0.0.1
• Isso refere-se a qualquer endereço de entrada, exceto o 10.0.0.1.
▫ #-p ! tcp
• Todos os protocolos, exceto o TCP.
30
Manipulando Chains – Exclusão (2/2)
• Exemplos:
▫ #iptables -A INPUT ! -s 200.200.200.10 -p tcp -j DROP
• Diz para rejeitar todos os pacotes EXCETO os que vem do
endereço 200.200.200.10 .
▫ #iptables -A INPUT -s 200.200.200.10 ! -p tcp -j DROP
• Bloqueia todos os pacotes vindos de 200.200.200.10, EXCETO os do
protocolo TCP.
31
Manipulando Chains
• O alvo (-j) é o destino que um pacote terá quando conferir com as
condições de uma regra.
32
Manipulando Chains – Jump Target
• Isto especifica o alvo da regra, isto é, o que fazer se o pacote
corresponde a ele.
• O alvo pode ser uma cadeia definida pelo usuário, um dos alvos
embutidos especiais, que decidem o destino do pacote imediatamente,
ou uma extensão.
• Se esta opção for omitido em regra, a regra não é usada, então a regra
de correspondência não irá ter qualquer efeito sobre o destino do
pacote, mas os contadores na regra será incrementado.
33
Manipulando Chains – Jump Target
• ACCEPT --> Aceitar. Permite a passagem do pacote normalmente.
• DROP --> Abandonar. Não permite a passagem do pacote, ele será
descartado. Não avisa a origem sobre o ocorrido.
• REJECT --> Igual ao DROP, mas avisa a origem sobre o ocorrido
(envia pacote icmp unreachable).
• LOG --> Cria um log referente à regra, em /var/log/messages.
Usar antes de outras ações¹.
¹ : LOG é uma extensão não terminal, ou seja, mesmo que seja validado em uma regra
ele continuará a ser avaliado pelas regras subsequentes. Portanto se quiser descartar o
pacote terá que criar uma mesma regra mas com a target DROP ou REJECT, ou colocar
a política default como DROP.
34
Manipulando Chains – Jump Target
• Caso seja necessário criar uma regra onde seja efetuado o LOG de um
determinado pacote e logo após a exclusão dele, deve-se configurar da
seguinte maneira:
▫ #iptables -A INPUT -s 200.200.200.1 -i eth0 -j LOG
• Para registrar o bloqueio de pacotes vindos de 200.200.200.1 pela
interface eth0.
▫ #iptables -A INPUT -s 200.200.200.1 -i eth0 -j REJECT
• Para efetuar o bloqueio. Note que no exemplo anterior a regra que
registra o pacote (-j LOG) deve aparecer antes da regra que REJEITA
(-j REJECT), caso contrário a regra nunca funcionará.
35
Manipulando Chains
• Manipulação de pacotes para iniciar conexão (pacotes syn).
36
Manipulando Chains – Pacotes SYN
• Pacotes syn são usados para iniciarem uma conexão.
• O uso da opção --syn serve para especificar estes tipos de pacotes.
Desta maneira é possível bloquear somente os pacotes que iniciam
uma conexão, sem afetar os pacotes restantes.
• Para que uma conexão ocorra é necessário que a máquina obtenha a
resposta a pacotes syn enviados, caso ele seja bloqueado a resposta
nunca será retornada e a conexão não será estabelecida.
▫ #iptables -A INPUT -p tcp --syn --dport 23 -i eth1 -j
DROP
• A regra acima bloqueia (-j DROP) qualquer tentativa de conexão
(--syn) vindas da interface eth1 ao telnet (--dport 23) da
máquina local. A opção --syn somente pode ser especificada para o
protocolo TCP.
37
Lógica de Regras
• Funcionamento das regras.
38
Lógica das Regras (1/5)
• Observe os próximos exemplos:
• Exemplo A:
▫ #iptables -A INPUT -p ICMP -s 10.0.0.10 -j ACCEPT
▫ #iptables -A INPUT -p ICMP -j DROP
• Podemos concluir o seguinte:
• Exemplo A: todos os pings da máquina 10.0.0.10 serão aceitos, os
outros pings serão deletados.
39
Lógica das Regras (2/5)
• Exemplo B:
▫ #iptables -A INPUT -p ICMP -j DROP
▫ #iptables -A INPUT -p ICMP -s 10.0.0.10 -j ACCEPT
• Podemos concluir o seguinte:
• Exemplo B: todos os pings serão deletados, até mesmo os da máquina
10.0.0.10.
• Ou seja: a ordem da regras importam!
• Obs.: no caso do LOG, a regra mesmo que executada, passará para a
próxima condição.
40
Lógica das Regras (3/5)
• Impasses e ordem de processamento
• Se houver impasse entre regras, sempre valerá a primeira. Assim,
entre as regras:
▫ #iptables -A FORWARD -p icmp -j DROP
▫ #iptables -A FORWARD -p icmp -j ACCEPT
• Valerá:
▫ #iptables -A FORWARD -p icmp -j DROP
41
Lógica das Regras (4/5)
• Impasses e ordem de processamento
• Já entre as regras:
▫ #iptables -A FORWARD -p icmp -j ACCEPT
▫ #iptables -A FORWARD -p icmp -j DROP
• Valerá:
▫ #iptables -A FORWARD -p icmp -j ACCEPT
42
Lógica das Regras (5/5)
• Essas situações ocorrem porque as regras são processadas na ordem
em que aparecem.
• Depois do processamento da regra, pode haver continuidade de
processamento ou não.
• Isso irá depender da ação:
▫ ACCEPT --> Para de processar regras para o pacote atual;
▫ DROP --> Para de processar regras para o pacote atual;
▫ REJECT --> Para de processar regras para o pacote atual;
▫ LOG --> Continua a processar regras para o pacote atual;
43
Regras Comentadas
• Exemplo de funcionamento das regras.
44
Regras comentadas (1/6)
• Regras:
▫ #iptables -L
• Lista todas as regras existentes.
▫ #iptables -F
• Apaga todas as regras sem alterar a política.
▫ #iptables -P FORWARD DROP
• Estabelece uma política de proibição padrão para a passagem de
pacotes entre sub-redes.
45
Regras comentadas (2/6)
▫ #iptables -A FORWARD -j DROP
• Todos os pacotes oriundos de qualquer sub-rede e destinados a
qualquer sub-rede deverão ser descartados.
▫ #iptables -A FORWARD -j ACCEPT
• Todos os pacotes oriundos de qualquer sub-rede e destinados a
qualquer sub-rede deverão ser aceitos.
▫ #iptables -A FORWARD -s 10.0.0.0/8 -d www.chat.com.br -j
DROP
• Os pacotes oriundos da sub-rede 10.0.0.0 (máscara 255.0.0.0) e
destinados aos hosts cujos endereços IP respondem pelo nome
www.chat.com.br deverão ser descartados. Note que se a máquina
possuir domínios virtuais, todos esses serão bloqueados.
46
Regras comentadas (3/6)
▫ #iptables -A FORWARD -s 10.0.0.0/8 -d www.chat.com.br -j
REJECT
• Os pacotes oriundos da sub-rede 10.0.0.0 (máscara 255.0.0.0) e
destinados aos hosts cujos endereços IP respondem pelo nome
www.chat.com.br deverão ser descartados. Deverá ser enviado um
ICMP avisando à origem.
▫ #iptables -A FORWARD -d www.chat.com.br -j DROP
• Os pacotes oriundos de qualquer lugar e destinados aos hosts cujos
endereços IP respondem pelo nome www.chat.com.br deverão ser
descartados.
47
Regras comentadas (4/6)
▫ #iptables -A FORWARD -d 10.0.0.0/8 -s www.chat.com.br -j
DROP
• Os pacotes destinados à sub-rede 10.0.0.0 (máscara 255.0.0.0) e
oriundos aos hosts cujos endereços IP respondem pelo nome
www.chat.com.br deverão ser descartados.
▫ #iptables -A FORWARD -s www.chat.com.br -j DROP
• Os pacotes oriundos aos hosts cujos endereços IP respondem pelo
nome www.chat.com.br e destinados a qualquer lugar deverão ser
descartados.
▫ #iptables -A FORWARD -s 200.221.20.0/24 -j DROP
• Os pacotes oriundos da sub-rede 200.221.20.0 (máscara
255.255.255.0) e destinados a qualquer lugar deverão ser descartados.
48
Regras comentadas (5/6)
▫ #iptables -A FORWARD -s 10.0.0.5 -p icmp -j DROP
• Os pacotes icmp oriundos do host 10.0.0.5 e destinados a qualquer
lugar deverão ser descartados.
▫ #iptables -A FORWARD -i eth0 -j ACCEPT
• Os pacotes que entrarem pela interface eth0 serão aceitos.
▫ #iptables -A FORWARD -i ! eth0 -j ACCEPT
• Os pacotes que entrarem por qualquer interface, exceto a eth0, serão
aceitos.
49
Regras comentadas (6/6)
▫ #iptables -A FORWARD -s 10.0.0.5 -p tcp --sport 80 -j
LOG
• O tráfego de pacotes TCP oriundos da porta 80 do host 10.0.0.5 e
destinados a qualquer lugar deverá ser gravado em log. No caso,
/var/log/messages.
▫ #iptables -A FORWARD -p tcp --dport 25 -j ACCEPT
• Os pacotes TCP destinados à porta 25 de qualquer host deverão ser
aceitos.
50
Dúvidas?
51
Exercícios
• Responda os exercícios assumindo que sua máquina irá assumir a
posição do host informado no exercício.
52
Exercícios
• Responda os exercícios de acordo com a seguinte topologia:
53
Exercícios
• 1 - Algumas regras para o roteador “R”:
a) Não permita que a rede 192.168/16 envie pings para o servidor “S”.
b) Não permita que a máquina “B” envie pacotes UDP para a máquina “Y”.
54
Exercícios
• 2 - Algumas regras para o servidor “S”:
a) Só será permitido à máquina “X” fazer telnet (baseado em TCP e opera na
porta 23) no servidor.
b) A máquina “B” está proibida de acessar TFTP no servidor.
c) A rede 172.29/16 está proibida de enviar e-mails pelo servidor. E se
alguém tentar, registrar em log.
55
Exercícios
• 3 - Algumas regras para a máquina “A”:
a) Só será permitido resolver DNS pelo servidor “S”.
b) A única página web que se permite acessar é a que está no servidor “S”.
Bloquear e registrar em log outras tentativas.
56
Respostas
57
Exercício 1
• 1 - Algumas regras para o roteador “R”:
a) Não permita que a rede 192.168/16 envie pings para o servidor “S”.
 (policy = ACCEPT)
 #iptables -A FORWARD -p ICMP -s 192.168.0.0/16 -d
200.143.81.25 -j REJECT
b) Não permita que a máquina “B” envie pacotes UDP para a máquina “Y”.
 #iptables -A FORWARD -p UDP -s 172.29.0.3 -d
192.168.0.5 -j DROP
58
Exercício 2
• 2 - Algumas regras para o servidor “S”:
a) Só será permitido à máquina “X” fazer telnet (baseado em TCP e opera na
porta 23) no servidor.
 (policy = ACCEPT)
 #iptables -A INPUT -s 192.168.0.4 -p TCP --dport 23 -j
ACCEPT
 #iptables -A INPUT -p TCP --dport 23 -j DROP
b) A máquina “B” está proibida de acessar TFTP no servidor.
 #iptables -A INPUT -s 172.29.0.3 -p UDP --dport 69 -j DROP
c) A rede 172.29/16 está proibida de enviar e-mails pelo servidor. E se
alguém tentar, registrar em log.
 #iptables -A INPUT -s 172.29.0.0/16 -p TCP --dport 25 -j LOG
 #iptables -A INPUT -s 172.29.0.0/16 -p TCP --dport 25 -j
DROP
 #iptables -A INPUT -s 172.29.0.0/16 -p TCP --dport 587 -j
LOG
 #iptables -A INPUT -s 172.29.0.0/16 -p TCP --dport 587 -j
DROP
59
Exercício 3
• 3 - Algumas regras para a máquina “A”:
a) Só será permitido resolver DNS pelo servidor “S”.
 (policy = ACCEPT)
 #iptables -A OUTPUT -d 200.143.81.25 -p UDP --dport 53
-j ACCEPT
 #iptables -A OUTPUT -p UDP --dport 53 -j DROP
b) A única página web que se permite acessar é a que está no servidor “S”.
Bloquear e registrar em log outras tentativas.
 #iptables -A OUTPUT -d 200.143.81.25 -p TCP --dport 80
-j ACCEPT
 #iptables -A OUTPUT -p TCP --dport 80 -j LOG
 #iptables -A OUTPUT -p TCP --dport 80 -j DROP
60
Outras Dúvidas?
61
Firewall Iptables - Filter
Prof. Andrei Carniel
Universidade Tecnológica Federal do Paraná – UTFPR
E-mail: andreicarniel@utfpr.edu.br / andrei.carniel@gmail.com

Mais conteúdo relacionado

Mais procurados

VPN - O que é a VPN?
VPN - O que é a VPN?VPN - O que é a VPN?
VPN - O que é a VPN?
mateus rodrigues
 
Seguranca da Informação - VPN
Seguranca da Informação - VPNSeguranca da Informação - VPN
Seguranca da Informação - VPNLuiz Arthur
 
Apresentação sobre ipv6
Apresentação sobre ipv6Apresentação sobre ipv6
Apresentação sobre ipv6
Leandro Rodrigues
 
Protocolo IPv4
Protocolo IPv4Protocolo IPv4
Protocolo IPv4
André Nobre
 
Endereços IP´s
Endereços IP´sEndereços IP´s
Servidores Web
Servidores Web Servidores Web
Servidores Web
bastosluis
 
Enderecamento ip
Enderecamento ipEnderecamento ip
Enderecamento ip
redesteste
 
Roteamento
RoteamentoRoteamento
Subneteo de redes
Subneteo de redesSubneteo de redes
Subneteo de redes
DAYSITATIANA
 
Servidor dns
Servidor dnsServidor dns
Servidor dns
Mario Kleber
 
Endereçamento IP
Endereçamento IPEndereçamento IP
Endereçamento IP
Pjpilin
 
Enderecamento ip
Enderecamento ipEnderecamento ip
Enderecamento ip
escolaporto
 
05-CALCULO DE IP.pptx
05-CALCULO DE IP.pptx05-CALCULO DE IP.pptx
05-CALCULO DE IP.pptx
Joao Neves
 
Hardware e software de rede
Hardware e software de redeHardware e software de rede
Hardware e software de rede
marilia-figueira12
 
Ip Addressing Basics
Ip Addressing BasicsIp Addressing Basics
Ip Addressing Basics
tmavroidis
 
Monitoramento de servidores e ativos de rede com zabbix
Monitoramento de servidores e ativos de rede com zabbixMonitoramento de servidores e ativos de rede com zabbix
Monitoramento de servidores e ativos de rede com zabbix
Sergio Roberto
 
Redes de computadores 2 - Aula 4 - Divisão em sub-redes
Redes de computadores 2 - Aula 4 - Divisão em sub-redesRedes de computadores 2 - Aula 4 - Divisão em sub-redes
Redes de computadores 2 - Aula 4 - Divisão em sub-redes
Cleber Fonseca
 

Mais procurados (20)

VPN - O que é a VPN?
VPN - O que é a VPN?VPN - O que é a VPN?
VPN - O que é a VPN?
 
Seguranca da Informação - VPN
Seguranca da Informação - VPNSeguranca da Informação - VPN
Seguranca da Informação - VPN
 
Apresentação sobre ipv6
Apresentação sobre ipv6Apresentação sobre ipv6
Apresentação sobre ipv6
 
Protocolo IPv4
Protocolo IPv4Protocolo IPv4
Protocolo IPv4
 
Endereços IP´s
Endereços IP´sEndereços IP´s
Endereços IP´s
 
Cidr calculo de subrede
Cidr   calculo de subredeCidr   calculo de subrede
Cidr calculo de subrede
 
Servidores Web
Servidores Web Servidores Web
Servidores Web
 
Enderecamento ip
Enderecamento ipEnderecamento ip
Enderecamento ip
 
Roteamento
RoteamentoRoteamento
Roteamento
 
Subneteo de redes
Subneteo de redesSubneteo de redes
Subneteo de redes
 
Servidor dns
Servidor dnsServidor dns
Servidor dns
 
CCNA presentation.
CCNA presentation.CCNA presentation.
CCNA presentation.
 
Endereçamento IP
Endereçamento IPEndereçamento IP
Endereçamento IP
 
Enderecamento ip
Enderecamento ipEnderecamento ip
Enderecamento ip
 
Dhcp
DhcpDhcp
Dhcp
 
05-CALCULO DE IP.pptx
05-CALCULO DE IP.pptx05-CALCULO DE IP.pptx
05-CALCULO DE IP.pptx
 
Hardware e software de rede
Hardware e software de redeHardware e software de rede
Hardware e software de rede
 
Ip Addressing Basics
Ip Addressing BasicsIp Addressing Basics
Ip Addressing Basics
 
Monitoramento de servidores e ativos de rede com zabbix
Monitoramento de servidores e ativos de rede com zabbixMonitoramento de servidores e ativos de rede com zabbix
Monitoramento de servidores e ativos de rede com zabbix
 
Redes de computadores 2 - Aula 4 - Divisão em sub-redes
Redes de computadores 2 - Aula 4 - Divisão em sub-redesRedes de computadores 2 - Aula 4 - Divisão em sub-redes
Redes de computadores 2 - Aula 4 - Divisão em sub-redes
 

Destaque

Aula 8.2 - Iptables Impasses e Scripts
Aula 8.2 - Iptables Impasses e ScriptsAula 8.2 - Iptables Impasses e Scripts
Aula 8.2 - Iptables Impasses e Scripts
Andrei Carniel
 
Seguranca da Informação - Firewall iptables
Seguranca da Informação - Firewall iptablesSeguranca da Informação - Firewall iptables
Seguranca da Informação - Firewall iptablesLuiz Arthur
 
Iptables Completo Oliver
Iptables   Completo   OliverIptables   Completo   Oliver
Iptables Completo Oliver
marcosserva
 
Iptables Básico
Iptables BásicoIptables Básico
Iptables Básico
Leonardo Damasceno
 
Servidor proxy
Servidor proxy Servidor proxy
Servidor proxy
Silvino Neto
 
SENAI - Segurança firewall
SENAI - Segurança   firewall SENAI - Segurança   firewall
SENAI - Segurança firewall
Carlos Melo
 
Servidor de internet (NAT, Squid, Sarg)
Servidor de internet (NAT, Squid, Sarg)Servidor de internet (NAT, Squid, Sarg)
Servidor de internet (NAT, Squid, Sarg)
Danilo Filitto
 
Aula 8.0 - Segurança
Aula 8.0 - SegurançaAula 8.0 - Segurança
Aula 8.0 - Segurança
Andrei Carniel
 
Oficina de Squid: Filtros Inteligentes
 Oficina de Squid: Filtros Inteligentes Oficina de Squid: Filtros Inteligentes
Oficina de Squid: Filtros Inteligentes
Thiago Finardi
 
Servidor Proxy Squid
Servidor Proxy SquidServidor Proxy Squid
Servidor Proxy Squid
Frederico Madeira
 
Trabalho sobre Proxy
Trabalho sobre ProxyTrabalho sobre Proxy
Trabalho sobre Proxy
Anderson Zardo
 
Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)elliando dias
 
Configurando servidor web https no apache2 ed
Configurando servidor web https no apache2 edConfigurando servidor web https no apache2 ed
Configurando servidor web https no apache2 ed
Carlos Melo
 
Prova segurança de redes
Prova segurança de redesProva segurança de redes
Prova segurança de redes
Carlos Melo
 
Dropbox
DropboxDropbox
Google drive - Planilhas
Google drive - PlanilhasGoogle drive - Planilhas
Google drive - Planilhas
Andrei Carniel
 
Curso de Arduino Completo
Curso de Arduino CompletoCurso de Arduino Completo
Curso de Arduino Completo
Tiago Barros
 

Destaque (20)

Aula 8.2 - Iptables Impasses e Scripts
Aula 8.2 - Iptables Impasses e ScriptsAula 8.2 - Iptables Impasses e Scripts
Aula 8.2 - Iptables Impasses e Scripts
 
Seguranca da Informação - Firewall iptables
Seguranca da Informação - Firewall iptablesSeguranca da Informação - Firewall iptables
Seguranca da Informação - Firewall iptables
 
Iptables Completo Oliver
Iptables   Completo   OliverIptables   Completo   Oliver
Iptables Completo Oliver
 
Iptables Básico
Iptables BásicoIptables Básico
Iptables Básico
 
Servidor proxy Squid
Servidor proxy SquidServidor proxy Squid
Servidor proxy Squid
 
Servidor proxy
Servidor proxy Servidor proxy
Servidor proxy
 
SENAI - Segurança firewall
SENAI - Segurança   firewall SENAI - Segurança   firewall
SENAI - Segurança firewall
 
Servidor de internet (NAT, Squid, Sarg)
Servidor de internet (NAT, Squid, Sarg)Servidor de internet (NAT, Squid, Sarg)
Servidor de internet (NAT, Squid, Sarg)
 
Aula 8.0 - Segurança
Aula 8.0 - SegurançaAula 8.0 - Segurança
Aula 8.0 - Segurança
 
Oficina de Squid: Filtros Inteligentes
 Oficina de Squid: Filtros Inteligentes Oficina de Squid: Filtros Inteligentes
Oficina de Squid: Filtros Inteligentes
 
Servidor Proxy Squid
Servidor Proxy SquidServidor Proxy Squid
Servidor Proxy Squid
 
Trabalho sobre Proxy
Trabalho sobre ProxyTrabalho sobre Proxy
Trabalho sobre Proxy
 
Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)
 
Squid
SquidSquid
Squid
 
Configurando servidor web https no apache2 ed
Configurando servidor web https no apache2 edConfigurando servidor web https no apache2 ed
Configurando servidor web https no apache2 ed
 
Prova segurança de redes
Prova segurança de redesProva segurança de redes
Prova segurança de redes
 
Introdução ao SQL
Introdução ao SQLIntrodução ao SQL
Introdução ao SQL
 
Dropbox
DropboxDropbox
Dropbox
 
Google drive - Planilhas
Google drive - PlanilhasGoogle drive - Planilhas
Google drive - Planilhas
 
Curso de Arduino Completo
Curso de Arduino CompletoCurso de Arduino Completo
Curso de Arduino Completo
 

Semelhante a Aula 8.1 - Iptables tabela Filter

Apostila firewall-consulta
Apostila firewall-consultaApostila firewall-consulta
Apostila firewall-consulta
rafael informática
 
Firewall - Introducao.pdf
Firewall - Introducao.pdfFirewall - Introducao.pdf
Firewall - Introducao.pdf
ssusere0b5a8
 
IPTables na prática
IPTables na práticaIPTables na prática
IPTables na prática
aptans
 
Workshop iptables uern_stacruz_14_dez2010_v1
Workshop iptables uern_stacruz_14_dez2010_v1Workshop iptables uern_stacruz_14_dez2010_v1
Workshop iptables uern_stacruz_14_dez2010_v1Matheus Araújo
 
Configuração de Interface de Rede no Linux por comandos
Configuração de Interface de Rede no Linux por comandosConfiguração de Interface de Rede no Linux por comandos
Configuração de Interface de Rede no Linux por comandos
Wellington Oliveira
 
Atividade acl extendida
Atividade acl extendidaAtividade acl extendida
Atividade acl extendida
Arlimar Jacinto
 
Rct 17 - camada de rede - endereçamento ip
Rct   17 - camada de rede - endereçamento ipRct   17 - camada de rede - endereçamento ip
Rct 17 - camada de rede - endereçamento ipUniversal.org.mx
 
Resumo comandos cisco
Resumo comandos ciscoResumo comandos cisco
Resumo comandos cisco
Allan Alencar
 
Netfilter + Iptables
Netfilter + IptablesNetfilter + Iptables
Netfilter + Iptables
Rodrigo Piovesana
 
Firewall em Linux
Firewall em LinuxFirewall em Linux
Firewall em Linux
guest4e5ab
 
Curso redes seed
Curso redes seedCurso redes seed
Curso redes seed
Flavio Ferreira
 
Redes prática - Enderecamento I Plinux
Redes prática - Enderecamento I PlinuxRedes prática - Enderecamento I Plinux
Redes prática - Enderecamento I Plinux
Luiz Arthur
 
Redes de Computadores 2 - Aula 2 - Protocolo TCP/IP
Redes de Computadores 2 - Aula 2 - Protocolo TCP/IPRedes de Computadores 2 - Aula 2 - Protocolo TCP/IP
Redes de Computadores 2 - Aula 2 - Protocolo TCP/IP
Cleber Fonseca
 
Entendendo como fazer um firewall pessoal
Entendendo como fazer um firewall pessoalEntendendo como fazer um firewall pessoal
Entendendo como fazer um firewall pessoal
Almir Mendes
 

Semelhante a Aula 8.1 - Iptables tabela Filter (20)

Apostila firewall-consulta
Apostila firewall-consultaApostila firewall-consulta
Apostila firewall-consulta
 
Firewall no linux
Firewall no linuxFirewall no linux
Firewall no linux
 
Firewall - Introducao.pdf
Firewall - Introducao.pdfFirewall - Introducao.pdf
Firewall - Introducao.pdf
 
IPTables na prática
IPTables na práticaIPTables na prática
IPTables na prática
 
Unidade3 seg perimetral
Unidade3 seg perimetralUnidade3 seg perimetral
Unidade3 seg perimetral
 
Workshop iptables uern_stacruz_14_dez2010_v1
Workshop iptables uern_stacruz_14_dez2010_v1Workshop iptables uern_stacruz_14_dez2010_v1
Workshop iptables uern_stacruz_14_dez2010_v1
 
Configuração de Interface de Rede no Linux por comandos
Configuração de Interface de Rede no Linux por comandosConfiguração de Interface de Rede no Linux por comandos
Configuração de Interface de Rede no Linux por comandos
 
Atividade acl extendida
Atividade acl extendidaAtividade acl extendida
Atividade acl extendida
 
Rct 17 - camada de rede - endereçamento ip
Rct   17 - camada de rede - endereçamento ipRct   17 - camada de rede - endereçamento ip
Rct 17 - camada de rede - endereçamento ip
 
Resumo comandos cisco
Resumo comandos ciscoResumo comandos cisco
Resumo comandos cisco
 
02-Flowspec_GTER29
02-Flowspec_GTER2902-Flowspec_GTER29
02-Flowspec_GTER29
 
Netfilter + Iptables
Netfilter + IptablesNetfilter + Iptables
Netfilter + Iptables
 
Firewall em Linux
Firewall em LinuxFirewall em Linux
Firewall em Linux
 
Curso redes seed
Curso redes seedCurso redes seed
Curso redes seed
 
Ntop
NtopNtop
Ntop
 
Redes prática - Enderecamento I Plinux
Redes prática - Enderecamento I PlinuxRedes prática - Enderecamento I Plinux
Redes prática - Enderecamento I Plinux
 
Redes de Computadores 2 - Aula 2 - Protocolo TCP/IP
Redes de Computadores 2 - Aula 2 - Protocolo TCP/IPRedes de Computadores 2 - Aula 2 - Protocolo TCP/IP
Redes de Computadores 2 - Aula 2 - Protocolo TCP/IP
 
Entendendo como fazer um firewall pessoal
Entendendo como fazer um firewall pessoalEntendendo como fazer um firewall pessoal
Entendendo como fazer um firewall pessoal
 
Como montar uma rede cabeada
Como montar uma rede cabeadaComo montar uma rede cabeada
Como montar uma rede cabeada
 
Livro cisco
Livro ciscoLivro cisco
Livro cisco
 

Último

Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptxSlides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
PROPOSTA CURRICULAR EDUCACAO FISICA.docx
PROPOSTA CURRICULAR  EDUCACAO FISICA.docxPROPOSTA CURRICULAR  EDUCACAO FISICA.docx
PROPOSTA CURRICULAR EDUCACAO FISICA.docx
Escola Municipal Jesus Cristo
 
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
Escola Municipal Jesus Cristo
 
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdfCADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
NatySousa3
 
UFCD_8298_Cozinha criativa_índice do manual
UFCD_8298_Cozinha criativa_índice do manualUFCD_8298_Cozinha criativa_índice do manual
UFCD_8298_Cozinha criativa_índice do manual
Manuais Formação
 
A Ilustre Casa de Ramires, de Eça de Queirós
A Ilustre Casa de Ramires, de Eça de QueirósA Ilustre Casa de Ramires, de Eça de Queirós
A Ilustre Casa de Ramires, de Eça de Queirós
rafabebum
 
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptxMÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
Martin M Flynn
 
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptxApresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
JulianeMelo17
 
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptxLIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
WelidaFreitas1
 
Acróstico - Reciclar é preciso
Acróstico   -  Reciclar é preciso Acróstico   -  Reciclar é preciso
Acróstico - Reciclar é preciso
Mary Alvarenga
 
Sócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slidesSócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slides
jbellas2
 
Unificação da Itália e a formação da Alemanha
Unificação da Itália e a formação da AlemanhaUnificação da Itália e a formação da Alemanha
Unificação da Itália e a formação da Alemanha
Acrópole - História & Educação
 
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdfAPOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
RenanSilva991968
 
.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt
IslanderAndrade
 
“A classe operária vai ao paraíso os modos de produzir e trabalhar ao longo ...
“A classe operária vai ao paraíso  os modos de produzir e trabalhar ao longo ...“A classe operária vai ao paraíso  os modos de produzir e trabalhar ao longo ...
“A classe operária vai ao paraíso os modos de produzir e trabalhar ao longo ...
AdrianoMontagna1
 
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Luana Neres
 
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de CarvalhoO sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
analuisasesso
 
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptxSlides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
LuizHenriquedeAlmeid6
 
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
Luana Neres
 
Química orgânica e as funções organicas.pptx
Química orgânica e as funções organicas.pptxQuímica orgânica e as funções organicas.pptx
Química orgânica e as funções organicas.pptx
KeilianeOliveira3
 

Último (20)

Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptxSlides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
 
PROPOSTA CURRICULAR EDUCACAO FISICA.docx
PROPOSTA CURRICULAR  EDUCACAO FISICA.docxPROPOSTA CURRICULAR  EDUCACAO FISICA.docx
PROPOSTA CURRICULAR EDUCACAO FISICA.docx
 
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
 
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdfCADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
 
UFCD_8298_Cozinha criativa_índice do manual
UFCD_8298_Cozinha criativa_índice do manualUFCD_8298_Cozinha criativa_índice do manual
UFCD_8298_Cozinha criativa_índice do manual
 
A Ilustre Casa de Ramires, de Eça de Queirós
A Ilustre Casa de Ramires, de Eça de QueirósA Ilustre Casa de Ramires, de Eça de Queirós
A Ilustre Casa de Ramires, de Eça de Queirós
 
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptxMÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
MÁRTIRES DE UGANDA Convertem-se ao Cristianismo - 1885-1887.pptx
 
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptxApresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
 
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptxLIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
 
Acróstico - Reciclar é preciso
Acróstico   -  Reciclar é preciso Acróstico   -  Reciclar é preciso
Acróstico - Reciclar é preciso
 
Sócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slidesSócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slides
 
Unificação da Itália e a formação da Alemanha
Unificação da Itália e a formação da AlemanhaUnificação da Itália e a formação da Alemanha
Unificação da Itália e a formação da Alemanha
 
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdfAPOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
 
.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt
 
“A classe operária vai ao paraíso os modos de produzir e trabalhar ao longo ...
“A classe operária vai ao paraíso  os modos de produzir e trabalhar ao longo ...“A classe operária vai ao paraíso  os modos de produzir e trabalhar ao longo ...
“A classe operária vai ao paraíso os modos de produzir e trabalhar ao longo ...
 
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
 
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de CarvalhoO sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
 
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptxSlides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
Slides Lição 10, Central Gospel, A Batalha Do Armagedom, 1Tr24.pptx
 
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
 
Química orgânica e as funções organicas.pptx
Química orgânica e as funções organicas.pptxQuímica orgânica e as funções organicas.pptx
Química orgânica e as funções organicas.pptx
 

Aula 8.1 - Iptables tabela Filter

  • 1. Firewall Iptables - Filter Prof. Andrei Carniel Universidade Tecnológica Federal do Paraná – UTFPR E-mail: andreicarniel@utfpr.edu.br / andrei.carniel@gmail.com
  • 2. Firewall Iptables (1/4) • O IPTables é uma versão robusta, completa e tão estável quanto seus antecessores IPFWADM e IPCHAINS, implementados nos Kernels Linux 2.0 e 2.2 respectivamente. • IPTables é um firewall muito conhecido na comunidade Linux que foi incorporado ao mesmo em 1999. • Principais características:  Filtro de Pacotes (Foco dessa aula)  NAT  QoS sobre tráfego  Redirecionamento de endereços e portas  Detecção de fragmentos  Bloqueio de ataques  Entre outros. 2
  • 3. Firewall Iptables (2/4) • Surgiu com o objetivo de proteger as máquinas de acessos ou tráfego indesejado. • Proteger serviços que estejam rodando na máquina. • Bloquear a passagem de algo que não deseja receber (por exemplo: conexões vindas da Internet). • Foi introduzido no kernel 2.4 do Linux. • É um firewall em nível de pacotes, com funcionamento baseado em endereço e porta de origem/destino, prioridade, entre outros. • Seu funcionamento é baseado na comparação de regras para saber se um pacote pode ou não passar. 3
  • 4. Firewall Iptables (3/4) • Pode ser usado para: ▫ Monitorar e/ou modificar tráfego de rede, efetuar NAT (masquerading, source NAT, destination NAT); ▫ Redirecionamento de pacotes; ▫ Marcação de pacotes; ▫ Modificação de prioridade dos pacotes de entrada/saída; ▫ Contagem de bytes; ▫ Divisão de tráfego; ▫ Proteção anti-spoofing (pacotes com IP falsificado); ▫ Proteção contra syn flood (forma de negação de serviço); ▫ Proteção contra DoS (forma de negação de serviço); ▫ Etc. 4
  • 5. Firewall Iptables (4/4) • Não funciona de forma automática, ou seja, somente instalar e esperar que ele faça o resto. • É necessário pelo menos conhecimentos básicos em redes TCP/IP e roteamento e portas. • Esses conhecimentos são necessários para criar regras de segurança. • Lembre-se: ▫ A segurança do sistema depende do conjunto de regras que serão criados por você; ▫ 95% das invasões de sucesso são devido a falhas humanas na configuração; • Trabalharemos principalmente com a função Filtro de Pacotes que é a mais utilizada no IPTables, bloqueando e permitindo serviços em uma rede. 5
  • 7. Chains – Lista de regras • Basicamente para filtragem de pacotes existem basicamente três tipos de chains, são elas: ▫ INPUT --> Refere-se a todos os pacotes destinados à máquina filtro. ▫ OUTPUT --> Refere-se a todos os pacotes gerados na máquina filtro. ▫ FORWARD --> Refere-se a todos os pacotes oriundos de uma máquina e destinados a outra. São pacotes que atravessam a máquina filtro, mas não são destinados a ela. 7
  • 8. Chains – Lista de regras • Para verificar as regras em nas CHAINS, digite: ▫ # iptables -L • O resultado deve ser algo como: Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination 8
  • 9. Chains – Lista de regras • Note que não existem regras em qualquer das CHAINS, mas o policy padrão é ACCEPT, ou seja, aceite qualquer pacote de qualquer origem/destino. • Outra observação importante aqui é que o comando acima nos mostrou a as 3 tabelas disponíveis. • Sempre que formos inserir uma nova regra podemos utilizar a opção -t filter para especificar a tabela, mas essa opção não é obrigatória. 9
  • 10. Manipulando Chains • O Iptables trabalha com uma tabela de regras que é analisada uma a uma até que a última seja processada. • Por padrão, se uma regra tiver qualquer erro, uma mensagem será mostrada e ela descartada. • O pacote não conferirá e a ação final (se ele vai ser aceito ou rejeitado) dependerá das regras seguintes. • Agora que sabemos a existência das três CHAINS, devemos usar comandos para adicionar regras: 10
  • 11. Manipulando Chains Principais comandos para inclusão e exclusão de chains! 11
  • 12. Manipulando Chains • Sintaxe padrão: ▫ #iptables -[COMANDO] [CHAIN] [TARGET] • Exemplo: ▫ #iptables –P INPUT DROP • Todos os pacotes por default serão rejeitados. 12
  • 13. Manipulando Chains – Inclusão e Exclusão (1/5) • -P --> Policy (política). Altera a política da chain. A política inicial de cada chain é ACCEPT. • Isso faz com que o filtro, inicialmente, aceite qualquer INPUT, OUTPUT ou FORWARD. • A política pode ser alterada para DROP, que irá negar o serviço da chain, até que uma opção -A entre em vigor. • O -P não aceita REJECT ou LOG. Exemplos: ▫ #iptables -P FORWARD DROP ▫ #iptables -P INPUT ACCEPT 13
  • 14. Manipulando Chains – Inclusão e Exclusão (2/5) • -A --> Append (anexar). Acresce uma nova regra à chain. • Tem prioridade sobre o -P. • Geralmente, como buscamos segurança máxima, colocamos todas as chains em política DROP, com o -P e, depois, abrimos o que é necessário com o -A. • Exemplos: ▫ #iptables -A OUTPUT -d 172.20.5.10 -j ACCEPT ▫ #iptables -A FORWARD -s 10.0.0.1 -j DROP ▫ #iptables -A FORWARD -d www.chat.com.br -j DROP 14
  • 15. Manipulando Chains – Inclusão e Exclusão (3/5) • -D --> Delete (apagar). Apaga uma regra. • A regra deve ser escrita novamente, trocando-se a opção para -D. Exemplos: • Para apagar as regras anteriores, usa-se: ▫ #iptables -D OUTPUT -d 172.20.5.10 -j ACCEPT ▫ #iptables -D FORWARD -s 10.0.0.1 -j DROP ▫ #iptables -D FORWARD -d www.chat.com.br -j DROP 15
  • 16. Manipulando Chains – Inclusão e Exclusão (4/5) • Também é possível apagar a regra pelo seu número de ordem. • Pode-se utilizar o -L para verificar o número de ordem. • Verificado esse número, basta citar a chain e o número de ordem. Exemplo: ▫ #iptables -D FORWARD 4 • Isso deleta a regra número 4 da chain FORWARD. 16
  • 17. Manipulando Chains – Inclusão e Exclusão (5/5) • -L --> List (listar). Lista as regras existentes. Exemplos: ▫ #iptables -L ▫ #iptables -L FORWARD (Lista apenas da Chain FORWARD) • -F --> Flush (esvaziar). Remove todas as regras existentes. No entanto, não altera a política (-P). Exemplos: ▫ #iptables -F ▫ #iptables -F FORWARD (Remove apenas regras da Chain FORWARD) 17
  • 18. Manipulando Chains – Inclusão e Exclusão (6/6) • -I --> Insert(inserir). Insere uma nova regra no início da lista. Exemplos: ▫ #iptables –I OUTPUT –d 200.200.2 –j ACCEPT • -N --> New(nova). Adiciona uma nova chain. ▫ #iptables -N internet • Para adicionar uma regra na chain: ▫ #iptables -A internet -d 127.0.0.1 -j DROP • Para deletar uma chain: ▫ #iptables -X internet 18
  • 19. Manipulando Chains Principais comando para manipulação de origem e destino! 19
  • 20. Manipulando Chains – Origem e Destino (1/4) • -s --> Source (origem). Estabelece a origem do pacote. • Geralmente é uma combinação do endereço IP com a máscara de sub- rede, separados por uma barra. Exemplo: ▫ #-s 172.20.0.0/255.255.0.0 • No caso, vimos a sub-rede 172.20.0.0. Para hosts, a máscara sempre será 255.255.255.255. Exemplo: ▫ #-s 172.20.5.10/255.255.255.255 20
  • 21. Manipulando Chains – Origem e Destino (2/4) • Agora vimos o host 172.20.5.10. Ainda no caso de hosts, a máscara pode ser omitida. • Caso isso ocorra, o Iptables considera a máscara como 255.255.255.255. Exemplo: ▫ #-s 172.20.5.10 • Isso corresponde ao host 172.20.5.10. Há um recurso para simplificar a utilização da máscara de sub-rede. • Basta utilizar a quantidade de bits 1 existentes na máscara. Assim, a máscara 255.255.0.0 vira 16. A utilização fica assim: ▫ #-s 172.20.0.0/16 21
  • 22. Manipulando Chains – Origem e Destino (3/4) • Outra possibilidade é a designação de hosts pelo nome. Exemplo: ▫ #-s www.chat.com.br • Para especificar qualquer origem, utilize a rota default, ou seja, 0.0.0.0/0.0.0.0, também admitindo 0/0. • Exemplo Geral: ▫ #iptables -A INPUT -s 200.200.200.0/24 -j DROP • Bloqueia o tráfego vindo da rede 200.200.200.*. 22
  • 23. Manipulando Chains – Origem e Destino (4/4) • -d --> Destination (destino). Estabelece o destino do pacote. • Funciona exatamente como o -s, incluindo a sintaxe. • Exemplo Geral: ▫ #iptables -A OUTPUT -d 10.1.2.3 -j DROP • Bloqueia conexões com o destino 10.1.2.3: 23
  • 24. Manipulando Chains – Protocolos • -p --> Protocol (protocolo). Especifica o protocolo a ser filtrado. • O protocolo IP pode ser especificado pelo seu número (vide /etc/protocols) ou pelo nome. Os protocolos mais utilizados são udp, tcp e icmp. Exemplo: ▫ #-p icmp • Exemplo: ▫ #iptables -A OUTPUT -d 200.200.200.20 -p tcp -j DROP • Bloqueia qualquer pacote com destino para 200.200.200.20 via protocolo TCP. 24
  • 25. Manipulando Chains – Interface de Rede (1/3) • -i --> In-Interface (interface de entrada). Especifica a interface de entrada. • As interfaces existentes podem ser vistas com o comando #ifconfig. • Exemplo: ▫ #-i ppp0 • O -i não pode ser utilizado com a chain OUTPUT. 25
  • 26. Manipulando Chains – Interface de Rede (2/3) • O sinal + pode ser utilizado para simbolizar várias interfaces. • Exemplo: ▫ #-i eth+ • eth+ refere-se à eth0, eth1, eth2 e etc. • Exemplo geral: ▫ #iptables -A FORWARD -i eth0 -j ACCEPT • Os pacotes que entrarem pela interface eth0 serão aceitos. 26
  • 27. Manipulando Chains – Interface de Rede (3/3) • -o --> Out-Interface (interface de saída). Especifica a interface de saída. • Similar a -i, inclusive nas flexibilidades. • O -o não pode ser utilizado com a chain INPUT. • Exemplo: ▫ #iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE • Todos os pacotes que saírem pela interface ppp0 (modem) serão mascarados. Isso dá um nível de segurança elevado à rede que está atrás da ppp0. É uma boa regra para navegação na Internet. 27
  • 28. Manipulando Chains – Portas (1/2) • --sport --> Source Port. Porta de origem. • Só funciona com as opções -p udp e -p tcp. Exemplo: ▫ #-p tcp --sport 80 • Refere-se à porta 80 sobre protocolo TCP. • Exemplo: ▫ #iptables -A OUTPUT -d 200.200.200.20 -p tcp --sport 100:1023 -j DROP • Bloqueia qualquer pacote com destino a 200.200.200.20, que utiliza protocolo TCP e se originou na faixa de portas 100 a 1023. 28
  • 29. Manipulando Chains – Portas (2/2) • --dport --> Destination Port. Porta de destino. • Só funciona com as opções -p udp e -p tcp. • Similar a --sport. • Exemplo: ▫ #iptables -A OUTPUT -d 200.200.200.20 -p tcp --dport 100:1023 -j DROP • Bloqueia qualquer pacote com destino a 200.200.200.20, que utiliza protocolo TCP e tem como destino qualquer porta da faixa de 100 a 1023. 29
  • 30. Manipulando Chains – Exclusão (1/2) • ! --> Exclusão. Utilizado com -s, -d, -p, -i, -o e outros, para excluir o argumento. • Funciona para muitos parâmetros, como o endereço de origem/destino, protocolo, porta, mensagens ICMP, fragmentos, etc... podem ser precedidos pelo sinal “!” que significa exceção • Exemplo: ▫ #-s ! 10.0.0.1 • Isso refere-se a qualquer endereço de entrada, exceto o 10.0.0.1. ▫ #-p ! tcp • Todos os protocolos, exceto o TCP. 30
  • 31. Manipulando Chains – Exclusão (2/2) • Exemplos: ▫ #iptables -A INPUT ! -s 200.200.200.10 -p tcp -j DROP • Diz para rejeitar todos os pacotes EXCETO os que vem do endereço 200.200.200.10 . ▫ #iptables -A INPUT -s 200.200.200.10 ! -p tcp -j DROP • Bloqueia todos os pacotes vindos de 200.200.200.10, EXCETO os do protocolo TCP. 31
  • 32. Manipulando Chains • O alvo (-j) é o destino que um pacote terá quando conferir com as condições de uma regra. 32
  • 33. Manipulando Chains – Jump Target • Isto especifica o alvo da regra, isto é, o que fazer se o pacote corresponde a ele. • O alvo pode ser uma cadeia definida pelo usuário, um dos alvos embutidos especiais, que decidem o destino do pacote imediatamente, ou uma extensão. • Se esta opção for omitido em regra, a regra não é usada, então a regra de correspondência não irá ter qualquer efeito sobre o destino do pacote, mas os contadores na regra será incrementado. 33
  • 34. Manipulando Chains – Jump Target • ACCEPT --> Aceitar. Permite a passagem do pacote normalmente. • DROP --> Abandonar. Não permite a passagem do pacote, ele será descartado. Não avisa a origem sobre o ocorrido. • REJECT --> Igual ao DROP, mas avisa a origem sobre o ocorrido (envia pacote icmp unreachable). • LOG --> Cria um log referente à regra, em /var/log/messages. Usar antes de outras ações¹. ¹ : LOG é uma extensão não terminal, ou seja, mesmo que seja validado em uma regra ele continuará a ser avaliado pelas regras subsequentes. Portanto se quiser descartar o pacote terá que criar uma mesma regra mas com a target DROP ou REJECT, ou colocar a política default como DROP. 34
  • 35. Manipulando Chains – Jump Target • Caso seja necessário criar uma regra onde seja efetuado o LOG de um determinado pacote e logo após a exclusão dele, deve-se configurar da seguinte maneira: ▫ #iptables -A INPUT -s 200.200.200.1 -i eth0 -j LOG • Para registrar o bloqueio de pacotes vindos de 200.200.200.1 pela interface eth0. ▫ #iptables -A INPUT -s 200.200.200.1 -i eth0 -j REJECT • Para efetuar o bloqueio. Note que no exemplo anterior a regra que registra o pacote (-j LOG) deve aparecer antes da regra que REJEITA (-j REJECT), caso contrário a regra nunca funcionará. 35
  • 36. Manipulando Chains • Manipulação de pacotes para iniciar conexão (pacotes syn). 36
  • 37. Manipulando Chains – Pacotes SYN • Pacotes syn são usados para iniciarem uma conexão. • O uso da opção --syn serve para especificar estes tipos de pacotes. Desta maneira é possível bloquear somente os pacotes que iniciam uma conexão, sem afetar os pacotes restantes. • Para que uma conexão ocorra é necessário que a máquina obtenha a resposta a pacotes syn enviados, caso ele seja bloqueado a resposta nunca será retornada e a conexão não será estabelecida. ▫ #iptables -A INPUT -p tcp --syn --dport 23 -i eth1 -j DROP • A regra acima bloqueia (-j DROP) qualquer tentativa de conexão (--syn) vindas da interface eth1 ao telnet (--dport 23) da máquina local. A opção --syn somente pode ser especificada para o protocolo TCP. 37
  • 38. Lógica de Regras • Funcionamento das regras. 38
  • 39. Lógica das Regras (1/5) • Observe os próximos exemplos: • Exemplo A: ▫ #iptables -A INPUT -p ICMP -s 10.0.0.10 -j ACCEPT ▫ #iptables -A INPUT -p ICMP -j DROP • Podemos concluir o seguinte: • Exemplo A: todos os pings da máquina 10.0.0.10 serão aceitos, os outros pings serão deletados. 39
  • 40. Lógica das Regras (2/5) • Exemplo B: ▫ #iptables -A INPUT -p ICMP -j DROP ▫ #iptables -A INPUT -p ICMP -s 10.0.0.10 -j ACCEPT • Podemos concluir o seguinte: • Exemplo B: todos os pings serão deletados, até mesmo os da máquina 10.0.0.10. • Ou seja: a ordem da regras importam! • Obs.: no caso do LOG, a regra mesmo que executada, passará para a próxima condição. 40
  • 41. Lógica das Regras (3/5) • Impasses e ordem de processamento • Se houver impasse entre regras, sempre valerá a primeira. Assim, entre as regras: ▫ #iptables -A FORWARD -p icmp -j DROP ▫ #iptables -A FORWARD -p icmp -j ACCEPT • Valerá: ▫ #iptables -A FORWARD -p icmp -j DROP 41
  • 42. Lógica das Regras (4/5) • Impasses e ordem de processamento • Já entre as regras: ▫ #iptables -A FORWARD -p icmp -j ACCEPT ▫ #iptables -A FORWARD -p icmp -j DROP • Valerá: ▫ #iptables -A FORWARD -p icmp -j ACCEPT 42
  • 43. Lógica das Regras (5/5) • Essas situações ocorrem porque as regras são processadas na ordem em que aparecem. • Depois do processamento da regra, pode haver continuidade de processamento ou não. • Isso irá depender da ação: ▫ ACCEPT --> Para de processar regras para o pacote atual; ▫ DROP --> Para de processar regras para o pacote atual; ▫ REJECT --> Para de processar regras para o pacote atual; ▫ LOG --> Continua a processar regras para o pacote atual; 43
  • 44. Regras Comentadas • Exemplo de funcionamento das regras. 44
  • 45. Regras comentadas (1/6) • Regras: ▫ #iptables -L • Lista todas as regras existentes. ▫ #iptables -F • Apaga todas as regras sem alterar a política. ▫ #iptables -P FORWARD DROP • Estabelece uma política de proibição padrão para a passagem de pacotes entre sub-redes. 45
  • 46. Regras comentadas (2/6) ▫ #iptables -A FORWARD -j DROP • Todos os pacotes oriundos de qualquer sub-rede e destinados a qualquer sub-rede deverão ser descartados. ▫ #iptables -A FORWARD -j ACCEPT • Todos os pacotes oriundos de qualquer sub-rede e destinados a qualquer sub-rede deverão ser aceitos. ▫ #iptables -A FORWARD -s 10.0.0.0/8 -d www.chat.com.br -j DROP • Os pacotes oriundos da sub-rede 10.0.0.0 (máscara 255.0.0.0) e destinados aos hosts cujos endereços IP respondem pelo nome www.chat.com.br deverão ser descartados. Note que se a máquina possuir domínios virtuais, todos esses serão bloqueados. 46
  • 47. Regras comentadas (3/6) ▫ #iptables -A FORWARD -s 10.0.0.0/8 -d www.chat.com.br -j REJECT • Os pacotes oriundos da sub-rede 10.0.0.0 (máscara 255.0.0.0) e destinados aos hosts cujos endereços IP respondem pelo nome www.chat.com.br deverão ser descartados. Deverá ser enviado um ICMP avisando à origem. ▫ #iptables -A FORWARD -d www.chat.com.br -j DROP • Os pacotes oriundos de qualquer lugar e destinados aos hosts cujos endereços IP respondem pelo nome www.chat.com.br deverão ser descartados. 47
  • 48. Regras comentadas (4/6) ▫ #iptables -A FORWARD -d 10.0.0.0/8 -s www.chat.com.br -j DROP • Os pacotes destinados à sub-rede 10.0.0.0 (máscara 255.0.0.0) e oriundos aos hosts cujos endereços IP respondem pelo nome www.chat.com.br deverão ser descartados. ▫ #iptables -A FORWARD -s www.chat.com.br -j DROP • Os pacotes oriundos aos hosts cujos endereços IP respondem pelo nome www.chat.com.br e destinados a qualquer lugar deverão ser descartados. ▫ #iptables -A FORWARD -s 200.221.20.0/24 -j DROP • Os pacotes oriundos da sub-rede 200.221.20.0 (máscara 255.255.255.0) e destinados a qualquer lugar deverão ser descartados. 48
  • 49. Regras comentadas (5/6) ▫ #iptables -A FORWARD -s 10.0.0.5 -p icmp -j DROP • Os pacotes icmp oriundos do host 10.0.0.5 e destinados a qualquer lugar deverão ser descartados. ▫ #iptables -A FORWARD -i eth0 -j ACCEPT • Os pacotes que entrarem pela interface eth0 serão aceitos. ▫ #iptables -A FORWARD -i ! eth0 -j ACCEPT • Os pacotes que entrarem por qualquer interface, exceto a eth0, serão aceitos. 49
  • 50. Regras comentadas (6/6) ▫ #iptables -A FORWARD -s 10.0.0.5 -p tcp --sport 80 -j LOG • O tráfego de pacotes TCP oriundos da porta 80 do host 10.0.0.5 e destinados a qualquer lugar deverá ser gravado em log. No caso, /var/log/messages. ▫ #iptables -A FORWARD -p tcp --dport 25 -j ACCEPT • Os pacotes TCP destinados à porta 25 de qualquer host deverão ser aceitos. 50
  • 52. Exercícios • Responda os exercícios assumindo que sua máquina irá assumir a posição do host informado no exercício. 52
  • 53. Exercícios • Responda os exercícios de acordo com a seguinte topologia: 53
  • 54. Exercícios • 1 - Algumas regras para o roteador “R”: a) Não permita que a rede 192.168/16 envie pings para o servidor “S”. b) Não permita que a máquina “B” envie pacotes UDP para a máquina “Y”. 54
  • 55. Exercícios • 2 - Algumas regras para o servidor “S”: a) Só será permitido à máquina “X” fazer telnet (baseado em TCP e opera na porta 23) no servidor. b) A máquina “B” está proibida de acessar TFTP no servidor. c) A rede 172.29/16 está proibida de enviar e-mails pelo servidor. E se alguém tentar, registrar em log. 55
  • 56. Exercícios • 3 - Algumas regras para a máquina “A”: a) Só será permitido resolver DNS pelo servidor “S”. b) A única página web que se permite acessar é a que está no servidor “S”. Bloquear e registrar em log outras tentativas. 56
  • 58. Exercício 1 • 1 - Algumas regras para o roteador “R”: a) Não permita que a rede 192.168/16 envie pings para o servidor “S”.  (policy = ACCEPT)  #iptables -A FORWARD -p ICMP -s 192.168.0.0/16 -d 200.143.81.25 -j REJECT b) Não permita que a máquina “B” envie pacotes UDP para a máquina “Y”.  #iptables -A FORWARD -p UDP -s 172.29.0.3 -d 192.168.0.5 -j DROP 58
  • 59. Exercício 2 • 2 - Algumas regras para o servidor “S”: a) Só será permitido à máquina “X” fazer telnet (baseado em TCP e opera na porta 23) no servidor.  (policy = ACCEPT)  #iptables -A INPUT -s 192.168.0.4 -p TCP --dport 23 -j ACCEPT  #iptables -A INPUT -p TCP --dport 23 -j DROP b) A máquina “B” está proibida de acessar TFTP no servidor.  #iptables -A INPUT -s 172.29.0.3 -p UDP --dport 69 -j DROP c) A rede 172.29/16 está proibida de enviar e-mails pelo servidor. E se alguém tentar, registrar em log.  #iptables -A INPUT -s 172.29.0.0/16 -p TCP --dport 25 -j LOG  #iptables -A INPUT -s 172.29.0.0/16 -p TCP --dport 25 -j DROP  #iptables -A INPUT -s 172.29.0.0/16 -p TCP --dport 587 -j LOG  #iptables -A INPUT -s 172.29.0.0/16 -p TCP --dport 587 -j DROP 59
  • 60. Exercício 3 • 3 - Algumas regras para a máquina “A”: a) Só será permitido resolver DNS pelo servidor “S”.  (policy = ACCEPT)  #iptables -A OUTPUT -d 200.143.81.25 -p UDP --dport 53 -j ACCEPT  #iptables -A OUTPUT -p UDP --dport 53 -j DROP b) A única página web que se permite acessar é a que está no servidor “S”. Bloquear e registrar em log outras tentativas.  #iptables -A OUTPUT -d 200.143.81.25 -p TCP --dport 80 -j ACCEPT  #iptables -A OUTPUT -p TCP --dport 80 -j LOG  #iptables -A OUTPUT -p TCP --dport 80 -j DROP 60
  • 62. Firewall Iptables - Filter Prof. Andrei Carniel Universidade Tecnológica Federal do Paraná – UTFPR E-mail: andreicarniel@utfpr.edu.br / andrei.carniel@gmail.com