Iptables. Firewall - Iptables

Tamanho: px
Começar a partir da página:

Download "Iptables. Firewall - Iptables"

Transcrição

1 Firewall - Iptables Firewall podem ser dispositivos formados por componentes de hardware como roteadores, modens ADSL e ponto de acesso (Access Point) ou através um computador configurado como roteador e firewall que são capazes de fazer a filtragem de pacotes e controlar o tráfego de pacotes entre uma rede local (LAN) e a rede externa (Internet). Um computador com Linux configurado como roteador e firewall é responsável pelo roteamento de pacotes e filtragem dos pacotes, onde analisa o cabeçalho dos pacotes e faz a decisão o que pode entrar e sair pela rede local. No Linux o programa atual Iptables (kernel 2.4.x e 2.6.x - em versões anteriores ipchains 2.2.x e ipfwadm 2.0.x) é responsável por fazer a filtragem desses pacotes, fornecendo em linha de comandos a possibilidade do administrador manipular as regras dos pacotes do kernel do Linux. Em todas distribuições Linux o pacote iptables já vem instalação por padrão, caso você não tenha instalado o pacote iptables, você pode instalar a partir do site e instalar a última versão a partir do código fonte do programa baixando o arquivo.tar.bz2 ou em distribuições como Debian e Fedora utilizar os comandos apt-get e yum. Debian # apt-get install iptables Fedora # yum install iptables 1

2 Nesta capítulo será mostrado como exemplo o computador firewall.dominio.com.br onde serão implementadas regras de iptables com NAT para redirecionar as requisições externas da internet para servidores da rede local DMZ (Veja a aula do Roteador NAT para mais detalhes) com mostra a imagem abaixo. 2

3 Este computador configurado como firewall tem o endereço IP mais baixo da nossa rede local DMZ (eth1) e da rede local (eth2) que está com 3 placas de rede: eth (conexão com a internet IP fixo (eth0) ou dinâmico (ppp0)) eth1 (conexão rede local DMZ servidores) eth2 (conexão rede local - computadores Desktop) * Obs: Para a configuração do DNS é necessário adquirir mais endereços IP fixo com sua operadora ou seu provedor. Configuração dos endereços IP do firewall Abaixo segue a configuração das interfaces de rede baseado no Debian e Red Hat / Fedora que pode ser implementado em outras distribuições Linux facilmente. Hostname firewall 3

4 Domínio dominio.com.br DNS primário DNS secundário Endereço IP eth0(ip fixo) ou ppp0(ip dinâmico) Máscara de rede Gateway Endereço IP eth1 (rede DMZ) máscara de rede Endereço de rede Endereço IP eth2 (rede local) Máscara de rede Endereço de rede Em distribuições Debian acesse as configurações de rede através do arquivo /etc/network/interfaces e faça as seguintes: /etc/network/interfaces /etc/network/interfaces # The loopback network interface auto lo iface lo inet loopback # IP FIXO auto eth0 iface eth0 inet static address netmask gateway # IP DINÂMICO PPPoE auto ppp0 iface ppp0 inet dhcp # IP da rede DMZ auto eth1 4

5 iface eth1 inet static address netmask network # IP da rede local auto eth2 iface eth2 inet static address netmask netmask No Red Hat / Fedora edite o arquivo os arquivos /etc/sysconfig/network-scripts/ifcfg-eth0, /etc/sysconfig/network-scripts/ifcfg-ppp0, /etc/sysconfig/network-scripts/ifcfg-eth1 e /etc/sysconfig/network-scripts/ifcfg-eth2. Configuração IP fixo estático: # placa de rede da rede externa # /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE = eth0 ONBOOT = yes BOOTPROTO = static IPADDR = (IP fixo fornecido pelo provedor) NETMASK = (máscara de rede fornecida pela provedor) GATEWAY = (gateway fornecido do provedor) Configuração IP fixo dinâmico DHCP: # placa de rede da rede externa # /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE = eth0 ONBOOT = yes BOOTPROTO = dhcp Configuração IP dinâmico ADSL PPPOE: 5

6 # placa de rede da rede externa # /etc/sysconfig/network-scripts/ifcfg-ppp0 DEVICE = ppp0 ONBOOT = yes BOOTPROTO = dhcp # placa de rede da rede DMZ # /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE = eth1 ONBOOT = yes BOOTPROTO = static IPADDR = NETMASK = NETWORK = # placa de rede da rede local # /etc/sysconfig/network-scripts/ifcfg-eth2 DEVICE = eth2 ONBOOT = yes BOOTPROTO = static IPADDR = NETMASK = NETWORK = Configure o nome do host no arquivos /etc/hostname # /etc/hostname firewall Especifique os endereços e nome de host no arquivo /etc/hosts # /etc/hosts localhost localhost.localdomain firewall firewall.dominio.com.br # interface eth1 rede DMZ firewall firewall.dominio.com.br # interface eth2 rede local 6

7 Especifique as redes no arquivo /etc/networks # /etc/networks default loopback link-local rede-dmz # rede DMZ rede-local # rede local Edite o arquivo de configuração de resolução de nomes DNS /etc/host.conf # /etc/host.conf order hosts,bind multi on Especifique os endereços de DNS no arquivo /etc/resolv.conf # /etc/resolv.conf # servidores DNS da rede local DMZ nameserver nameserver Ativando o roteamento Para ativar o roteamento edite o arquivo /etc/sysctl.conf e altere a linha Debian net.ipv4.conf.default.forwarding=1 para net.ipv4.conf.default.forwarding=0 7

8 Red Hat / Fedora net.ipv4.ip_forwarding=1 para net.ipv4.ip_forwarding=0 Ou você pode adicionar o seguinte comando como root em seu arquivo de Firewall # echo 1 > /proc/sys/net/ipv4/ip_forward Ativando o mascaramento de IP Agora compartilhe a internet habilitando o mascaramento de IP com seguinte comando: conexão IP fixo em eth0 # iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE conexão discada ou ADSL IP dinâmico em ppp0 # iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE Configurando as rotas Para configurar as rotas para a rede DMZ (eth ) e a rede local (eth ) use o comando route e adicione os comandos no script do firewall para ativar na inicialização do Linux. *Obs - (Mais detalhes sobre rotas veja a aula de configuração do roteador) Adicionando as rotas # route add -net netmask gw dev eth1 # route add -net netmask gw dev eth2 8

9 Exibindo as rotas # route -n Destino Roteador MáscaraGen. Opções Métrica Ref Uso Iface UH ppp UG eth UG eth U ppp0 Pronto, agora que os endereços IP e os arquivos de configuração da rede estão configurados, o roteamento e o mascaramento de IP ativados e as rotas configuradas, podemos criar nosso script de configuração básica do nosso firewall, onde veremos a explicação mais detalhada dos comandos e opções do iptables em seguida. Para ativar as configurações após reiniciar o computador crie um script geralmente em /etc/init.d/ com os comandos acima e torne-o executável e adicione-o no arquivo de inicialização /etc/rc.local. # /etc/init.d/firewall # apaga todas as regras /sbin/iptables -F # ativa o roteamento echo 1 > /proc/sys/net/ipv4/ip_forward # habilita o mascaramento de IP /sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # configurando as rotas /sbin/route add -net netmask gw dev eth1 /sbin/route add -net netmask gw dev eth2 Para visualizar as regras adicionadas executa o comando abaixo # iptables -L -t nat -v Mude as permissões para torna-lo executável # chmod +x /etc/init.d/firewall Adicione-o na inicialização no arquivo /etc/rc.local 9

10 # /etc/rc.local /etc/init.d/firewall Agora reinicie a rede ou reinicie o computador e execute o script do firewall # /etc/init.d/networking restart # /etc/init.d/firewall # /sbin/service network restart # /etc/init.d/firewall Iptables Iptables é o programa no Linux em linha de comando responsável pelo filtro de pacotes nas versões do kernel 2.4.x e 2.6.x que funciona através de regras determinadas na inicialização do sistema, onde os pacotes que entram no kernel são analisados pelas cadeias (chains) que são situações que podem ocorrer dentro do kernel. Em uma conexão quando um pacote entra no firewall, o kernel do Linux faz o roteamento do pacote determinando o destino e qual cadeia irá analisar esse pacote. As cadeias irão depender do tipo de tabela, que são divididas em 3 tipos: filter, nat e mangle. Para inicializar o programa iptables abra um terminal e execute o comando iptables -h para exibir as opções que são muitas, comece exibindo a versão do iptables (iptables -V). # iptables -V iptables v1.3.6 A sintaxe do comando iptables é da seguinte forma: iptables -t tabela comando cadeias (chains) opções parâmetros destino 10

11 Vamos analisar resumidamente o funcionamento do iptables, como base no diagrama da imagem abaixo onde é mostrado um pacote passando pelo firewall. 1. O pacote entra na interface de rede de entrada. 2. As regras de PREROUNTING (pré-roteamento) da tabela NAT são aplicadas. 3. O pacote passa por uma decisão de roteamento onde é desviado para a cadeia INPUT (entrada) caso o destino seja a interface de rede do próprio firewall, caso contrário é encaminhado para a cadeia FORWARD (indo e vindo). 4. O pacote passa por um processo local de verificação para determinar se é aceito ou rejeitado. 5. Caso o pacote seja aceito, é encaminhado para a cadeia OUTPUT (saída) da tabela NAT ou Filter. 6. O pacote é encaminhado para a cadeia POSTROUTING (pós-roteamento) da tabela NAT. 7. As regras de POSTROUTING da tabela NAT são aplicadas. 8. E finalmente o pacote sai da interface de rede saída até seu destino. 11

