Iptables. Adailton Saraiva Sérgio Nery Simões



Documentos relacionados
Segurança em Sistemas de Informação

Firewalls, um pouco sobre...

Firewall. Tutorial Firewall em Linux Acadêmicos: Felipe Zottis e Cleber Pivetta

Prof. Samuel Henrique Bucke Brito

Tipos de Firewalls. porta de origem/destino, endereço de origem/destino, estado da conexão, e outros parâmetros do pacote.

IPTABLES. Helder Nunes

Instalação e Configuração Iptables ( Firewall)

Obs: Endereços de Rede. Firewall em Linux Kernel 2.4 em diante. Obs: Padrões em Intranet. Instalando Interface de Rede.

Elaboração de Script de Firewall de Fácil administração

Curso de extensão em Administração de sistemas GNU/Linux: redes e serviços

Firewalls em Linux. Tutorial Básico. André Luiz Rodrigues Ferreira

comando parâmetro alternativo parâmetro REGRA função iptables -t tabela -N --new chain cria uma nova chain. iptables -t tabela -E --rename-chain

Firewall Iptables. Professor: João Paulo de Brito Gonçalves. Campus - Cachoeiro Curso Técnico de Informática

Orientador de Curso: Rodrigo Caetano Filgueira

Uso do iptables como ferramenta de firewall.

ADMINISTRAÇÃO DE REDES I LINUX. Firewall. Frederico Madeira LPIC 1, CCNA fred@madeira.eng.br


Aula 08. Firewall. Prof. Roitier Campos Gonçalves

Segurança de Redes. Firewall. Filipe Raulino

Tema do Minicurso: Firewall IPTABLES. Carga horária 3h

Projeto de Ensino. iptables. Grupo de Estudos em Tecnologia de Redes e Processamento Paralelo. Prof. Luiz Antonio Unioeste

Netfilter e Iptables

Segurança com Iptables

01 - Entendendo um Firewall. Prof. Armando Martins de Souza armandomartins.souza@gmail.com

Professor Claudio Silva

Oficina de ferramentas de Gerência para Redes em Linux

Segurança de Redes de Computadores

Linux Network Servers

Segurança de redes com Linux. Everson Scherrer Borges Willen Borges de Deus

Curso Firewall. Sobre o Curso de Firewall. Conteúdo do Curso

PROJETO DE IMPLEMENTAÇÃO DE UM SERVIDOR FIREWALL LIVRE UTILIZANDO IPTABLES

Autor: Armando Martins de Souza <armandomartins.souza at gmail.com> Data: 12/04/2010

Gestão de Sistemas e Redes

Firewall - IPTABLES. Conceitos e Prática. Tópicos em Sistemas de Computação Prof. Dr. Adriano Mauro Cansian adriano@acmesecurity.

Administração de Redes Firewall IPTables

Capítulo 4 TCP/IP FIREWALLS.

Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW. Free Powerpoint Templates Page 1

Compartilhamento da internet, firewall

FIREWALL COM IPTABLES. by João Eriberto Mota Filho 3. TABELAS. Tabela Filter ESQUEMA DA TABELA FILTER

III WTR do POP-BA III Workshop de Tecnologias de Redes Ponto de Presença da RNP na Bahia Instrutor: Ibirisol Fontes Monitor: Jundaí Abdon.

Arquitectura de Redes

FireWall no Linux FIREWALL COM IPTABLES. by João Eriberto Mota Filho

Firewalls - IPTables. Carlos Gustavo A. da Rocha. ASSR

Configurando Interface de Rede. IPTABLES Firewall em Linux Kernel 2.4 em diante. Regras do Iptables. Iptables. Regras do Iptables. Comandos Principais

Projeto e Instalação de Servidores Servidores Linux Aula 6 Firewall e Proxy

Administração de Sistemas Operacionais

Pós Graduação Tecnologia da Informação UNESP Firewall

