Segurança de Dados e Informações - Aula 5 - Firewall | Iptables

378 visualizações

Publicada em

Escola Técnica Estadual Aderico Alves de Vasconcelos
Curso: Técnico de Redes de Computadores
Disciplina: Segurança de Dados e Informações
Professor: Fagner Lima

Publicada em: Educação
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
378
No SlideShare
0
A partir de incorporações
0
Número de incorporações
16
Ações
Compartilhamentos
0
Downloads
66
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Segurança de Dados e Informações - Aula 5 - Firewall | Iptables

  1. 1. Professor Fagner Lima ete.fagnerlima.pro.br Curso Técnico de Redes de Computadores Segurança de Dados e Informações Aula 5 Firewall | Iptables
  2. 2. Conteúdo • Conceitos e Terminologias • Tipos de Firewall • Limitações do Firewall • Portas Mais Usadas • Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables 15/05/2016 Pág. 2
  3. 3. Conceitos e Terminologias Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Firewall 15/05/2016 Pág. 3 • Solução de segurança • Combinação de hardware e software • Análise do tráfego de rede • Políticas de controle de acesso • Regras ou instruções
  4. 4. Conceitos e Terminologias Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Topologia 15/05/2016 Pág. 4
  5. 5. Conceitos e Terminologias Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 5 • Princípios nas políticas de firewall: • Todo o tráfego é permitido • Exceção do que está bloqueado • Todo o tráfego é bloqueado • Exceção do que está autorizado
  6. 6. Tipos de Firewall • Filtragem de pacotes • Firewall de aplicação (proxy de serviços) • Inspeção de estados Segurança de Dados e Informações: Aula 5 - Firewall | Iptables 15/05/2016 Pág. 6
  7. 7. Tipos de Firewall Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Filtragem de Pacotes 15/05/2016 Pág. 7 • Lista de regras • Estático • Dados analisados apenas com base nas regras • Não importando a ligação com outro pacote • Dinâmico • Correção das limitações do filtro estático
  8. 8. Tipos de Firewall Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Firewall de Aplicação (Proxy de Serviços) 15/05/2016 Pág. 8 • Intermediário entre duas redes • Não permite a comunicação direta • Regras de acesso a endereços externos • Tarefas complementares: • Registro do tráfego em arquivo de log • Armazenamento de conteúdos em cache • Liberação de recursos com autenticação
  9. 9. Tipos de Firewall Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Inspeção de Estados 15/05/2016 Pág. 9 • Evolução dos filtros dinâmicos • Comparação entre o que acontece e o esperado
  10. 10. Tipos de Firewall Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Firewall Pessoal 15/05/2016 Pág. 10 • Firewall doméstico • Não protege um segmento de rede • Apenas o equipamento onde está instalado • Deve ser utilizados por qualquer pessoa
  11. 11. Tipos de Firewall Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Firewall de Hardware 15/05/2016 Pág. 11 • Preparado para grandes volumes de dados • Melhor preparado que um servidor convencional
  12. 12. Limitações do Firewall • Comprometimento do desempenho da rede • Revisão periódica das políticas • Identificação de atividade maliciosa originada e destinada à rede internet • Identificação de atividade maliciosa que acontece por descuido do usuário (ex.: links falsos) Segurança de Dados e Informações: Aula 5 - Firewall | Iptables 15/05/2016 Pág. 12
  13. 13. Portas Mais Usadas • 21/TCP - FTP • 22/TCP,UDP - SSH • 25/TCP,UDP - SMTP • 53/TCP,UDP - DNS • 80/TCP - HTTP • 110/TCP - POP3 • 143/TCP,UDP - IMAP • 443/TCP - HTTPS • 1194/UDP - OpenVPN • 5900/TCP - VNC Segurança de Dados e Informações: Aula 5 - Firewall | Iptables 15/05/2016 Pág. 13
  14. 14. Iptables • Firewall padrão do Linux • Front end para o Netfilter • Funções de firewall, NAT e log Segurança de Dados e Informações: Aula 5 - Firewall | Iptables 15/05/2016 Pág. 14
  15. 15. Iptables • Algumas aplicações: • Construir firewalls com filtragem de pacotes • Usar NAT para compartilhamento de internet • Usar NAT para implementar proxies transparentes • Realizar encaminhamento de portas (DNAT) • ... Segurança de Dados e Informações: Aula 5 - Firewall | Iptables 15/05/2016 Pág. 15
  16. 16. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables 15/05/2016 Pág. 16 • Tabela 1 • Cadeia 1 • Regra 1 • Regra 2 • Regra n • Cadeia 2 • Regra 1 • Regra 2 • Tabela 1 • Cadeia 1 • Regra 1 • Regra 2 • Cadeia 2 • Regra 1 • Regra 2 • Regra n Funcionamento
  17. 17. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 17 • Tabelas (Tables) • Agrupamento de cadeias • Determina o escopo das regras
  18. 18. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 18 • Tabelas (Tables) • filter: tabela padrão para manipular pacotes, usada para configurar políticas para o tráfego que entra, atravessa ou sai do computador. • Cadeias: INPUT, OUTPUT e FORWARD.
  19. 19. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 19 • Tabelas (Tables) • nat: Usada para alterar pacotes que criam uma nova conexão e para redirecionar conexões para NAT. • Cadeias: PREROUTING, INPUT, OUTPUT e POSTROUTING.
  20. 20. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 20 • Tabelas (Tables) • mangle: usada para tipos específicos de alteração de pacotes, como a modificação de opções do cabeçalho IP de um pacote. • Cadeias: PREROUTING, INPUT, FORWARD, OUTPUT e POSTROUTING.
  21. 21. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 21 • Tabelas (Tables) • raw: marca pacotes que não devem ser manipulados pelo sistema de rastreamento de conexões. • Cadeias: PREROUTING e OUTPUT.
  22. 22. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 22 • Tabelas (Tables) • security: usada para regras de MAC (Mandatory Access Control – Controle de Acesso Obrigatório). • Cadeias: INPUT, FORWARD e OUTPUT.
  23. 23. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 23 • Cadeias (Chains) • Conjunto de regras • Pacote é verificado junto às regras • Ação associada é executada • Regras restantes não verificadas • Se não encontrar, regra padrão (policy) aplicada
  24. 24. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 24 • Cadeias (Chains) • INPUT: aplica regras aos pacotes que chegam ao servidor. • OUTPUT: aplica regras aos pacotes originados e que partem do servidor. • FORWARD: aplica regras aos pacotes roteados através do servidor (para outro servidor ou outra interface de rede no mesmo servidor).
  25. 25. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 25 • Cadeias (Chains)
  26. 26. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 26 • Cadeias (Chains) • PREROUTING: altera pacotes de rede quando eles chegam e antes do roteamento. Usado para DNAT (Destination NAT). • POSTROUTING: altera pacotes de rede após o roteamento. Usado para SNAT (Source NAT).
  27. 27. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 27 • Cadeias (Chains)
  28. 28. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 28 • Regras (Rules) • Estrutura geral: • iptables opção cadeia parâmetros ação • Exemplos: • iptables –A INPUT -s 192.168.0.5 -p tcp -j ACCEPT
  29. 29. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 29 • Regras (Rules) • Opções principais: • -P: configura a regra padrão da cadeia. • -A: anexa a regra no final da cadeia. • -F: apaga todas as regras na cadeia. • -L: lista todas as regras da cadeia. • -h: mostra a ajuda.
  30. 30. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 30 • Regras (Rules) • Opções principais: • -I: insere uma regra em uma posição. • -D: apaga uma regra em uma posição. • -N: cria uma nova cadeia. • -X: exclui uma cadeia criada pelo usuário. • -R: substitui uma regra
  31. 31. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 31 • Regras (Rules) • Ações embutidas no iptables: • ACCEPT: permitir pacote. • DROP: descartar pacote. • QUEUE: enviar o pacote ao userspace (código fora do kernel). • RETURN: descontinuar o processamento do pacote e aplicar a regra padrão a ele.
  32. 32. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 32 • Regras (Rules) • Ações adicionais: • REJECT: descarta o pacote e envia feedback ao remetente. • DNAT: reescreve o endereço de destino (DNAT).
  33. 33. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 33 • Regras (Rules) • Ações adicionais: • SNAT: reescreve o endereço de origem (SNAT). • LOG: coloca no log informações sobre o pacote.
  34. 34. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 34 • Regras (Rules) • Parâmetros: • -t tabela: especifica a tabela. • -t nat, -t mangle, -t raw • A tabela filter é padrão, não precisa ser especificada.
  35. 35. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 35 • Regras (Rules) • Parâmetros: • -j AÇÃO: realiza a ação especificada. • -j ACCEPT, -j DROP, -j REQUEST • -p protocolo: especifica o protocolo. • -p icmp, -p tcp, -p udp, -p all
  36. 36. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 36 • Regras (Rules) • Parâmetros: • -s IP: IP de origem do pacote. • -s 192.168.0.1 • -s 192.168.0.0/24 • -s 0/0 • -d IP: IP de destino do pacote.
  37. 37. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 37 • Regras (Rules) • Parâmetros: • -i interface: nome da interface de rede de entrada do pacote. • -i eth0, -i eth1 • -o interface: nome da interface de rede de saída do pacote.
  38. 38. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 38 • Regras (Rules) • Parâmetros: • --sport portas: portas de origem. • -p tcp --sport 80, -p tcp --sport 443 • -p tcp --sport 5000:5050 • --dport portas: portas de destino.
  39. 39. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Funcionamento 15/05/2016 Pág. 39 • Regras (Rules) • Parâmetros: • !: operador de negação. • -i ! eth0 • --syn: identifica nova requisição de conexão. • --icmp-type: tipo de mensagem ICMP. • --icmp-type echo-request
  40. 40. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Rastreamento de Conexões 15/05/2016 Pág. 40 • Associação de pacotes com as conexões lógicas às quais pertencem • Progresso das conexões através do ciclo de vida • Extensão conntrack
  41. 41. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Rastreamento de Conexões 15/05/2016 Pág. 41 Estado Descrição ESTABLISHED A conexão já viu pacotes trafegando em ambas as direções. INVALID O pacote não pertence a nenhuma conexão rastreada.
  42. 42. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Rastreamento de Conexões 15/05/2016 Pág. 42 Estado Descrição NEW O pacote está iniciando uma nova conexão ou é parte de uma conexão que ainda não teve pacotes trafegados em ambas as direções RELATED O pacote está iniciando uma nova conexão, mas a nova conexão é relacionada a uma conexão já existente.
  43. 43. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables 15/05/2016 Pág. 43 • Servidor • Duas interfaces: • NAT • Rede interna • Clientes • Uma interface: • Rede interna Topologia no VirtualBox
  44. 44. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 44 • man iptables • Exibe o manual do iptables
  45. 45. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 45 • iptables -L • Lista as regras atuais de todas as cadeias da tabela filter • iptables -S • Lista as regras atuais de uma forma resumida • iptables -L INPUT • Lista as regras atuais da cadeia INPUT
  46. 46. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 46 • iptables -L -t nat • Lista as regras atuais de todas as cadeias da tabela nat • iptables -L --line-numbers • Lista as regras atuais de todas as cadeias da tabela filter com suas posições
  47. 47. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 47 • modprobe iptable_nat • iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE • echo 1 > /proc/sys/net/ipv4/ip_forward • Compartilhamento de internet
  48. 48. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 48 • iptables -P INPUT DROP • Configura a regra padrão (policy) da cadeia INPUT da tabela filter como DROP
  49. 49. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 49 • iptables -A INPUT -p tcp --dport 22 -j ACCEPT • Libera o acesso SSH por meio da porta 22 • iptables -A INPUT -p tcp --dport 80 -j ACCEPT • Libera o acesso web via HTTP
  50. 50. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 50 • iptables -A INPUT -p tcp --dport 443 -j ACCEPT • Libera o acesso web via HTTPS • iptables -I INPUT 1 -s 192.168.0.11 -j DROP • Bloqueia o tráfego de um IP específico • Insere a regra na cadeia INPUT na posição 1
  51. 51. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 51 • iptables -D INPUT 1 • Remove a regra 1 da cadeia INPUT • iptables -A INPUT -m mac --mac-source 01:23:45:67:89:AB -j DROP • Bloqueia o tráfego de um MAC específico
  52. 52. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 52 • iptables -A INPUT -p icmp --icmp-type echo-request -j REQUEST • Bloqueia o ping (requisição) dos clientes para o servidor e envia uma mensagem • iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT • Libera o ping (resposta) do servidor para os clientes
  53. 53. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 53 • iptables -A INPUT -s 192.168.0.11 -j REJECT --reject-with icmp-net-unreachable • Bloqueia os pacotes vindos do IP especificado e envia uma mensagem personalizada
  54. 54. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 54 • Alguns tipos de mensagens (--reject-with): • icmp-net-unreachable • icmp-host-unreachable • icmp-port-unreachable • icmp-proto-unreachable • ...
  55. 55. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 55 • iptables -A INPUT -p tcp --dport 5100:5150 -j ACCEPT • Libera uma faixa de portas para o protocolo TCP
  56. 56. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras 15/05/2016 Pág. 56 • iptables -A PREROUTING -t nat -i eth1 -p tcp --dport 80 -j DNAT --to 192.168.0.1:80 • iptables -A FORWARD -p tcp -d 192.168.0.1 --dport 80 -j ACCEPT • Redireciona as conexões TCP que chegam à interface LAN com destino à interface WAN para o servidor web local
  57. 57. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras na Inicialização 15/05/2016 Pág. 57 • Crie um arquivo no diretório /etc/init.d • touch /etc/init.d/iptables.sh • Edite o arquivo com o script das regras • nano /etc/init.d/iptables.sh
  58. 58. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras na Inicialização 15/05/2016 Pág. 58
  59. 59. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Regras na Inicialização 15/05/2016 Pág. 59 • Dê permissão para o arquivo ser executado • chmod +x /etc/init.d/iptables.sh • Crie um link para o diretório /etc/rc2.d • ln -s /etc/init.d/iptables.sh /etc/rc2.d/S99iptables
  60. 60. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Script Exemplo 15/05/2016 Pág. 60 #!/bin/bash # /etc/init.d/iptables.sh start() { echo "[ OK ] Firewall iniciando..." # Limpeza e inicialização dos módulos iptables -X iptables -F iptables -X -t nat iptables -F -t nat modprobe iptable_nat # Políticas padrão iptables -P INPUT DROP iptables -P OUTPUT ACCEPT iptables -P FORWARD DROP
  61. 61. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Script Exemplo 15/05/2016 Pág. 61 # Compartilhamento de internet iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE echo 1 > /proc/sys/net/ipv4/ip_forward echo "[ OK ] Compartilhamento de internet ativado..." # Ping iptables -A INPUT -p icmp --icmp-type echo-request -j DROP iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT # SSH iptables -A INPUT -p tcp --dport 22 -j ACCEPT # Servidor Web iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp --dport 443 -j ACCEP
  62. 62. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Script Exemplo 15/05/2016 Pág. 62 echo "[ OK ] Firewall ativado." } stop() { echo "[ OK ] Desativando firewal..." # Limpeza dos módulos iptables -X iptables -F iptables -X -t nat iptables -F -t nat echo "[ OK ] Firewall desativado." }
  63. 63. Iptables Segurança de Dados e Informações: Aula 5 - Firewall | Iptables Script Exemplo 15/05/2016 Pág. 63 case "$1" in "start") start ;; "stop") stop ;; "restart") stop ; start ;; *) echo "Use os parâmetros start, stop ou restart" esac
  64. 64. Referências • O que é firewall? - InfoWester • http://www.infowester.com/firewall.php • Firewall – Filipe Raulino • https://docente.ifrn.edu.br/filiperaulino/disciplinas/gerencia-e- seguranca-de-redes/aulas/Firewall%20-%20Introducao.pdf • Firewall Iptables – Fábio Reis • http://www.planetaunix.com.br/2014/12/firewall-iptables-parte- 01.html • Firewall iptables no Linux – Bóson Treinamentos • https://www.youtube.com/watch?v=LJlJlLgkNxg&list=PLucm8g_ezq NoSuVhriGdoevNcMDECEsgl&index=12 Segurança de Dados e Informações: Aula 5 - Firewall | Iptables 15/05/2016 Pág. 64
  65. 65. Referências • Escrevendo um Script de Firewall – Carlos E. Morimoto • http://www.hardware.com.br/livros/linux-redes/escrevendo-script- firewall.html • Configurando o Iptables e Fazendo Regras Básicas – Thadeu Camargo • www.tccamargo.com/linux/tutoriais/iptables.html • Firewall iptables - Guia Foca GNU/Linux • http://www.guiafoca.org/cgs/guia/avancado/ch-fw-iptables.html Segurança de Dados e Informações: Aula 5 - Firewall | Iptables 15/05/2016 Pág. 65

×