Академический Документы
Профессиональный Документы
Культура Документы
UA
ESTGA
Firewall em Linux
Firewall em Linux 1
Antnio Amaral
UA
Objectivos
Definio de polticas de segurana Configurao de mecanismos de segurana (Firewalls, IPtables e IPChains)
ESTGA
Firewall em Linux 2
Antnio Amaral
UA
Firewalls
Introduo
O Linux possui um mecanismo de firewall que permite controlar com grande exactido quem tem acesso a cada porto IP dos nossos sistemas
Existem trs implementaes de firewall:
O ipfwadm foi a primeira implementao para kernel de Linux (v 2.0) O ipchains passou a ser includo na verso 2.2 do kernel O iptables passou a ser includo a partir da verso 2.4 do kernel e bastante mais poderoso do que os seus antecessores
Firewall em Linux 3 Antnio Amaral
ESTGA
UA
Firewalls
IPTables
O iptables um firewall que funciona ao nvel de pacotes IP (baseado no endereo/porta de origem/destino do pacote, prioridade, etc), atravs da comparao de regras para determinar se um pacote tem ou no permisso para ser encaminhado.
ESTGA
Em firewalls mais restritivos, o pacote bloqueado e registado para que o administrador do sistema tenha conhecimento sobre o que est a acontecer no sistema que gere.
Firewall em Linux 4
Antnio Amaral
UA
Firewalls
IPTables
Caractersticas
Especificao de portas/endereo de origem/destino Suporte dos protocolos TCP/UDP/ICMP (incluindo tipos de mensagens icmp) Suporte de interfaces de origem/destino de pacotes Tratamento de trfego dividido em chains (para melhor controlo do trfego que entra/sai da mquina e do trfego redirecionado). Manipula servios de proxy na rede Permite um nmero ilimitado de regras por chain Muito rpido, estvel e seguro Possui mecanismos internos para rejeitar automaticamente pacotes duvidosos ou mal formados. Suporte a mdulos externos para expanso das funcionalidades padres oferecidas pelo cdigo do firewall
Firewall em Linux 5 Antnio Amaral
ESTGA
UA
Firewalls
Caractersticas
IPTables
ESTGA
Suporte completo a encaminhamento de pacotes Suporte a especificao do tipo de servio para priorizar o trfego de determinados tipos de pacotes. Permite especificar excepes para as regras ou para parte das regras Suporte a deteco de fragmentos Permite enviar alertas personalizados ao syslog sobre o trfego aceite ou bloqueado Redirecionamento de portas Masquerading Suporte de SNAT (modificao do endereo de origem das mquinas para um nico IP ou faixa de IP's). Suporte a DNAT (modificao do endereo de destino das mquinas para um nico IP ou faixa de IP's) Contagem de pacotes que atravessaram uma interface/regra Limitao do encaminhamento de determinados pacotes de regra (muito til para criar protees contra ataques syn flood, ping flood, DoS, etc)
Firewall em Linux 6 Antnio Amaral
UA
Firewalls
IPTables
Requisitos
necessrio que o kernel seja compilado com suporte de iptables Como as configuraes residem no kernel no necessrio espao extra no disco rgido para a execuo desta ferramenta
ESTGA
Arquivos de logs
Todo trfego que for registado pelo iptables encontra-se no ficheiro /var/log/messages
Firewall em Linux 7
Antnio Amaral
UA
Firewalls
IPTables
Tipos de firewall
Ao nvel de pacotes toma as decises baseadas nos parmetros do pacote, como por exemplo porta/endereo de origem/destino, estado da ligao,O firewall pode bloquear o pacote (DROP) ou deix-lo passar (ACCEPT).
ESTGA
O que proteger?
Quais os servios que devem ter acesso garantido a utilizadores externos e quais os que sero bloqueados a todas/determinadas mquinas. recomendvel bloquear o acesso a todas portas inferiores ao nmero 1024, porque so usadas por servios executados com privilgio de root, e autorizar apenas o acesso as portas que realmente sejam necessrias Que mquinas tero acesso livre e quais tero acesso restrito Que servios devero ter prioridade no processamento O volume de trfego que o servidor manipular
Firewall em Linux 8
Antnio Amaral
UA
Firewalls
IPTables
Regras
As regras so comandos passados ao iptables para que realize uma determinada ao (como bloquear ou deixar passar um pacote) So armazenadas dentro de cadeias (chains) e processadas pela ordem com que so inseridas So armazenadas no kernel, o que significa que quando o computador reiniciado as regras so apagadas; soluo: criar um script com o conjunto de regras definidas para ser executado no arranque do sistema
ESTGA
Cadeias (chains) Armazenam as regras definidas no firewall. Existem trs tipos de cadeias: cadeias do sistema: INPUT (para os pacotes que entram no sistema), OUTPUT (para os pacotes que saem do sistema) e FORWARD (para os pacotes encaminhados entre uma interface de rede e outra interface de rede). cadeias configuradas pelos utilizadores, que permitem tornar o firewall mais flexvel e melhorar o desempenho especialmente em firewalls complexos (com muitas regras j que podem ser subdivididas em grupos
Firewall em Linux 9 Antnio Amaral
UA
Firewalls
IPTables
Tabelas
So os locais usados para armazenar as cadeias. Existem 3 tabelas disponveis no iptables filter tabela padro (INPUT, OUTPUT, FORWARD) nat usada para estabelecer outra ligao usando as funcionalidades de masquerading, source nat, destination nat, ... (PREROUTING Consultada quando os pacotes precisam ser modificados logo que chegam (DNAT e redirecionamento de portas), POSTROUTING Consultada quando os pacotes precisam ser modificados aps ser verificado o encaminhamento (SNAT e IP Masquerading) e OUTPUT (Consultada quando os pacotes gerados localmente precisam ser modificados antes de serem encaminhados)) mangle Utilizada para alteraes especiais de pacotes (modificar o tipo de servio (TOS))
Firewall em Linux 10 Antnio Amaral
ESTGA
UA
Firewalls
IPTables
Operaes de definio de regras
Opo
-A -I -R -D -L -F
ESTGA
Significado
Adicionar uma nova regra a uma cadeia de regras Inserir uma nova regra, numa posio definida Substituir uma regra existente Apagar uma regra Listar regras existentes Limpar uma cadeia de regras
Opo
--dport --sport -i -o -t
Significado
Especfica o porto destino Especfica o porto origem Especfica a interface de entrada Especfica a interface de sada Especifica a tabela
-Z
-X -N -P -j -p -d -s
Firewall em Linux 11
Antnio Amaral
UA
Firewalls
IPTables
Aces definidas por cada regra
Aco
ACCEPT REJECT DROP LOG MARK SNAT DNAT MASQUERADE REDIRECT MIRROR RETURN O pacote aceite O pacote rejeitado e a origem notificada disso O pacote rejeitado e a origem no notificada Regista cada ocorrncia de pacotes que obedeam a esse filtro nos logs do sistema Marca os pacotes para processamento posterior
ESTGA
Significado
Source Network Address Translation Altera o endereo de origem dos pacotes Destination Network Address Translation Altera o endereo destino dos pacotes
Executa IP Masquerading Aplica snat nos pacotes enviados para o exterior e dnat nas respostas Redirecciona os pacotes para um porto IP da prpria mquina Troca os pacotes de origem e destino Sai da cadeia de processamento actual, retornando cadeia anterior, que havia invocado a actual
Firewall em Linux 12
Antnio Amaral
UA
Firewalls
IPTables
Exemplo1 de manipulao de regras
Testar a conectividade com o endereo loopback
ESTGA
Firewall em Linux 13
Antnio Amaral
UA
Firewalls
IPTables
Exemplo2 de manipulao de regras
Listar as regras existentes
ESTGA
Firewall em Linux 14
Antnio Amaral
UA
Firewalls
IPTables
ESTGA
Usamos a mesma sintaxe para criar a regra na cadeia, mas trocamos a opo -A pela opo -D
Firewall em Linux 15
Antnio Amaral
UA
Firewalls
IPTables
Exemplo5 de manipulao de regras
Para inserir uma regra existem duas alternativas
apagar a regra e inserir uma nova modificar diretamente a regra j criada sem afetar outras regras existentes, mantendo a sua ordem na cadeia
ESTGA
O ficheiro /proc/net/ip_tables_names contm os nomes de todos os canais criados. Na diretoria /proc/net tambm existem outros ficheiros teis
Antnio Amaral
Firewall em Linux 16
UA
Firewalls
IPTables
Exemplo7 de manipulao de regras
Apagar as regras de uma cadeia
Se no for especificada a cadeia so apagas as regras de todas as cadeias
ESTGA
Caso no seja especificada a cadeia so apagadas todas as cadeias definidas pelo utilizador
Firewall em Linux 17
UA
Firewalls
IPTables
Exemplo10 de manipulao de regras
Especificao do policiamento padro de uma cadeia
ESTGA
Firewall em Linux 18
Antnio Amaral
UA
Firewalls
IPTables
Exemplo12 de manipulao de regras
Operar sobre interfaces de entrada e sada
Nem todos as cadeias aceitam as interfaces de origem/destino simultaneamente; a interface de entrada (-i) nunca poder ser especificada numa cadeia OUTPUT e a interface de sada (-o) nunca poder ser especificada numa cadeia INPUT
ESTGA
Firewall em Linux 19
Antnio Amaral
UA
Firewalls
IPTables
Exemplo14 de manipulao de regras
Especificar uma excepo
ESTGA
Firewall em Linux 20
Antnio Amaral
UA
Firewalls
IPTables
Proteco contra ataques tpicos
Ping flood
ESTGA
Syn flood
IP spoofing
Firewall em Linux 21
Antnio Amaral