12 Tabelas São utilizadas para especificar os tipos de cadeias(chains) que serão utilizadas. tabela filter nat mangle Significado Essa é a tabela padrão utilizada, caso nenhuma tabela for determinada, é utilizada quando existe tráfego de dados normal, sem utilização de regras com NAT. Essa tabela utilizada as cadeias (chains) INPUT, OUTPUT e FORWARD. É usada quando tem NAT, e quando ocorre o tráfego de pacotes entre a rede local e a internet. Essa tabela utilizada as cadeias (chains) PREROUTING, POSTROUTING e OUTPUT. Possui 2 cadeias (chains) padrões: PREROUTING e OUTPUT, é usada para fazer alterações especiais em pacotes para o tratamento do tráfego que atravessa os cadeias chains (como alterar o tipo de serviço (TOS) e usa as cinco cadeias (chains) PREROUTING, POSTROUTING, INPUT, OUTPUT e FORWARD. Cada uma destas cadeias são processadas antes da cadeia correspondente na tabela filter e nat para determinar opções especiais para o tráfego dos pacotes (por exemplo, a cadeia PREROUTING da tabela mangle é processada antes da PREROUTING da tabela nat e assim por diante). Para exibir as tabelas atuais utilizadas pelo comando iptables pelo firewall, execute o comando: $ cat /proc/net/ip_tables_names Comandos Os comandos servem para permitir que o iptables execute determinadas ações como: estabelecer uma política de analise dos pacotes, adicionar uma regra ou cadeia, apagar e exibir as regras e cadeias. Comando Significado -P Determina uma política de analise dos pacotes em uma cadeia -A Adiciona um regra em uma cadeia 12

13 -I Insere uma regra em uma cadeia -R Renomeia uma regra em uma cadeia -D Exclui uma regra ou uma cadeia -F Excluir todas as regras de uma cadeia ou de todas as cadeias -Z Zera contadores de uma cadeia ou de todas as cadeias -N Cria uma nova cadeia definida pelo usuário -E Renomeia uma cadeia definida pelo usuário -X Exclui uma cadeia definida pelo usuário -L Exibe as regras de uma cadeia - h o u --help Cadeias (Chains) Exibe ajuda do iptables As cadeias servem para determinar se um pacote irá entrar, sair ou ser redirecionado pelo iptables. Cadeia INPUT OUTPUT FORWARD PREROUTING POSTROUTING Significado Analisa os pacotes que estão entrando na rede interna. Analisa os pacotes que estão saindo na rede interna. Analisa os pacotes que estão trafegando pela rede, tanto da rede externa (Internet) para rede interna (LAN) e vice-versa. Analisa pacotes que estão entrando pelo firewall e que são aplicadas regras de NAT, onde é determinado o destino dos pacotes (DNAT Destination NAT Destino NAT). Analisa pacotes que estão saindo pelo firewall e que são aplicadas regras de NAT, onde é determinado a origem dos pacotes (SNAT Source NAT Origem NAT). Para exibir as cadeias execute os comandos: # iptables -L -n 13

14 # iptables -L -t nat Opções Opção -p ou --protocol -s, --src ou --source - d, - - d s t o u --destination -i ou --in-interface -o ou --out-interface - - s p o r t o u --source-port - - d p o r t o u --destination-port --syn Significado Especifica o protocolo que pode ser TCP, UDP, ICMP ou ALL (todos). *Obs - pode ser usados outros protocolos especificados em /etc/protocols. Especifica os pacotes de origem da rede ( / ) ou computador local ( ) Especifica os pacotes de destino da rede ( / ) ou computador local ( ) Determina a placa de rede de entrada, onde não pode ser utilizada pela cadeia OUTPUT Determina a placa de rede de saída, onde não pode ser utilizada pela cadeia INPUT Determinada o porta de origem, onde só pode ser utilizada com as opções -p tcp e -p udp. Determinada o porta de destino, onde só pode ser utilizada com as opções -p tcp e -p udp. Essa opção só deve ser usada em pacotes que utilizam o protocolo TCP que tenham o bit SYN ativado e os bits ACK e FIN desativados no início de uma conexão TCP. Por exemplo, quando se bloqueia esses pacotes vindos de uma placa de rede, a conexão de entrada TCP será recusada, mas a conexão de saída não. -j ou --jump Especifica o destino da regra Para exibir as opções e parâmetros execute o comando: # iptables -L -n -v 14

15 *OBS Antes da opções e parâmetros pode ser utilizado a exclamação! que veremos mais a frente, que significa não (NOT) e inverte o sentido fazendo uma exceção. Destino O destino é o que será determinado para os pacotes, se eles serão aceitos, rejeitados, excluídos, redirecionados e etc. Destino ACCEPT REJECT DROP LOG SNAT DNAT --to MASQUERADE Significado Especifica que os pacotes serão aceitos e poderão passar pelo firewall Especifica que os pacotes serão rejeitados e não poderão passar pelo firewall, em caso de pacotes ICMP, como o comando ping, retornará uma mensagem de porta inalcançável port-unreachable. Especifica também que os pacotes serão rejeitados e não poderão passar pelo firewall, em caso de pacotes ICMP, como o comando ping, não retornará uma mensagem de porta inalcançável port-unreachable. Determina que as regras serão gravadas em log pelo daemon syslog em /var/log/syslog. Utilizada para fazer mascaramento de origem e deve ser utilizada com a cadeia POSTROUTING Utilizada com as cadeias PREROUTING e OUTPUT para fazer o redirecionamento de portas e servidores, balanceamento de carga e proxy transparente, onde caso a porta de destino não seja determinada, será utilizada a porta de origem. *Obs: a porta que estiver sendo redirecionada não pode estar sendo usada no momento por algum serviço. Utilizada para especificar o endereço IP e a porta de destino, depois de determinado o destino com DNAT ou após determinado a origem com SNAT. Faz o mascaramento de IP na saída de pacotes em uma interface de rede ppp0, eth0, etc. 15

16 REDIRECT --to-port RETURN Utilizada para fazer redirecionamento de conexões para uma porta do firewall Determina a porta de destino, após o redirecionamento com REDIRECT Determina que regras sejam executadas até que ocorra algum erro em uma delas, onde é usada em linhas seqüenciais no firewall, onde retorna o resultado da cadeia anterior sem executar o restante do cadeia atual. Para exibir os destinos das tabelas filter, nat e mangle execute o comando: # iptables -L -n -t filter # iptables -L -n -t nat # iptables -L -n -t mangle ou $ cat /proc/net/ip_tables_targets Extensões O iptables e o kernel do Linux podem ser extendidos para novas funcionalidades o que os tornam extensíveis, as extensões do kernel estão localizadas no diretório de módulos do kernel em /lib/modules/2.6.x/kernel/net/ipv4/netfilter/ (onde 2.6.x é versão do kernel instalado). E as extensões do programa iptables são bibliotecas compartilhadas e geralmente ficam localizadas em /usr/lib/iptables ou /lib/iptables. Esses módulos podem ser carregados e utilizados pelo iptables através do comando modprobe.por exemplo, para carregar algum módulo listado em /lib/modules/2.6.x/kernel/net/ipv4/netfilter/ ficaria da seguinte forma: 16

17 # modprobe ipt_tos # modprobe ipt_log As extensões permite o uso de filtros especiais dos pacotes, que podem ser usadas para implementação de segurança mais avançada. As extensões podem ser utilizadas da seguinte forma na linha de comando com iptables com a opção -p ou -m ou match : -p (protocolo) [extensão (opção) ] ou -m [ módulo (extensão) ] Para saber informações sobre um protocolo que pode ser tcp, udp ou icmp, podemos executar o comando iptables -p protocolo -h. # iptables -p tcp -h ou # iptables -p tcp --help Para saber informações sobre algum módulo que pode ser mac, limit, multiport, mark, owner, state, tos e unclean, podemos executar o comando iptables -m modulo -h. # iptables -m multiport -h 17

18 ou # iptables -m multiport help ou # iptables --match multiport -h Para exibir os módulos atuais usados pelo comando iptables, execute o comando: $ cat /proc/net/ip_tables_matches Usando o iptables Usando as cadeias (chains) O iptables utilizada regras (que estão em letras MAÍSCULAS) que são analisadas uma por uma até que a última seja analisada, caso alguma regra esteja com erro, por padrão será exibida mensagem de erro e ela não será aplicada. Assim os pacotes não serão verificados e dependerá das regras posteriores se os pacotes serão aceitos ou rejeitados. Criando regras ( -A ) A nossa primeira regra irá bloquear seu próprio computador, onde será testado com o comando ping no endereço local de loopback ou localhost. Execute o comando ping com a opção -c 3, onde será enviados apenas 3 pacotes e veja que está que o computador está respondendo pelo pacotes ICMP $ ping ou 18

19 $ ping localhost $ ping -c PING ( ) 56(84) bytes of data. 64 bytes from : icmp_seq=1 ttl=64 time=0.079 ms 64 bytes from : icmp_seq=2 ttl=64 time=0.073 ms 64 bytes from : icmp_seq=3 ttl=64 time=0.074 ms ping statistics packets transmitted, 3 received, 0% packet loss, time 2013ms rtt min/avg/max/mdev = 0.073/0.075/0.079/0.00 Agora adicione um regra na cadeia (chain) INPUT (-A INPUT) utilizando o protocolo ICMP (-p icmp) que bloqueia (-j DROP) o endereço de loopback (-d ). # iptables -A INPUT -p icmp -d j DROP Para exibir a nova regra criada execute o comando abaixo e veja o que o destino (target) está como DROP (rejeitado), que o protocolo é icmp e não tem opções (opt), que a origem (source) é qualquer endereço IP /0 e o destino (destination) é # iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination DROP cmp /

20 Agora execute o comando ping novamente e verifique o IP de destino (-d ) está bloqueado e não obtêm nenhuma resposta, pois os pacotes ICMP foram rejeitados pelo destino (-j DROP). $ ping -c Para voltar a aceitar pacotes ICMP e voltar a obtêm resposta do comando ping no endereço loopback , devemos excluir a regra anterior, que pode ser feito de duas formas: Primeiramente devemos exibir as numeração das regras com o comando abaixo com a opção --line-numbers. # iptables -L -n --line-numbers Chain INPUT (policy ACCEPT) num target prot opt source destination 1 DROP icmp / Repare que exibe a linha número 1 da cadeia INPUT, onde podemos excluí-la da seguinte forma: # iptables -D INPUT 1 ou executando a regra novamente especificando o comando -D ao invés de -A # iptables -D INPUT -p icmp -d j DROP 20

21 Agora você pode executar ping novamente e obterá resposta, pois não tem nenhuma regra bloqueando os pacotes. $ ping -c Você pode criar a mesma regra para aceitar os pacotes ao invés de rejeitar apenas alterando o destino -j DROP para -j ACCEPT # iptables -A INPUT -p icmp -d j ACCEPT Exibindo regras ( -L ) Para exibir regras utilize a seguinte sintaxe: iptables -t tabela -L cadeia opções -t tabela - podemos especificar a tabela que pode ser filter, nat ou mangle. -L exibe a cadeia (chain) que pode ser INPUT, OUTPUT, FORWARD, PREROUTING ou POSTROUTING. E as opções utilizadas para exibir as regras que podem ser: -v exibe mais detalhes das regras criadas. -n exibe endereços IP e portas ao invés de fazer a resolução de nomes DNS para serem exibidos, o que torna mais lento para ser exibidas as regras das tabelas. -x exibe números exatos ao invés de números arredondados e exibe uma faixa de portas de uma regra. --line-numbers exibe a numeração de linhas das regras na primeira coluna da tabela Para exibir as regras das tabelas filter, nat ou mangle execute os comandos especificando as opções: 21

22 # iptables -t filter -L -n # iptables -t nat -L -n -v # iptables -t mangle -L -n -v --line-numbers Para exibir as regras da cadeia INPUT, OUTPUT ou FORWARD execute os comandos especificando as opções: # iptables -L INPUT -n # iptables -L OUTPUT -n -v # iptables -L FORWARD -n -v --line-numbers Por exemplo: # iptables -L INPUT -n -v --line-numbers Chain INPUT (policy ACCEPT 5026K packets, 1075M bytes) num pkts bytes target prot opt in out source destination DROP cmp -- * * / Exibindo as regras acima usando as opções -n, -v e --line-numbers temos os seguintes campos: Chain INPUT (policy ACCEPT 5026K packets, 1075M bytes) - Exibe o nome da cadeia (chain) e a política padrão da cadeia (ACCEPT) onde são exibidos a quantidade e o tamanho dos pacotes. num - exibe a numeração linhas nas cadeias. pkts - especifica a quantidade de pacotes que trafegam pela regra. bytes - especifica a quantidade de bytes que trafegam pela regra. target - especifica o destino da regra, que pode ser DROP, ACCEPT, REJECT ou outro destino. prot - especifica o protocolo usado pela regra, que pode ser tcp, udp, icmp ou all opt - especifica opções extras como exceções! ou fragmentos -f. 22

23 in - especifica a interface de rede de entrada, de onde dos pacotes vem. out - especifica a interface de rede de saída, para onde os pacotes dos vão. source - especifica o endereço de origem. destination - especifica o endereço de destino. Apagando regras ( -D ) Primeiramente devemos exibir as numeração das regras com o comando abaixo com a opção --line-numbers. # iptables -L -n --line-numbers Chain INPUT (policy ACCEPT) num target prot opt source destination 1 DROP icmp / Repare que exibe a linha número 1 da cadeia INPUT, onde podemos excluí-la da seguinte forma: # iptables -D INPUT 1 A opção acima não é útil quando temos um firewall mais complexo com muitas linhas de regras, então devemos executar a regra novamente especificando o comando -D ao invés de -A. # iptables -D INPUT -p icmp -d j DROP Inserindo regras ( -I ) Para inserir uma nova regra é utilizada opção -I, por exemplo, suponha que seu firewall tem uma regra que está bloqueando o endereço de loopback 23

24 na linha 1 da cadeia (chain) INPUT e você deseja inserir uma nova regra que libera o acesso antes da regra de bloqueio, neste caso a nova regra passa a estar na linha 1 e a regra de bloqueio na linha 2. Neste caso não poderíamos inserir uma nova regra (-A INPUT) pois seria adicionada no final da cadeia INPUT e o tráfego de pacotes seria rejeitado pela primeira regra (linha 1) e nunca atingindo a segunda regra (linha 2). Esta regra bloqueia ping no endereço , onde a regra está na linha 1 da cadeia INPUT. # iptables -A INPUT -p icmp -d j DROP # iptables -L INPUT -n --line-numbers Chain INPUT (policy ACCEPT) num target prot opt source destination 1 DROP icmp / Exibindo regra anterior repare que a regra de bloqueio está na linha 1 da cadeia INPUT, e que executando o comando ping verifique que não obtêm resposta. $ ping -c Agora podemos inserir uma nova regra na linha 1 que aceite tráfego de pacotes e a regra de bloqueio passa para a linha 2, repare o número 1 depois da cadeia INPUT especifica a linha 1 da cadeia INPUT. # iptables -D INPUT 1 -p icmp -d j DROP 24

25 # iptables -L INPUT -n --line-numbers Chain INPUT (policy ACCEPT) num target prot opt source destination 1 ACCEPT icmp / DROP icmp / $ ping -c Agora executando o comando ping obtemos resposta, pois a linha número 1 está aceitando tráfego de pacotes e descartando a linha 2 de bloqueio DROP. Substituindo regras ( -R ) Para substituir uma regra é utilizada a opção -R, por exemplo para substituir as regras anteriores, basta colocar o número da linha após a cadeia e a opção -R, como mostra o exemplo abaixo: # iptables -R INPUT 2 -p tcp -d j ACCEPT Repare abaixo que a linha 2 foi substituído destino DROP por ACCEPT e o protocolo icmp por tcp. # iptables -L INPUT -n --line-numbers Chain INPUT (policy ACCEPT) num target prot opt source destination 1 ACCEPT icmp / ACCEPT tcp /

26 Criando uma nova cadeia (chain) ( -N ) O tamanho de uma nova cadeia pode ter até 31 caracteres e pode ser usado letras maiúsculas ou minúsculas. Quando se tem muitas linhas de regras, a criação de uma nova cadeia ajuda organizar e facilitar o gerenciamento do firewall para um determinado objetivo analisando o tráfego de um mesmo tipo de interface de rede, protocolo, endereço de origem, destino e etc. Para criar uma nova cadeia (chain) na tabela filter execute o comando : # iptables -t filter -N Minha-Chain E para inserir regras na nova cadeia use a opção -A antes da nova regra. # iptables -t filter -A Minha-Chain -p tcp -i eth0 -s /24 -d dport 22 -j DROP Agora inserimos a cadeia INPUT que tem como destino a nova cadeia Minha-Chain. # iptables -t filter -A INPUT -j Minha-Chain Exibindo a nova cadeia criada onde foi adicionada na cadeia INPUT. # iptables -t filter -L -n Chain INPUT (policy ACCEPT) target prot opt source destination Minha-Chain / /0 26

27 Chain Minha-Chain (1 references) target prot opt source destination DROP tcp / Renomeando uma cadeia criada ( -E ) Para renomear uma nova cadeia criada nas tabelas filter, nat ou mangle, use a opção -E antes da nova cadeia criada. # iptables -t filter -E Minha-Chain Outra-Chain Acima a cadeia Minha-Chain foi renomeada para Outra-Chain, como mostra o comando abaixo: # iptables -t filter -L Outra-Chain -n Chain Outra-Chain (1 references) target prot opt source destination DROP tcp / Excluindo cadeia (chains) criadas ( -X ) Para excluir uma cadeia (chain) criada em uma tabela, use a opção -X antes do nome da cadeia a ser excluída, caso você não especifique a cadeia a ser apagada, todas as novas cadeias criadas serão excluídas. Exclui da nova cadeia Outra-Chain # iptables -t filter -X Outra-Chain 27

28 Exclui todas as novas cadeias criadas # iptables -X Limpando regras de uma cadeia (chain) ( -F ) Para excluir uma regras criada em uma cadeia (chain), use a opção -F antes do nome da cadeia a ser limpa ou depois da tabela, caso você não especifique a cadeia ou tabela a ser limpada, todas as regras das cadeias ou tabelas serão limpas. Limpa as regras da cadeia INPUT # iptables -t filter -F INPUT Limpa todas as regras da tabela filter # iptables -t filter -F Limpa todas as regras de todas as tabela filter, nat e mangle. # iptables -F Limpando contador de pacotes e bytes das cadeias (chains) ( -Z ) A opção -Z serve para limpar os contadores de pacotes e bytes dos campos pkts (pacotes) e bytes de uma regra, onde devemos especificar a tabela e a cadeia a ser limpo os contadores, caso não especifique, todos os contadores serão limpos. Os contadores podem ser exibidos pela opção -v do comando iptables como mostra o comando abaixo. 28

29 # iptables -t nat -L -n -v Chain POSTROUTING (policy ACCEPT 96 packets, 7378 bytes) pkts bytes target prot opt in out source destination MASQUERADE 0 -- * eth / /0 Repare que no campo pkts temos 832 pacotes e no campo bytes bytes, e agora podemos zera-los usado a opção -Z em conjunto com as opções -L e -v, onde a opção -Z zera os pacotes e os bytes evitando o tráfego de pacotes durante a exibição e ao mesmo tempo exibe os campos zerados com as opções -L e -v. # iptables -t nat -Z POSTROUTING -L -v Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 0 0 MASQUERADE 0 -- any wlan0 anywhere anywhere Política de uma cadeia (chain) ( -P ) A política padrão do iptables é ACCEPT, e serve para especificar o destino de um pacote quando ele atingir o final das regras de uma cadeia. Essa política pode alterada através da opção -P do comando iptables como mostra a sintaxe abaixo. iptables -t tabela -P cadeia ACCEPT/DROP As duas políticas que podem ser usadas são: ACCEPT (bloqueia e depois aceita pacotes) e DROP (aceita e depois rejeita pacotes). ACCEPT essa política é utilizada junta com regras de restritivas (DROP e REJECT) na mesma cadeia (chain), ou seja, primeiro tudo é 29

30 bloqueado e o resto é aceito. DROP essa política é utilizada junta com regras de permissivas (ACCEPT) na mesma cadeia (chain), ou seja, primeiro tudo é aceito e o resto é bloqueado. Para exibir as políticas das cadeias execute o comando iptables -L. # iptables -L 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 Repare a política padrão das cadeias (chains) INPUT, FORWARD e OUTPUT é ACCEPT, onde podemos alterar com a opção -P do comando iptables como mostra o exemplo abaixo: # iptables -P INPUT DROP Agora exibindo novamente a política INPUT, veja que a política ACCEPT foi alterada para DROP. 30

31 # iptables -L INPUT Chain INPUT (policy DROP) target prot opt source destination Agora iremos criar duas regras utilizando a política DROP criada acima, onde primeiramente cria-se as regras que serão aceitas e depois no final as que bloqueia. # iptables -A INPUT -p icmp -d j ACCEPT # iptables -A INPUT -p tcp -d dport 22 -j DROP Acima foram criadas duas regras: A primeira regra aceita pacotes ICMP do comando ping que tem como destino o endereço IP e como destino ACCEPT (aceitar pacotes). A segunda regra bloqueia a porta 22 do ssh que tem como destino o endereço IP e como destino DROP (rejeitar pacotes). Agora execute o comando ping e veja que na primeira regra você consegue obter resposta, já na segunda regra não, pois a porta 22 está bloqueada para aceitar conexões TCP. $ ping -c PING ( ) 56(84) bytes of data. 64 bytes from : icmp_seq=1 ttl=64 time=0.072 ms 64 bytes from : icmp_seq=2 ttl=64 time=0.079 ms ping statistics

32 2 packets transmitted, 2 received, 0% packet loss, time 1007ms rtt min/avg/max/mdev = 0.072/0.075/0.079/0.009 ms Repare que os comandos abaixo não obtêm resposta, por que a segunda regra está rejeitando pacotes na porta 22. $ ssh -l usuario ou $ telnet *Obs Para comando ssh funcionar o servidor ssh, deve estar sendo executado, para isso execute o comando /etc/init.d/ssh start em distribuições Debian. # /etc/init.d/ssh start Agora mudando a política DROP para o padrão ACCEPT novamente e substituindo as regras anteriores alterando o destino onde está ACCEPT pra DROP e vice-versa, o comando ping estará bloqueado para aceitas pacotes ICMP e a porta 22 aceitando conexões TCP. Alterando a política de DROP para ACCEPT # iptables -P INPUT ACCEPT Substituindo a primeira regra na linha 1 alterando o destino ACCEPT para DROP # iptables -R INPUT 1 -p icmp -d j DROP Substituindo a primeira regra na linha 1 alterando o destino ACCEPT para DROP 32

33 # iptables -R INPUT 2 -p tcp -d dport 22 -j ACCEPT Especificando opções iptables Endereço de origem e destino A opção -s que também pode ser usado --src ou --source serve para especificar a origem dos pacotes e -d onde pode ser usado --dst ou destination especifica o destino dos pacotes. Nessa opções é permitido usar um endereço IP ( ), um host (pc1), um host completo FQDN (pc1.dominio.com.br) ou uma rede que pode ser usado máscara de rede padrão ( / ) ou máscara de rede CIDR (Veja a aula de endereço IP) /24. Caso não seja especificado um endereço IP ou rede, será atribuído o valor 0/0 que significa todos os computadores e todas as redes. Exemplos: Aceita todos os pacotes tcp na interface de rede eth0 que tem como origem a rede /24 e destino o computador # iptables -A INPUT -p tcp -i eth0 -s /24 -d j ACCEPT Bloqueia os pacotes tcp na interface de rede eth0 que tem como origem a rede / e destino o host pc1 # iptables -A INPUT -p tcp -i eth0 --src / dst pc1 -j DROP Bloqueia os pacotes tcp da porta 22 na interface de rede eth0 que tem como origem a rede /24 e destino o host pc1.dominio.com.br. # iptables -A INPUT -p tcp -i eth0 --source /24 --destination pc1.dominio.com.br --dport 22 -j DROP 33

34 Bloqueia os pacotes tcp da porta 22 na interface de rede eth0 que tem como origem todos os computadores e todas as redes todos e destino o computador # iptables -A INPUT -p tcp -i eth0 -d dport 22 -j DROP Interface de origem e destino A opção -i (in - entrada) que pode ser usada também --in-interface serve para especificar a interface de rede de entrada de origem e destino dos pacotes e a opção -o (out - saída) que pode ser usado --out-interface serve para especificar a interface de rede de saída de origem e destino dos pacotes. A interface de entrada -i nunca pode ser usada com uma cadeia (chain) de saída OUTPUT e POSTROUTING, e a interface de saída -o nunca pode ser usada com uma cadeia (chain) de entrada INPUT e PREROUTING. A cadeia (chain) FORWARD pode ser usada tanto para entrada -i como para saída -o, pois nessa cadeia trafega tanto pacotes de entrada como de saída. As interfaces de rede geralmente são especificadas como ppp0, eth0, eth1,... e também podemos utilizar a interface lo de loopback para o endereço localhost ou No caso especificar mais de uma interface do mesmo tipo como eth0, eth1,... podemos usar o sinal de + (eth+) como mostra os exemplos abaixo. Exemplos: Para exibir as interfaces de entrada no campo in e saída no campo out, use a opção -v do comando iptables junto com as opções -L -n. # iptables -L -n -v Chain FORWARD (policy ACCEPT 2400 packets, 344K bytes) pkts bytes target prot opt in out source destination 34

35 0 0 DROP tcp -- eth0 eth / /0 Aceita conexões tcp na interface ppp0 # iptables -A INPUT -i ppp0 -p tcp -j ACCEPT Aceita conexões tcp na interface lo que tem como origem e destino o endereço # iptables -A INPUT -i lo -p tcp -s d j ACCEPT Aceita conexões tcp em todas interfaces que começam em eth0, eth1, eth2,... que tem como origem o endereço IP # iptables -A INPUT -i eth+ -p tcp -d j ACCEPT Bloqueia o tráfego de entrada (-A INPUT) de pacotes TCP na interface de rede eth1 (-i eth1) # iptables -A INPUT -i eth1 -p tcp -d j DROP Para aumentar a segurança dos usuários locais, você pode bloquear o tráfego de conexões que saem dos computadores da rede local para a internet, especificando a interface de rede conectada a rede local. # iptables -A OUTPUT -o eth1 -p tcp -j DROP Bloqueia o tráfego de entrada e saída pacotes TCP da interface de entrada -i eth0 para a interface de saída -o eth1 # iptables -A FORWARD -p tcp -i eth0 -o eth1 -j DROP Protocolos 35

36 A opção -p que pode ser usada a opção --protocol (protocolo) serve para especificar o protocolo usado que pode ser tcp, udp e icmp. Exemplos: Bloqueia pacotes TCP para a porta 22 do SSH na interface de rede eth0 que tem como destino o endereço IP # iptables -A INPUT -p tcp -i eth0 -d dport 22 -j DROP Bloqueia pacotes UDP para a porta 53 do DNS na interface de rede eth0 que tem como destino o endereço IP # iptables -A INPUT -p udp -i eth0 -d dport 53 -j DROP Bloqueia pacotes ICMP usado pelo comando ping na interface de rede eth0 que tem como destino o endereço IP # iptables -A INPUT -p icmp -i eth0 -d j DROP Portas de origem e destino A opção --sport que pode ser usada também --source-port serve para especificar a porta de origem e a opção --dport que pode ser usada também --destination-port serve para especificar a porta de destino. Exemplos: Bloqueia as conexões tcp da porta 22 na interface eth0 que tem como origem a rede /24 e destino o computador A opção sport veremos mais a frente no redirecionamento de portas com DNAT e SNAT. # iptables -A INPUT -p tcp -i eth0 -s /24 -d dport 22 -j DROP 36

37 Para especifica um intervalo de portas utilize dois pontos (21:81). # iptables -A INPUT -p tcp -i eth0 -s /24 -d dport 21:81 -j DROP Este exemplo rejeita conexões TCP na interface eth0 nas portas altas do firewall acima da porta 1024 até # iptables -A INPUT -p tcp -i eth0 --dport 1024: j DROP Para especificar várias portas é necessário utilizar o módulo multiport, onde as portas devem ser separadas por vírgula (21, 22, 80). # iptables -A INPUT -p tcp -i eth0 -s /24 -d m multiport --dport 21, 22, 80 -j DROP Mensagens do protocolo ICMP Com o protocolo ICMP não possui portas, controle sobre o tráfego dos pacotes são feitos pelos tipos de mensagens ICMP que são exibidas pelo comando iptables -p icmp help. # iptables -p icmp --help ou # iptables -p icmp -h Por exemplo observando as mensagens temos as mensagens echo-reply (pong) responsável pelo resposta de ping e echo-request (ping) responsável pelo requisição de ping, onde podemos bloqueá-las e assim bloqueando o comando ping. # iptables -A INPUT -i eth0 -p icmp --icmp-type echo-request -j DROP 37

38 Pacotes syn A opção --syn especifica pacotes syn que são usados para iniciar uma conexão usando o protocolo TCP, bloqueando esses pacotes o computador que enviou os pacotes syn, nunca obterá uma resposta, pois a conexão não será realizada, apenas as conexões já estabelecidas não serão bloqueadas. A regra abaixo bloqueia qualquer tentativa de conexão que venha da interface de rede eth0, e em seguida aceita apenas conexões para o computador local no endereço de loopback tanto na origem como no destino. # iptables -A INPUT -p tcp -i eth0 --syn -j DROP # iptables -A INPUT -p tcp -i eth0 --syn -s d j ACCEPT Essa opção --syn pode ser invertida se precedida por!, o que significa rejeitar qualquer pacote (ACK,FIN,RST,URG,PSH) exceto os que iniciam conexões SYN. # iptables -A INPUT -p tcp -i eth0! --syn -j DROP Flags tcp (--tcp-flags) O cabeçalho TCP identifica um pacote TCP que está sendo enviado por flags de bits(urg, Ack, Psh, Rst, Syn e Fin). As flags Urg e Psh dificilmente são utilizadas, abaixo segue as combinações de flags usadas pelo TCP. Combinações de flags SYN SYN ACK Descrição É o primeiro pacote a ser enviado em uma conexão entre a origem e o destino O destino responde ao pacote SYN, confirmando sua mensagem original e enviando SYN como resposta 38

39 ACK FIN FIN ACK RST Cada pacote utilizado em uma conexão estabelecida possui um bit ACK ativado para confirmar os pacotes recebidos anteriormente No momento em que uma conexão estiver sendo fechada, será enviado um pacote FIN para o outro Este tipo de combinação é utilizada para confirmar o primeiro pacote FIN e completar o encerramento da conexão Quando um pacote é enviado de forma inesperada é enviado um pacote reset(rst), por exemplo, em uma conexão se for recebido um pacote SYN ACK sem ter enviado um pacote SYN será enviado um pacote RST As vezes é necessário permitir conexões TCP em uma única direção e não nas duas direções. Por exemplo, temos um servidor HTTP externo onde é permitido fazer requisições de conexões e não conexões vindas deste servidor. A solução seria bloquear os pacotes TCP vindos do servidor, mas as conexões TCP precisam de pacotes bidirecionais (indo e vindo) para estabelecer a conexão. Então a solução é bloquear os pacotes SYN (com as flags SYN ativadas e as flags RST e ACK desativadas, mas dizemos pacotes SYN como atalho) que são utilizados para iniciar uma conexão, onde rejeitando esses pacotes a conexão será bloqueada. O protocolo TCP também possui as flags SYN, ACK, FIN, RST, URG e PSH, onde podemos especificar todas as flags com a opção ALL, nenhuma com a opção NONE e utilizar o uso de exceções com! na primeira opção depois da opção --tcp-flags. A opção --tcp-flags permite você filtrar flags TCP especificas. A primeira opção depois de --tcp-flags especifica as flags que são analisadas, e a segunda opção especifica as flags que são ajustadas para serem rejeitadas ou aceitas. É possível fazer combinações de flags na primeira opção e na segunda após a opção --tcp-flags, como por exemplo: 39

40 Opção --tcp-flags 1ª opção 2ª opção --tcp-flags ALL ALL --tcp-flags ALL NONE --tcp-flags ALL SYN,ACK --tcp-flags SYN,RST,ACK SYN --tcp-flags SYN,ACK,FIN,RST,URG,PSH SYN,ACK,FIN,RST,URG,PSH --tcp-flags! SYN,ACK,RST SYN,ACK Para fazer testes de conexão, use o comando ssh que usa pacotes TCP que possui as flags tcp. $ ssh -l aluno Exemplos: Analisa todas as flags na primeira opção ALL, e na segunda opção especifica a flag SYN onde será rejeitada qualquer tentativa de conexão. # iptables -A INPUT -p tcp -i eth0 --tcp-flags ALL SYN -j DROP Analisa todas as flags na primeira opção ALL, e na segunda opção NONE não especifica nenhuma flag a ser rejeitada. # iptables -A INPUT -p tcp -i eth0 --tcp-flags ALL NONE -j DROP Analisa todas as flags na primeira opção ALL, e na segunda opção ALL especifica todas as flags a serem rejeitadas. # iptables -A INPUT -p tcp -i eth0 --tcp-flags ALL ALL -j DROP Analisa as flags na primeira opção ACK e RST com exceção da flag SYN (! SYN ), e na segunda opção rejeita as flags ACK e RST. 40

41 # iptables -A INPUT -p tcp -i eth0 --tcp-flags! SYN,ACK,RST ACK,RST -j DROP Analisa as flags na primeira opção SYN e FIN, e na segunda opção rejeita ambas as flags. # iptables -A INPUT -p tcp -i eth0 --tcp-flags SYN,FIN SYN,FIN -j DROP Analisa as flags na primeira opção ACK e FIN, e na segunda opção rejeita a flag FIN sem o acompanhamento da flag ACK. # iptables -A INPUT -p tcp -i eth0 --tcp-flags ACK,FIN FIN -j DROP Fragmentos ( -f ) Quando um pacote TCP é muito grande para ser enviado de uma única vez, então o pacote é dividido em pedaços menores que são chamados de fragmentos que são transmitidos como múltiplos pacotes através de um computador de origem para ser reconstituído em um computador destino. Para especificar fragmentos em regras podemos utilizar a opção -f ou --fragment, para conexões com NAT, todos os fragmentos serão reconstituídos antes de atingirem o código do filtro de pacotes, então você não precisa se preocupar com fragmentos. Este exemplo bloqueia qualquer fragmento saído da interface eth0 que tenha como destino o computador # iptables -A OUTPUT -p tcp -o eth0 -f -d j DROP Exceções (! ) As exceções representada por uma exclamação! podem ser aplicadas em endereços IP ou de rede de origem e destino, protocolos, portas e etc. Por exemplo: 41

42 # iptables -A INPUT -p tcp -i eth0 -s! d destination-port 22 -j DROP Essa regra bloqueia a porta 22 para qualquer computador, exceto para o computador (! ) que utiliza o protocolo tcp, na interface de rede eth0, que tenha como origem qualquer computador e como destino o computador # iptables -A INPUT -p tcp! --syn -i eth0 -s /24 -d j DROP Essa regra bloqueia a todos os pacotes, exceto os pacotes que tentam iniciar conexões syn (! --syn) que utiliza o protocolo tcp, na interface de rede eth0, que tem como origem a rede /24 e o destino o computador As conexões já efetuadas não são atingidas por esta regra, e somente pode ser aplicada em conexões TCP. # iptables -A INPUT -p tcp -i eth0 -s /24 -d m multiport --dport! 22, 21, 80 -j DROP Essa regra que utiliza o módulo multiport (para especificar várias portas) bloqueia todas as portas para a rede /24, exceto as portas 21, 22 e 80 (! 22, 21, 80) que utiliza o protocolo tcp, na interface de rede eth0, que tenha como destino o computador Destino O destino de um pacote em uma regra é representado pela letra -j que pode ser -j ACCEPT (aceitar pacotes), -j DROP (rejeitar pacotes), -j LOG (gravar em logs), -j REDIRECT (redireciona pacotes), -j SNAT (redirecionamento de origem), -j DNAT (redirecionamento de destino), -j RETURN (retorna o resultado da cadeia anterior sem executar o restante do cadeia atual). Nos exemplos acima vimos os destinos ACCEPT e DROP, veremos agora os destinos REJECT, LOG e RETURN e mais adiante REDIRECT, SNAT e DNAT na seção de redirecionamento de portas e endereços de origem e destino. 42

43 REJECT O destino REJECT rejeita pacotes assim como o destino DROP, pode ser usado apenas na tabela filter e não pode ser utilizado como política padrão assim como ACCEPT e DROP, e tem como diferença que ele envia uma mensagem ICMP "port-unreachable" porta inalcançável e o destino DROP não. As vezes é melhor usar REJECT do que DROP para bloquear portas, pois dá uma impressão que o computador está sem firewall e além do mais DROP gasta mais tempo nas repostas de portas de serviços, portscanners e sniffers com nmap e netcat diminuindo assim os recursos da máquina. Exemplo: Rejeita conexões de pacotes icmp na interface de loopback # iptables -A INPUT -p icmp -d j REJECT # iptables -L INPUT -n Chain INPUT (policy ACCEPT) target prot opt source destination REJECT icmp / reject-with icmp-port-unreachable $ ping -c Rejeita conexões de pacotes tcp na porta 22 do SSH na interface de rede eth0 que tem como destino o computador Para isso devemos ter o SSH instalado e executando o serviço e o portscanner nmap (caso não tenha instalado use o comando: 43

44 # apt-get install nmap Iniciando o serviço ssh # /etc/init.d/ssh start Utilizando o portscanner nmap abaixo, veja que a porta do ssh está aberta. # nmap -ss localhost Starting Nmap 4.11 ( ) at :50 BRT Interesting ports on localhost ( ): Not shown: 1677 closed ports PORT STATE SERVICE 22/tcp open ssh 80/tcp open http 113/tcp open auth Agora rejeite conexões na porta 22 do ssh # iptables -A INPUT -p tcp -i eth0 -d dport 22 -j REJECT Execute o comando nmap novamente, e veja que agora está filtrada onde obtêm-se também usando DROP. # nmap -ss localhost Starting Nmap 4.11 ( ) at :50 BRT Interesting ports on localhost ( ): Not shown: 1677 closed ports 44

45 PORT STATE SERVICE 22/tcp filtered ssh 80/tcp open http 113/tcp open auth LOG Este destino grava mensagens de log do tráfego de pacotes nos arquivos /var/log/syslog (Debian) ou /var/log/messages (Red Hat / Fedora) do daemon syslog do sistema. O destino LOG serve para gravar logs de uma determinada regra em seu firewall, onde geralmente deve ser aplicada no final de uma cadeia (chain) para posterior análise das tentativas de conexões, facilitando assim o conhecimento das regras que estão sendo aceitas ou bloqueadas. No iptables não é possível gravar em log e especificar o destino na mesma regra, para gravar mensagens de log de uma regra, primeiramente deve-se gravar em log as tentativas de conexões e depois especificar a regra de destino, onde aceitará os pacotes (-j ACCEPT) ou rejeitará (-j DROP ou REJECT), caso contrário não funcionará a regra de LOG. Vale lembrar que para política padrão -P ACCEPT (permissiva) deve-se primeiro bloquear tudo (-j DROP ou REJECT) e depois aceitar (-j ACCEPT) o que você quer no final, para a política -P DROP (restritiva) é o contrário. Exemplo: Grava em log todas as conexões tcp vindas da interface eth0 do computador # iptables -A INPUT -p tcp -i eth0 -s j LOG 45

46 # iptables -A INPUT -p tcp -i eth0 -s j REJECT Exiba as regras com o comando iptables -L -n -v # iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination LOG tcp /0 LOG flags 0 level 4 REJECT tcp /0 reject-with icmp-port-unreachable A partir de um computador da rede local ( ), tente acessar um serviço que usa o protocolo TCP como o SSH e observe a saída do comando abaixo que a conexão estará recusada. $ ssh -l aluno ssh: connect to host port 22: Connection refused Agora no computador com o firewall, observe no log do syslog as mensagens enviadas das tentativas de conexões com os comandos tail -f /var/log/syslog ou dmesg # tail -f /var/log/syslog ou # dmesg Apr 1 20:25:09 firewall kernel: IN=eth0 OUT= MAC=00:11:2f:90:a6:75:00:c0:df:22:d7:dc:08:00 SRC= DST= LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=63356 DF PROTO=TCP SPT=38316 DPT=22 WINDOW=5840 RES=0x00 ACK SYN URGP=0 Analisando as mensagem de log acima temos os seguintes campos: 46

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

Projeto de Ensino. iptables. Grupo de Estudos em Tecnologia de Redes e Processamento Paralelo. Prof. Luiz Antonio Unioeste Projeto de Ensino Grupo de Estudos em Tecnologia de Redes e Processamento Paralelo iptables Prof. Luiz Antonio Unioeste Introdução Firewall O Firewall é um programa que tem como objetivo proteger a máquina

Leia mais

Netfilter e Iptables

Netfilter e Iptables Netfilter e Iptables Iptables/Netfilter O projeto netfilter/iptables é um subsistema de firewalling para o kernel Linux 2.4 e superiores. Com o uso desta ferramenta podese definir regras especiais para

Leia mais

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

Firewalls - IPTables. Carlos Gustavo A. da Rocha. ASSR Firewalls - IPTables Carlos Gustavo A. da Rocha Histórico de Firewalls no SO Linux O kernel do Linux disponibiliza funcionalidades de filtragem de pacotes desde meados de 1995 Kernel versão 1.2.x e 2.0.x

Leia mais

Configuração do Servidor Gateway Firewall e DHCP

Configuração do Servidor Gateway Firewall e DHCP Fundamentos e Serviços IP Configuração do Servidor Gateway Firewall e DHCP Configurações da primeira placa de rede(que está conectada com a internet) receberá configurações do dhcp de sua rede. Configurações

Leia mais

Administração de redes

Administração de redes Administração de redes Configuração do roteador Linux Roteador (também chamado router ou encaminhador) é um equipamento usado para fazer a comutação de protocolos, a comunicação entre diferentes redes

Leia mais

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

Redes de Computadores. Laboratório de Interconexão de Redes e Serviços - 4º Período Redes de Computadores Laboratório de Interconexão de Redes e Serviços - 4º Período Introdução Firewall é um quesito de segurança com cada vez mais importância no mundo da computação. À medida que o uso

Leia mais

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

Configurando Interface de Rede. IPTABLES Firewall em Linux Kernel 2.4 em diante. Regras do Iptables. Iptables. Regras do Iptables. Comandos Principais IPTABLES Firewall em Linux Kernel 2.4 em diante Prof. Alexandre Beletti Ferreira Configurando Interface de Rede Configuração da interface de rede: netconfig (Slackware) netconf ou linuxconf (Conectiva

Leia mais

Firewalls em Linux. Tutorial Básico. André Luiz Rodrigues Ferreira alrferreira@carol.com.br

Firewalls em Linux. Tutorial Básico. André Luiz Rodrigues Ferreira alrferreira@carol.com.br Firewalls em Linux Tutorial Básico André Luiz Rodrigues Ferreira alrferreira@carol.com.br 1 O que é um Firewall? Uma série de mecanismos de proteção dos recursos de uma rede privada de outras redes. Ferramenta

Leia mais

Gerenciamento de Redes Linux. Linux configuração de rede

Gerenciamento de Redes Linux. Linux configuração de rede Gerenciamento de Redes Linux Linux configuração de rede As interfaces de rede no GNU/Linux estão localizadas no diretório /dev e a maioria é criada dinamicamente pelos softwares quando são requisitadas.

Leia mais

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

Instalação e Configuração Iptables ( Firewall) Instalação e Configuração Iptables ( Firewall) Pág - 1 Instalação e Configuração Iptables - Firewall Desde o primeiro tutorial da sequencia dos passo a passo, aprendemos a configurar duas placas de rede,

Leia mais

Principais características:

Principais características: Sumário Firewall: Linux 19 de agosto de 2014 19 de agosto de 2014 1 / 1 19 de agosto de 2014 2 / 1 O iptables é um firewall que funciona a nível de pacotes. Para visualizar as regras do firewall acesse

Leia mais

Iptables. Adailton Saraiva Sérgio Nery Simões

Iptables. Adailton Saraiva Sérgio Nery Simões 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

Leia mais

SEGURANÇA INFORMÁTICA E DAS COMUNICAÇÕES - Ficha de Apoio Extra- CAPÍTULO 3. SEGURANÇA EM REDES E SISTEMAS

SEGURANÇA INFORMÁTICA E DAS COMUNICAÇÕES - Ficha de Apoio Extra- CAPÍTULO 3. SEGURANÇA EM REDES E SISTEMAS Introdução ao IPTables SEGURANÇA INFORMÁTICA E DAS COMUNICAÇÕES - Ficha de Apoio Extra- CAPÍTULO 3. SEGURANÇA EM REDES E SISTEMAS O iptables é utilizado para configurar, manter e inspecionar as tabelas

Leia mais

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

ADMINISTRAÇÃO DE REDES I LINUX. Firewall. Frederico Madeira LPIC 1, CCNA fred@madeira.eng.br www.madeira.eng.br ADMINISTRAÇÃO DE REDES I LINUX Firewall Frederico Madeira LPIC 1, CCNA fred@madeira.eng.br www.madeira.eng.br São dispositivos que têm com função regular o tráfego entre redes distintas restringindo o

Leia mais

Configurações avançadas de rede

Configurações avançadas de rede Configurações avançadas de rede ping fping arping hostname ifconfig ip arp rarp netstat ss lsof netcat systemctl service invoke-rc.d nmap traceroute route systctl host nslookup whois dig /etc/network/interfaces

Leia mais

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

PROJETO DE IMPLEMENTAÇÃO DE UM SERVIDOR FIREWALL LIVRE UTILIZANDO IPTABLES PROJETO DE IMPLEMENTAÇÃO DE UM SERVIDOR FIREWALL LIVRE UTILIZANDO IPTABLES 1. Introdução O IPTABLES é um software usado para analisar os pacotes que passam entre redes. A partir desse princípio podemos

Leia mais

Introdução a Sistemas Abertos Configuração de Rede

Introdução a Sistemas Abertos Configuração de Rede Introdução a Sistemas Abertos Configuração de Rede filipe.raulino@ifrn.edu.br Interfaces de Rede As placas de rede, geralmente, são reconhecidas dinamicamente pelo sistema. As interfaces são localizadas

Leia mais

ADMINISTRAÇÃO DE REDES I LINUX. Configuração de Rede

ADMINISTRAÇÃO DE REDES I LINUX. Configuração de Rede ADMINISTRAÇÃO DE REDES I LINUX Configuração de Rede Network Conceitos - Endereço IP Padrão de endereçamento utilizado nas redes baseadas em TCP/IP - Máscara de sub-rede Define o range da rede a qual o

Leia mais

Compartilhamento da internet, firewall

Compartilhamento da internet, firewall da internet, firewall João Medeiros (joao.fatern@gmail.com) 1 / 29 Exemplo de transmissão 2 / 29 Exemplo de transmissão Dados trafegam em pacotes com até 1460 bytes de dados e dois headers de 20 bytes

Leia mais

Segurança em Sistemas de Informação

Segurança em Sistemas de Informação Segurança em Sistemas de Informação Introdução O Iptables é um código de firewall presente nas versões a partir da 2.4 do kernel, que substituiu o Ipchains (presente nas séries 2.2 do kernel). Ele foi

Leia mais

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

01 - Entendendo um Firewall. Prof. Armando Martins de Souza E-mail: armandomartins.souza@gmail.com 01 - Entendendo um Firewall. Prof. Armando Martins de Souza E-mail: armandomartins.souza@gmail.com O que são Firewalls? São dispositivos constituídos por componentes de hardware (roteador capaz de filtrar

Leia mais

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

Elaboração de Script de Firewall de Fácil administração Elaboração de Script de Firewall de Fácil administração Marcos Monteiro http://www.marcosmonteiro.com.br contato@marcosmonteiro.com.br IPTables O iptables é um firewall em NÍVEL DE PACOTES e funciona baseado

Leia mais

Gestão de Sistemas e Redes

Gestão de Sistemas e Redes Gestão de Sistemas e Redes Firewalls Paulo Coelho 2005 Versão 1.0 1 Acessos do exterior A ligação da rede de uma empresa a um sistema aberto como a Internet merece muitíssimo cuidado Três preocupações

Leia mais

www.professorramos.com

www.professorramos.com Iptables www.professorramos.com leandro@professorramos.com Introdução O netfilter é um módulo que fornece ao sistema operacional Linux as funções de firewall, NAT e log de utilização de rede de computadores.

Leia mais

Trabalhando com redes no Linux - Debian

Trabalhando com redes no Linux - Debian Trabalhando com redes no Linux - Debian O comando lspci exibe uma listagem de todos os dispositivos pci encontrados e que estejam com módulos ativos no sistema. É importante frisar que nem todos os periféricos

Leia mais

Prof. Samuel Henrique Bucke Brito

Prof. Samuel Henrique Bucke Brito Sistema Operacional Linux > Firewall NetFilter (iptables) www.labcisco.com.br ::: shbbrito@labcisco.com.br Prof. Samuel Henrique Bucke Brito Introdução O firewall é um programa que tem como objetivo proteger

Leia mais

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

Autor: Armando Martins de Souza <armandomartins.souza at gmail.com> Data: 12/04/2010 http://wwwvivaolinuxcombr/artigos/impressoraphp?codig 1 de 12 19-06-2012 17:42 Desvendando as regras de Firewall Linux Iptables Autor: Armando Martins de Souza Data: 12/04/2010

Leia mais

Estrutura do Iptables

Estrutura do Iptables Estrutura do Iptables Autor: Elgio Schlemer Data: 13/07/2007 Introdução: o que esperar deste artigo Ao contrário de outros artigos e tutoriais sobre iptables, este não se

Leia mais

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

Obs: Endereços de Rede. Firewall em Linux Kernel 2.4 em diante. Obs: Padrões em Intranet. Instalando Interface de Rede. Obs: Endereços de Rede Firewall em Linux Kernel 2.4 em diante Classe A Nº de IP 1 a 126 Indicador da Rede w Máscara 255.0.0.0 Nº de Redes Disponíveis 126 Nº de Hosts 16.777.214 Prof. Alexandre Beletti

Leia mais

PRÁTICA DE NAT/PROXY - LINUX 1. TOPOLOGIA DE REDE PARA TODOS OS CENÁRIOS DIFERENÇAS NO ROTEIRO EM RELAÇÃO A IMAGEM DO DVD

PRÁTICA DE NAT/PROXY - LINUX 1. TOPOLOGIA DE REDE PARA TODOS OS CENÁRIOS DIFERENÇAS NO ROTEIRO EM RELAÇÃO A IMAGEM DO DVD PRÁTICA DE NAT/PROXY - LINUX Esses exercícios devem ser executados através do servidor de máquinas virtuais: espec.ppgia.pucpr.br ou através da imagem fornecida no DVD. OBS. Esse roteiro utiliza o proxy

Leia mais

2 A Avaliação de RMU 20/12/2012. Nome:

2 A Avaliação de RMU 20/12/2012. Nome: 2 A Avaliação de RMU 20/12/2012 Nome: 1. Na interface de saída de um roteador existem 10 pacotes esperando para serem transmitidos. Determine suas ordens de saída e atrasos máximos para cada classe se

Leia mais

IPTABLES. Helder Nunes Haanunes@gmail.com

IPTABLES. Helder Nunes Haanunes@gmail.com IPTABLES Helder Nunes Haanunes@gmail.com Firewall Hoje em dia uma máquina sem conexão com a internet praticamente tem o mesmo valor que uma máquina de escrever. É certo que os micros precisam se conectar

Leia mais

Oficina de ferramentas de Gerência para Redes em Linux

Oficina de ferramentas de Gerência para Redes em Linux Oficina de ferramentas de Gerência para Redes em Linux Introdução Mesmo as pessoas menos familiarizadas com a tecnologia sabem que a internet não é um "território" livre de perigos. É por esta razão que

Leia mais

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

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 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 antiga_chain nova_chain renomeia uma chain. iptables -t

Leia mais

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

Tema do Minicurso: Firewall IPTABLES. Carga horária 3h Orientador: Mirla Rocha de Oliveira Ferreira Bacharel em Engenharia da Computação Orientadora do Curso de Formação Profissional em Redes de Computadores - SENAC Tema do Minicurso: Firewall IPTABLES Carga

Leia mais

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

Curso de extensão em Administração de sistemas GNU/Linux: redes e serviços Curso de extensão em Administração de sistemas GNU/Linux: redes e serviços Italo Valcy - italo@dcc.ufba.br Gestores da Rede Acadêmica de Computação Departamento de Ciência da Computação Universidade Federal

Leia mais

Administração de Redes Linux

Administração de Redes Linux Administração de Redes Linux Alberto Felipe Friderichs Barros alberto.barros@ifsc.edu.br Users As contas de usuário são projetados para fornecer segurança no sistema operacional Linux. Cada pessoa no sistema

Leia mais

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

Projeto e Instalação de Servidores Servidores Linux Aula 6 Firewall e Proxy Projeto e Instalação de Servidores Servidores Linux Aula 6 Firewall e Proxy Prof.: Roberto Franciscatto Introdução FIREWALL Introdução Firewall Tem o objetivo de proteger um computador ou uma rede de computadores,

Leia mais

Administração de Redes Redes e Sub-redes

Administração de Redes Redes e Sub-redes 1 MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA CAMPUS SÃO JOSÉ SANTA CATARINA Administração de Redes Redes e Sub-redes Prof.

Leia mais

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

Curso de extensão em Administração de sistemas GNU/Linux: redes e serviços Curso de extensão em Administração de sistemas GNU/Linux: redes e serviços - italo@dcc.ufba.br Gestores da Rede Acadêmica de Computação Departamento de Ciência da Computação Universidade Federal da Bahia,

Leia mais

FIREWALL. Adão de Melo Neto

FIREWALL. Adão de Melo Neto FIREWALL Adão de Melo Neto Sumário 1. INTRODUÇÃO 2. DESENVOLVIMENTO Firewall 3. CONCLUSÃO Prática de Firewall Prática do SSH Firewall Firewall é hardware ou software (mais comum) que, a partir de um conjunto

Leia mais

Linux Network Servers

Linux Network Servers Firewall Nos tempos atuais tem se falado muito em segurança, pois a internet se tornou um ambiente perigoso. Todos nossos servidores que estão expostos para a internet necessitam de uma proteção para que

Leia mais

Responsáveis: Bruno Silva, André Coelho, Wellington Silva, Marcelo Hirano. Atualizado em: 08/09/2017 CONFIGURAÇÃO DE BACKUP DE ORIGEM LINUX

Responsáveis: Bruno Silva, André Coelho, Wellington Silva, Marcelo Hirano. Atualizado em: 08/09/2017 CONFIGURAÇÃO DE BACKUP DE ORIGEM LINUX VIRTOS S.O.S BACKUP MATERIAL DE APOIO AO USUÁRIO Responsáveis: Bruno Silva, André Coelho, Wellington Silva, Marcelo Hirano. Atualizado em: 08/09/2017 CONFIGURAÇÃO DE BACKUP DE ORIGEM LINUX O S.O.S Backup

Leia mais

Aula 09 Firewall (Configuração) Prof. Roitier Campos Gonçalves

Aula 09 Firewall (Configuração) Prof. Roitier Campos Gonçalves Aula 09 Firewall (Configuração) Prof. Roitier Campos Gonçalves O que filtrar? Duas abordagens: Política padrão DROP e regras específicas para os serviços permitidos; Política padrão ACCEPT e regras para

Leia mais

CURSO SUPERIOR DE TECNOLOGIA EM REDES DE COMPUTADORES LABORATÓRIO AULA 06 Disciplina: Administração de Serviços de Redes Aluno(a):

CURSO SUPERIOR DE TECNOLOGIA EM REDES DE COMPUTADORES LABORATÓRIO AULA 06 Disciplina: Administração de Serviços de Redes Aluno(a): CURSO SUPERIOR DE TECNOLOGIA EM REDES DE COMPUTADORES LABORATÓRIO AULA 06 Disciplina: Administração de Serviços de Redes Aluno(a): Semestre: 2017.1 Prof.: Dayvidson Bezerra Data: 31/03/2017 LABORATÓRIO:

Leia mais

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

Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW. Free Powerpoint Templates Page 1 Segurança na Web Capítulo 6: Firewall Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW Page 1 Introdução Qual a função básica de um firewall? Page 2 Introdução Qual a função básica de um firewall? Bloquear

Leia mais

Firewalls, um pouco sobre...

Firewalls, um pouco sobre... Iptables Firewalls, um pouco sobre... Firewalls Realizam a filtragem de pacotes Baseando-se em: endereço/porta de origem; endereço/porta de destino; protocolo; Efetuam ações: Aceitar Rejeitar Descartar

Leia mais

Configuração endereço IP da interface de rede

Configuração endereço IP da interface de rede Configuração endereço IP da interface de rede Download Imprimir Para configurar a interface de sua placa de rede como DHCP para obter um endereço IP automático ou especificar um um endereço IP estático

Leia mais

Tutorial configurando o dhcp no ubuntu ou debian.

Tutorial configurando o dhcp no ubuntu ou debian. Tutorial configurando o dhcp no ubuntu ou debian. Pré requisitos para pratica desse tutorial. Saber utilizar maquina virtual no virtual Box ou vmware. Saber instalar ubuntu ou debian na maquina virtual.

Leia mais

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

Firewall. Tutorial Firewall em Linux Acadêmicos: Felipe Zottis e Cleber Pivetta Tutorial Firewall em Linux Acadêmicos: Felipe Zottis e Cleber Pivetta Firewall Firewall é um quesito de segurança com cada vez mais importância no mundo da computação. À medida que o uso de informações

Leia mais

REDES DE COMPUTADORES

REDES DE COMPUTADORES REDES DE COMPUTADORES Jonas Willian R Aureliano Resumo prático Professor: Jonas Willian ROTEIRO Arquivo sources.list; Comando apt-get; Arquivo hostname; Arquivo interfaces; ARQUIVO SOURCES.LIST Este é

Leia mais

Instalação e Configuração do Servidor de DHCP

Instalação e Configuração do Servidor de DHCP Instalação e Configuração do Servidor de DHCP Passo Nº 1 Primeiramente vamos abrir um terminal de comando ou console como administrador, na tela principal da sua área de trabalho,, considerando que foi

Leia mais

NAT. NAT e Tabelas do Iptables NAT NAT. NAT Tipos de Tradução NAT 18/03/2015

NAT. NAT e Tabelas do Iptables NAT NAT. NAT Tipos de Tradução NAT 18/03/2015 e Tabelas do Iptables Prof. Alexandre Beletti Network Address Translation Segundo Ueda (IME-USP), uma máquina com endereço IP reservado não pode participar da Internet, não existirão rotas de retorno.

Leia mais

FireWall no Linux FIREWALL COM IPTABLES. www.iptablesbr.cjb.net. by João Eriberto Mota Filho

FireWall no Linux FIREWALL COM IPTABLES. www.iptablesbr.cjb.net. by João Eriberto Mota Filho FireWall no Linux FIREWALL COM IPTABLES www.iptablesbr.cjb.net by João Eriberto Mota Filho Arquivo elaborado por LinuxClube.com http://www.linuxclube.com 1. ROTEAMENTO DINÂMICO Considerações iniciais O

Leia mais

Arquitectura de Redes

Arquitectura de Redes Arquitectura de Redes Network Address Translation NAT Arq. de Redes - Pedro Brandão - 2005/06 1 Objectivo / Motivação Escassez de endereços IPs Pequenas / médias empresas com ligação ADSL, cabo querem

Leia mais

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

Prática NAT/Proxy. Edgard Jamhour. Esses exercícios devem ser executados através do servidor de máquinas virtuais: espec.ppgia.pucpr. Prática NAT/Proxy Edgard Jamhour Exercícios práticos sobre NAT e Proxy, usando Linux. Esses exercícios devem ser executados através do servidor de máquinas virtuais:.ppgia.pucpr.br OBS. Esse roteiro utiliza

Leia mais

Instalação e Configuração de Servidores Linux Server Configuração de Rede. Prof. Alex Furtunato

Instalação e Configuração de Servidores Linux Server Configuração de Rede. Prof. Alex Furtunato Instalação e Configuração de Servidores Linux Server Configuração de Rede Prof. Alex Furtunato alex.furtunato@academico.ifrn.edu.br Roteiro Introdução Números IPs Interfaces de rede Interface de loopback

Leia mais

Orientador de Curso: Rodrigo Caetano Filgueira

Orientador de Curso: Rodrigo Caetano Filgueira Orientador de Curso: Rodrigo Caetano Filgueira Definição O Firewal é um programa que tem como objetivo proteger a máquina contra acessos indesejados, tráfego indesejado, proteger serviços que estejam rodando

Leia mais

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

Tipos de Firewalls. porta de origem/destino, endereço de origem/destino, estado da conexão, e outros parâmetros do pacote. IPTables Firewall: o que é? Qualquer máquina capaz de tomar decisões em relação ao tráfego de rede. Mecanismo que separa a rede interna e externa, objetivando aumentar o processo de segurança e controle

Leia mais

Levantamento de informação (Fingerprint)

Levantamento de informação (Fingerprint) Levantamento de informação (Fingerprint) Continuação... Prof. Pedro Filho Objetivos Mapear hosts ativos na rede Obter versões dos sistemas operacionais Entender aquisição de banners Identificar os serviços

Leia mais

Capítulo 4 TCP/IP FIREWALLS.

Capítulo 4 TCP/IP FIREWALLS. Capítulo 4 TCP/IP FIREWALLS. 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. GRS - Capitulo 4 1/1 Arquitecturas de redes

Leia mais

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

Introdução a Firewalls no Linux (Netfilter/Iptables) IntroduçãoaFirewallsnoLinux (Netfilter/Iptables) RicardoKléberMartinsGalvão www.ricardokleber.com.br ricardo.galvao@ifrn.edu.br RicardoKléber::IntroduçãoaFirewallsnoLinux RicardoKléber ProfessordoIFRN(SegurançadeRedes)

Leia mais

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

I Workshop do POP MG. Firewall IPTABLES. Fernando Resende Coelho frcoelho@pop mg.rnp.br Firewall IPTABLES Fernando Resende Coelho frcoelho@pop mg.rnp.br Sumário Conceitos Diagrama de fluxo Sintaxe Passo a passo Referências O que é um Firewall? Um firewall é uma barreira inteligente entre

Leia mais

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

Firewall Iptables. Professor: João Paulo de Brito Gonçalves. Campus - Cachoeiro Curso Técnico de Informática Firewall Iptables Professor: João Paulo de Brito Gonçalves Campus - Cachoeiro Curso Técnico de Informática Iptables -Introdução Os firewalls existem no Linux desde o kernel 1.1, com o ipfw, originário

Leia mais

Capítulo 5 Sumário. Formato das Mensagens ICMP. Tipos de Mensagens ICMP

Capítulo 5 Sumário. Formato das Mensagens ICMP. Tipos de Mensagens ICMP 1 Capítulo 5 Sumário Formato das Mensagens ICMP Tipos de Mensagens ICMP Solicitação de Eco / Resposta de Eco Destino Inatingível Tempo Esgotado (time-out) Source Quench Redirecionamento 2 Aplicação Telnet

Leia mais

Configuração de Rede

Configuração de Rede Configuração de Rede Introdução Quando uma interface de rede comum, que utiliza o padrão de rede Ethernet, é reconhecida no sistema (seja na inicialização ou acionando o módulo desta interface), o sistema

Leia mais

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

Firewall - IPTABLES. Conceitos e Prática. Tópicos em Sistemas de Computação 2014. Prof. Dr. Adriano Mauro Cansian adriano@acmesecurity. Firewall - IPTABLES Conceitos e Prática Tópicos em Sistemas de Computação 2014 Prof. Dr. Adriano Mauro Cansian adriano@acmesecurity.org Estagiário Docente: Vinícius Oliveira viniciusoliveira@acmesecurity.org

Leia mais

UTILIZANDO O FIREWALLD

UTILIZANDO O FIREWALLD UTILIZANDO O FIREWALLD 1 Índice O FIREWALL DO CENTOS... 3 Zonas...3 Listando as regras existentes...4 Liberando portas de entrada...4 Liberando um host ou uma rede...5 Configurando o firewalld para agir

Leia mais

Roitier Campos Gonçalves Goiânia, 18 de Novembro de Criando um Servidor Proxy/Firewall com Squid + IPTables!

Roitier Campos Gonçalves Goiânia, 18 de Novembro de Criando um Servidor Proxy/Firewall com Squid + IPTables! Roitier Campos Gonçalves Goiânia, 18 de Novembro de 2017 Criando um Servidor Proxy/Firewall com Squid + IPTables! Roteiro Introdução a Redes de Computadores e Internet - Arquitetura Cliente/Servidor e

Leia mais

Firewall iptables e criação de regras.

Firewall iptables e criação de regras. FIREWALL IPTABLES agosto/2015 Firewall iptables e criação de regras. 1 Introdução A palavra firewall é traduzida como parede de fogo ou parede anti-chamas. Esse termo é empregado há muito tempo em veículos

Leia mais

PRÁTICA. Endereçamento Privado NAT

PRÁTICA. Endereçamento Privado NAT PRÁTICA Endereçamento Privado NAT Cenário Fa0/1 Fa0/0 Fa0/0 Fa0/1 Configuração do Cenário Cliente A 1. Atribua o endereço IP 192.168.0.2/24 2. Defina o gateway default 192.168.0.1 Servidor B: 1. Atribua

Leia mais

Trabalhando com redes no Linux Debian Instalando aplicativos

Trabalhando com redes no Linux Debian Instalando aplicativos Trabalhando com redes no Linux Debian Instalando aplicativos O comando lspci exibe uma listagem de todos os dispositivos pci encontrados e que estejam com módulos ativos no sistema. É importante frisar

Leia mais

Classes de endereços IP - Os bits de endereços IP são reservados um para a classe de rede e os outros para computador (host).

Classes de endereços IP - Os bits de endereços IP são reservados um para a classe de rede e os outros para computador (host). Administração de redes Endereço IP Endereço IP - O endereço IP, na versão 4 (IPv4), é um número de 32 bits (IPV4), contendo 4 bytes (vale lembrar que 1 byte contém 8 bits), portanto 4 bytes contém 32 bits,

Leia mais

Professor Claudio Silva

Professor Claudio Silva Filtragem caso o pacote não seja permitido, ele é destruído caso seja permitido, ele é roteado para o destino Além das informações contidas nos pacotes o filtro sabe em que interface o pacote chegou e

Leia mais

Linux Essentials. Network Configuration

Linux Essentials. Network Configuration Linux Essentials Network Configuration Tópicos abordados: 4.4 Conectando o computador na rede Prof. Pedro Filho 1 Objetivo O objetivo deste curso é lhe fazer familiar com o sistema operacional Linux. Iniciaremos

Leia mais

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.

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. 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 Prática 1 Cenário: Na figura acima temos uma pequena rede, que

Leia mais

FIREWALL COM IPTABLES. www.eriberto.pro.br/iptables. by João Eriberto Mota Filho 3. TABELAS. Tabela Filter ESQUEMA DA TABELA FILTER

FIREWALL COM IPTABLES. www.eriberto.pro.br/iptables. by João Eriberto Mota Filho 3. TABELAS. Tabela Filter ESQUEMA DA TABELA FILTER FIREWALL COM IPTABLES www.eriberto.pro.br/iptables by João Eriberto Mota Filho 3. TABELAS Tabela Filter Vejamos o funcionamento da tabela filter (default) e as suas respectivas chains: ESQUEMA DA TABELA

Leia mais

Troubleshooting em rede básica

Troubleshooting em rede básica Troubleshooting em rede básica - 2 Sumário Capítulo 1 Troubleshooting em rede básica... 3 1.1. Objetivos... 3 1.2. Mãos a obra...4 Capítulo 2 Gerenciando... 14 2.1. Objetivos... 14 2.1. Troubleshooting...

Leia mais

Gerenciamento e interoperabilidade de redes Prof. João Henrique Kleinschmidt Prática Packet tracer Segurança: Firewall, ACLS e VPN

Gerenciamento e interoperabilidade de redes Prof. João Henrique Kleinschmidt Prática Packet tracer Segurança: Firewall, ACLS e VPN Gerenciamento e interoperabilidade de redes Prof. João Henrique Kleinschmidt Prática Packet tracer Segurança: Firewall, ACLS e VPN 1 Configuração de firewall em um servidor Configure a rede abaixo e teste

Leia mais

Administração dos serviços de redes utilizando linux

Administração dos serviços de redes utilizando linux Administração dos serviços de redes utilizando linux Joao Medeiros joao.fatern@gmail.com Objetivo Apresentar uma visão geral sobre os principais serviços de redes e a instalação e configuração de um servidor

Leia mais

Laboratório Usando Wireshark para Examinar Quadros Ethernet

Laboratório Usando Wireshark para Examinar Quadros Ethernet Topologia Objetivos Parte 1: Examinar os campos do cabeçalho de um quadro Ethernet II Parte 2: Usar o Wireshark para capturar e analisar quadros Ethernet Histórico/Cenário Quando os protocolos da camada

Leia mais

Flexible NetFlow que filtra com monitoramento de desempenho

Flexible NetFlow que filtra com monitoramento de desempenho Flexible NetFlow que filtra com monitoramento de desempenho Índice Introdução Pré-requisitos Requisitos Componentes Utilizados Configurar Diagrama da rede Configurações Verificar Troubleshooting Introdução

Leia mais

ENDEREÇAMENTO PRIVADO PROXY E NAT

ENDEREÇAMENTO PRIVADO PROXY E NAT ENDEREÇAMENTO PRIVADO PROXY E NAT MOTIVAÇÃO PARA O ENDEREÇAMENTO IP PRIVADO Crescimento do IPv4 07/2007 490 milhões de hosts 01/2008 542 milhões de hosts IPv4 permite endereçar 4 bilhões de hosts. PREVISÃO

Leia mais

Laboratório 1. Configurando as Interfaces de redes

Laboratório 1. Configurando as Interfaces de redes Durante este laboratório iremos configurar as duas interfaces de rede (eth0 e eth1) do servidor Ubuntu Server. A interface eth0 será configurada como interface de entrada da Internet e a eth1 será a interface

Leia mais

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.

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. Capítulo 4 TCP/IP FIREWALLS 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. Arquitecturas de redes com firewall Simples:

Leia mais

BIND 9 Instalação e configuração

BIND 9 Instalação e configuração BIND é um software de código aberto que implementa os protocolos para a Internet Domain Name System (DNS), sendo o software DNS mais amplamente utilizado na Internet, proporcionando uma plataforma robusta

Leia mais

Prof. Roitier Campos Gonçalves 1. Aula 02. Introdução aos Conceitos de Roteamento

Prof. Roitier Campos Gonçalves 1. Aula 02. Introdução aos Conceitos de Roteamento Prof. Roitier Campos Gonçalves 1 Aula 02 Introdução aos Conceitos de Roteamento Prof. Roitier Campos Gonçalves 2 Conceito Roteamento é a transferência de informação da origem até o destino através de uma

Leia mais

Laboratório 5. Configurando o Serviço DNS

Laboratório 5. Configurando o Serviço DNS Neste laboratório iremos falar sobre o serviço DNS (Domain Name System). O DNS é um sistema de gerenciamento de nomes hierárquico e distríbuido visando resolver nomes de domínio em endereços de rede IP.

Leia mais

Segurança de Redes de Computadores

Segurança de Redes de Computadores Segurança de Redes de Computadores Aula 8 Segurança nas Camadas de Rede, Transporte e Aplicação Firewall (Filtro de Pacotes) Prof. Ricardo M. Marcacini ricardo.marcacini@ufms.br Curso: Sistemas de Informação

Leia mais

Uso do iptables como ferramenta de firewall.

Uso do iptables como ferramenta de firewall. Uso do iptables como ferramenta de firewall. Rafael Rodrigues de Souza rafael@tinfo.zzn.com Administração em Redes Linux Universidade Federal de Lavra UFLA RESUMO O artigo pretende abordar o uso de firewalls

Leia mais

Firewall IPTables. Professor: Jiyan Yari

Firewall IPTables. Professor: Jiyan Yari Firewall IPTables Professor: Jiyan Yari Definição: - Firewall, no sentido original da palavra é conhecida como porta contra-fogo, ou seja, um dispositivo de segurança resistente ao fogo, utilizado nos

Leia mais

Disciplina: Segurança de Redes. Professor: Roitier Campos

Disciplina: Segurança de Redes. Professor: Roitier Campos Disciplina: Segurança de Redes Professor: Roitier Campos NMAP O Nmap ( Network Mapper ) é uma ferramenta de código aberto para exploração de rede e auditoria de segurança. Ela foi desenhada para escanear

Leia mais

Segurança de Redes. Firewall. Filipe Raulino filipe.raulino@ifrn.edu.br

Segurança de Redes. Firewall. Filipe Raulino filipe.raulino@ifrn.edu.br Segurança de Redes Firewall Filipe Raulino filipe.raulino@ifrn.edu.br Introdução! O firewall é uma combinação de hardware e software que isola a rede local de uma organização da internet; Com ele é possível

Leia mais

Configurar o acesso do telnet/ssh ao dispositivo com VRF

Configurar o acesso do telnet/ssh ao dispositivo com VRF Configurar o acesso do telnet/ssh ao dispositivo com VRF Índice Introdução Informações de Apoio Pré-requisitos Requisitos Componentes Utilizados Configurar Diagrama de Rede Configuração Verificar Troubleshooting

Leia mais

Firewall Iptables - Impasses

Firewall Iptables - Impasses Firewall Iptables - Impasses Prof. Andrei Carniel Universidade Tecnológica Federal do Paraná UTFPR E-mail: andreicarniel@utfpr.edu.br / andrei.carniel@gmail.com 2 Impasses Um dos principais motivos de

Leia mais

Acesse o terminal e execute o comando abaixo para realizar a instalação do BIND, também será instalado a sua documentação.

Acesse o terminal e execute o comando abaixo para realizar a instalação do BIND, também será instalado a sua documentação. BIND é um software de código aberto que implementa os protocolos para a Internet Domain Name System (DNS), sendo o software DNS mais amplamente utilizado na Internet, proporcionando uma plataforma robusta

Leia mais

Segurança com Iptables

Segurança com Iptables Universidade Federal de Lavras Departamento de Ciência da Computação Segurança com Iptables Alunos : Felipe Gutierrez e Ronan de Brito Mendes Lavras MG 11/2008 Sumário 1 - Introdução...1 2 Softwares de

Leia mais

Configuração de exemplo utsando o comando ip nat outside source static

Configuração de exemplo utsando o comando ip nat outside source static Configuração de exemplo utsando o comando ip nat outside source static Índice Introdução Pré-requisitos Requisitos Componentes Utilizados Configurar Diagrama de Rede Configurações Verificar Troubleshooting

Leia mais

Resumo P2. Internet e Arquitetura TCP/IP

Resumo P2. Internet e Arquitetura TCP/IP Resumo P2 Internet e Arquitetura TCP/IP Internet: Rede pública de comunicação de dados Controle descentralizado; Utiliza conjunto de protocolos TCP/IP como base para estrutura de comunicação e seus serviços

Leia mais

Pratica de Arquitetura DMZ. Cisco ASA 5505

Pratica de Arquitetura DMZ. Cisco ASA 5505 Pratica de Arquitetura DMZ Cisco ASA 5505 Cenário www.johnhouse.com Configuração Default config factory-default VLAN1: INSIDE Ethernet 0/1 até 0/7 NAT => 192.168.1.2 até 192.168.1.36 VLAN2: OUTSIDE Ethernet

Leia mais