Introdução a Firewalls no Linux (Netfilter/Iptables)

Entendendo como funciona o NAT

Guia Foca GNU/Linux - Firewall iptables

EN-3611 Segurança de Redes Aula 07 Firewalls Prof. João Henrique Kleinschmidt

Firewalls. A defesa básica e essencial. SO Linux Prof. Michel Moron Munhoz AES 1

Firewall e Proxy. Relatório do Trabalho Prático nº 2. Segurança em Sistemas de Comunicação

O que é uma firewall? É um router entre uma rede privada e uma rede pública que filtra o tráfego com base num conjunto de regras.

BRUNO PEREIRA PONTES

Firewall iptables. Capítulo Introdução

Firewall iptables e criação de regras.

LABORATÓRIO V. NAT E FIREWALL Documento versão 0.1. Aluno: Paulo Henrique Moreira Gurgel #

Trabalho 3 Firewalls

Endereçamento Privado Proxy e NAT. 2008, Edgard Jamhour

Prática NAT/Proxy. Edgard Jamhour. Esses exercícios devem ser executados através do servidor de máquinas virtuais: espec.ppgia.pucpr.

Software de Telecomunicações. Firewalls

MÓDULO 8 Modelo de Referência TCP/IP

TuxFrw 3.0 MSPF Modular Stateful Packet Filter

GTS-8. Implementação de uma solução baseada em Software Livre para o controle de tráfego P2P. Helder Jean Brito da Silva (helder@info.ufrn.

Uso de Bridges Linux no Controle de Tráfego entre Sub Redes em Uma Mesma Rede Lógica

Protocolos de Redes Revisão para AV I

Segurança da Informação

Redes de Computadores Modelo de referência TCP/IP. Prof. MSc. Hugo Souza

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET

PROJETO INTERDISCIPLINAR I

Segurança em Sistemas de Informação Tecnologias associadas a Firewall

Redes de Computadores. Laboratório de Interconexão de Redes e Serviços - 4º Período

Firewalls. Firewalls

Criptografia e Segurança das Comunicações. Firewalls

I Workshop do POP MG. Firewall IPTABLES. Fernando Resende Coelho mg.rnp.br

Redes de Computadores

Segurança Informática e nas Organizações. Guiões das Aulas Práticas

Configuração do Servidor Gateway Firewall e DHCP

Controlando o tráfego de saída no firewall Netdeep

Firewalls. Prática de Laboratório. Maxwell Anderson INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DA PARAÍBA

Capítulo 9 - Conjunto de Protocolos TCP/IP e Endereçamento. Associação dos Instrutores NetAcademy - Julho de Página

O Protocolo IP (2) Prof. José Gonçalves Pereira Filho Departamento de Informática

Laboratório. Assunto: endereçamento IP e roteamento.

Proxyarp O Shorewall não exige qualquer configuração

Máscaras de sub-rede. Fórmula

IPTABLES. Universidade Federal de Minas Gerais Departamento de Ciência da Computação Laboratório de Software Livre. 4 de fevereiro de 2010

Foi inicialmente desenvolvido como parte de um

Arquitetura de Rede de Computadores

Firewall IPTables e Exemplo de Implementação no Ambiente Corporativo.

Redes de Computadores. Prof. André Y. Kusumoto

Execícios de Revisão Redes de Computadores Edgard Jamhour. Filtros de Pacotes Criptografia SSL

NAT com firewall - simples, rápido e funcional

Protocolos Hierárquicos

Guia de Conectividade Worldspan Go Res! A V A N Ç A D O

Firewall. Professor: João Paulo de Brito Gonçalves Disciplina: Serviços de Redes. Campus Cachoeiro Curso Técnico em Informática

Administração de Redes 2014/15. Network Address Translation (NAT)

Transcrição:

Iptables Adailton Saraiva Sérgio Nery Simões

Sumário Histórico Definições Tabelas Chains Opções do Iptables Tabela NAT Outros Módulos

Histórico

Histórico Ipfwadm Ferramenta padrão para o Kernel anterior à versão 2.2.0. Ipchains Atualização feita para o kernel 2.2 do ipfwadm. A idéia do ipchains foi ter o poder do ipfwadm, mas com uma simplicidade e facilidade no que diz respeito à criação de regras.

Histórico Iptables - A nova geração de ferramentas de firewall para o Kernel 2.4 do Linux. Além de possuir as facilidade do ipchains, e implementar a facilidade do NAT e filtragem de pacotes mais flexíveis que o IPchains.

Conceitos

Endereço IP O IP (Internet Protocol) é um protocolo da camada de rede (arquitetura TCP/IP) que tem a função de atribuir um número para cada conexão de rede. Esse número é chamado de endereço IP. Esse número é composto por 4 conjuntos de 8 bits separados por pontos. Ex.: 1100000.10101000.00000000.00000001 (binário) 192.168.0.1 (decimal)

Porta É um número que identifica um processo na camada de transporte permitindo a comunicação, interligação, e troca de dados entre dois ou mais processos distintos. Principais portas: 20 e 21 (FTP), 23 (TELNET), 25 (SMTP), 53 (DNS), 80 (HTTP), 110 (POP3).

Protocolo Protocolo é um padrão que especifica o formato de dados e as regras a serem seguidas no processo de comunicação.

Posição de um firewall na rede

Definições

Definições Tabelas Locais usados para armazenar os chains e conjunto de regras com uma determinada característica em comum Chain Locais onde as regras do firewall definidas pelo usuário são armazenadas para operação do firewall Regras Comandos que são passados ao firewall para que seja tomada alguma ação

Tabelas

Tabelas Filter Usada para aceitar ou rejeitar um pacote Nat Usada para tradução de endereço IP Mangle Usada para manipular alguns campos do cabeçalho IP, como por exemplo o campo TOS e o campo TTL

Chains

Chains Cada tabela tem suas próprias chains. Filter INPUT, OUTPUT, FORWARD Nat PREROUTING, POSTROUTING, OUTPUT Mangle INPUT, OUTPUT, FORWARD, PREROUTING, POSTOURTING

Chains INPUT Utilizada quando o destino final é a própria máquina filtro OUTPUT (filter) Trata pacotes gerados na máquina filtro e que estão saindo para a rede

Chains FORWARD Utilizada para tratar pacotes que atravessam o filtro, oriundo de uma máquina em uma rede e direcionado a uma máquina de outra rede POSTROUTING Consultado quando os pacotes precisam ser modificados após roteamento. É ideal pra realização de SNAT (Source NAT) e IP Masquerading.

Chains PREROUTING Consultado quando os pacotes precisam ser modificados logo que chegam. É o chain ideal para a realização de DNAT (Destination NAT) e redicrecionamento de portas. OUTPUT (nat) Utilizada para analisar pacotes que são gerados na própria máquina e que irão sofrer NAT. O OUTPUT pode fazer ações de NAT com o endereço de destino do pacote. Também é DNAT

Gráfico geral da passagem de pacotes E PREROUTING MANGL, NAT (DNAT) ROTEAMENTO FORWARD MANGLE, FILTER POSTROUTING MANGLE, NAT (SNAT) S INPUT MANGLE, FILTER OUTPUT MANGLE, FILTER PROCESSAMENTO LOCAL

Manipulando chains

Listando regras iptables [-t tabela] -L [chain] [opções] Onde: tabela Uma das tabelas do iptables. Se não for especificada, a tabela filter será usada como padrão chain Uma das chains disponíveis na tabela acima ou criada pelo usuário. Caso a chain não seja especificado, todas serão exibidas.

Listando regras (cont.) Opções -v - Exibe mais detalhes sobre as regras criadas nas chains. -n - Exibe endereços de máquinas/portas como numeros ao invés de tentar a resolução DNS. --line-numbers - Exibe o número da posição da regra na primeira coluna na listagem. Ex.: iptables t filter L INPUT linenumbers

Listando regras (cont.) Chain - nome da chain Policy - política padrão da chain pkts - quantidade de pacotes que atravessaram a regra bytes - quantidade de bytes que atravessaram a regra target - alvo da regra, destino do pacote prot - protocolo especificado pela regra opt - opções extras passadas a regra in - interface de entrada out - interface de saída source - endereço de origem destination - endereço de destino

Adicionando uma regra Adiciona uma regra no final da chain iptables -t [tabela] -A chain regra -j alvo Ex.: iptables t filter A INPUT d 127.0.0.1 p icmp j DROP

Inserindo regras Necessidade que uma regra seja conferida antes de uma outra Ex.: iptables t filter I INPUT 1 s 10.0.0.10 j ACCEPT

Apagando regras Para apagar uma regra, temos duas opções: Especifidando o número da regra iptables t filter -D INPUT 1 Usando a mesma sintaxe para criar a regra, mas trocando -A por -D iptables t filter -D INPUT -s 10.0.0.10 -j DROP

Criando uma chain Facilita a organização em firewalls com grande número de regras. Para criar uma chain internet iptables t filter N internet Todo tráfego vindo da internet é tratado na chain internet iptables t filter A INPUT i ppp0 j internet iptables t filter A internet p tcp dport 23 j DROP

Apagando uma chain criada pelo usuário iptables [-t tabela] [-X chain] Onde: tabela - nome da tabela que contém a chain que desejamos excluir chain - nome da chain que desejamos apagar. Caso não seja especificada, todas as chains criadas pelo usuário serão apagadas. Ex.: iptables t filter X internet

Limpando as regras iptables [-t tabela] [-F chain] Onde: tabela - tabela que contém o chain que desejamos apagar chain - chain que desejamos limpar. Caso não seja especificada, todas as chains da tabela serão limpas. Ex.: iptables t filter F INPUT

Definindo policiamento padrão Comportamento padrão da chain caso o pacote não confira com nenhuma regra. iptables [-t tabela] [-P chain] [ACCEPT/DROP] Onde: tabela - tabela que contém a chain que desejamos modificar o policiamento padrão chain - chain que terá o policiamento modificado. A chain deve ser especificada

Definindo policiamento padrão (cont.) ACCEPT/DROP - ACCEPT: aceita os pacotes caso nenhuma regra confira. DROP: rejeita os pacotes caso nenhuma regra confira. Ex.: iptables t filter P INPUT DROP

Opções do Iptables

Endereços Endereço de origem: -s Endereço de destino: -d Os endereços podem ser um IP, um nome ou um IP/Mascara Ex.: iptables t filter A FORWARD s 10.0.0.0/8 d 172.16.0.6 j DROP iptables t filter A OUTPUT d www.orkut.com j DROP

Interfaces Interface de entrada: -i Interface de saída: -o A interfaces não podem ser especificadas em qualquer chain. Ex.: iptables t filter A INPUT i eth0 j ACCEPT iptables t filter A OUTPUT o eth0 j DROP

Protocolos Especificando protocolo: -p <proto> Especificando porta de origem: --sport Especificando porta de destino: --dport Para especificar a porta, deve-se especificar o protocolo. Ex.: iptables t filter A INPUT i eth0 s 192.168.0.0/24 p tcp sport 23 j DROP

Alvo da regra Destino que o pacote terá quando conferir com a regra. Os principais alvos são: ACCEPT - O pacote é aceito e encaminhado e o processamento das regras é concluído. DROP - O pacote é rejeitado e o processamento das regras é concluído. REJECT - O mesmo que DROP, porém uma mensagem icmp é enviada para máquina de origem. LOG - Envia uma mensagem ao syslog caso a regra confira e o processamento das regras continua.

Tabela NAT

Tabela NAT Controla a tradução de endereços IPs

Tabela NAT Obs.: Para que o iptables faça nat, é necessário ativar o roteamento de pacotes com o seguinte comando: echo 1 > /proc/sys/net/ipv4/ip_forward

SNAT Modificação do endereço de origem iptables t nat A POSTROUTING s 192.168.0.0/24 o eth1 j SNAT to 200.39.124.1 Modificação do endereço de origem para uma faixa de endereços iptables t nat A POSTROUTING s 192.168.0.0/24 o eth1 j SNAT to 200.39.124.1 200.39.124.10

IP Masquerading Tipo de SNAT usado para Ips dinâmicos. Utiliza o endereço da interface de saída iptables t nat A POSTROUTING s 10.0.0.0/24 o eth0 j MASQUERADE

DNAT Modifica o endereço e/ou a porta de destino dos pacotes antes de serem enviados É feito na chain PREROUTING ou OUTPUT Ex.: iptables t nat A PREROUTING d 200.39.124.1 p tcp dport 22 j DNAT to 192.168.0.2:2222

REDIRECT Redireciona conexões de uma porta para outra na mesma máquina É feito na chain PREROUTING Ex.: iptables t nat A PREROUTING i eth1 p tcp dport 80 j REDIRECT to port 3128

Outros Módulos

Outros Módulos Os módulos do iptables são especificados com a opção m módulo ou match modulo e permitem expandir a funcionalidade do firewall através de novas conferências e recursos de filtragem adicionais, como limitar a conferência de regras do firewall.

States (estados) Permite especificar regras de acordo com o estado de conexão do pacote. Opção --state: NEW confere com pacotes que criam novas conexões ESTABLISHED confere com conexões já estabelecidas RELATED confere com pacotes relacionados indiretamente a uma conexão, como mensagens de erro icmp.

States (continuação...) INVALID confere com pacotes que não puderam ser identificados por algum motivo. Como resposta de conexões desconhecidas. Ex.: iptables t filter A INPUT m state state INVALID i ppp0 j DROP

limit Especifica o número de vezes que uma regra conferirá quando todas as outras condições forem satisfeitas --limit num/tempo - Permite espeficicar a taxa de conferência do limit. O parâmetro num escifica um número e tempo pode ser: s - Segundo m - Minuto h - Hora d - Dia

limit A regra abaixo limita a entrada de pings em 10/s (dez por segundo). iptables t filter A INPUT p icmp m limit limit 10/s j ACCEPT

multiport Permite que seja especificado multiplas portas para um alvo. Podem ser especificadas até 15 portas numa regra A comparação é feita usando condições or Ex.: iptables A INPUT p tcp m multiport dport 21,23,25,80,110 j DROP

mac Permite conferir com o endereço Ethernet dos pacotes de origem. Usado nas chains PREROUTING (tabela nat) ou INPUT (tabela filter) Ex.: iptables t filter A INPUT m mac mac source 00:80:AD:B2:60:0B j DROP

string Permite a inspeção de conteúdo da área de dados de um pacote. Chega a ser 3 a 10 vezes mais rápido do que um proxy Não vem compilado por padrão Ex.: iptables t filter A FORWARD m string string X Kazaa j DROP

length Identifica um pacote baseado no tamanho O tamanho é baseado num intervalo Ex.: iptables t filter A INPUT p icmp m length length :84 m limit limit 10/s j ACCEPT

Outros Módulos Outros módulos podem ser encontrados no endereço: http://www.netfilter.org/documentatio n/howto/netfilter-extensions- HOWTO.html Informações sobre o Iptables: http://www.netfilter.org

Bibliografia http://www.eriberto.pro.br/iptables/ Guia Foca GNU/Linux: http://focalinux.cipsga.org.br/guia/ava ncado/ch-fw-iptables.htm