domingo, 27 de novembro de 2016

Iptables no Debian Linux - Configuração Básica

Firewall Iptables Debian Téchne Digitus


Configurando o Firewall Iptables em um Debian Linux

Firewall Iptables Debian Téchne Digitus

Configurações Básicas


Você acaba de instalar um sistema Debian moderno. Por padrão ele vem com o Iptables instalado, ativo e liberando qualquer tráfego!

As linhas a seguir irão demonstrar de forma simples e rápida em como implementar uma política básica de segurança em seu firewall iptables local. 

  1. Verifique as regras atuais
    >
    iptables -L
  2. Como usuário privilegiado, verifique e instale dois pacotes importantes
    >
    apt-get install vim iptables-persistent
  3. Crie um arquivo para testarmos as novas regras, então copie e cole o modelo abaixo:
    >
    editor /etc/iptables.test.rules
    
    *filter
    
    # Permite todo tráfego para a interface loopback (lo0) e descarta todo tráfego para 127/8 que não utilize lo0
    -A INPUT -i lo -j ACCEPT
    -A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT
    
    
    # Permite a saída de todo tráfego iniciado por seu host
    -A OUTPUT -j ACCEPT
    # Aceita entrada de todas as conexões previamente iniciadas por seu host -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # Descomente as duas linhas abaixo para permitir tráfego HTTP e HTTPS a partir de qualquer origem #-A INPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT #-A INPUT -p tcp -m state --state NEW --dport 443 -j ACCEPT # Descomente a linha abaixo para liberar tráfego SSH a partir de qualquer origem na porta default #-A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT # Permitir somente ping via entrada de ICMP - importante para fins de gerência e testes #-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT # Descomente a linha abaixo para logar eventos de tráfego negado (dmesg) #-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7 # Rejeita qualquer outro tipo de tráfego não explicitamente liberado nas configurações acima -A INPUT -j REJECT -A FORWARD -j REJECT COMMIT
  4. Ative as regras recém criadas
    >
    iptables-restore < /etc/iptables.test.rules
  5. Cheque as regras que foram aplicadas
    >
    iptables -L
  6. Estando tudo ok, salve as regras no arquivo mestre do iptables
    >
    iptables-save > /etc/iptables.up.rules
  7. Para garantir que as novas regras serã usadas, crie o arquivo iptables no diretórios /etc/network/if-pre-up.d/iptables e copie e cole as linhas abaixo

    >
    editor /etc/network/if-pre-up.d/iptables
     #!/bin/sh
     /sbin/iptables-restore < /etc/iptables.up.rules
  8.  Permita que esse arquivo possa ser executado
    >
    chmod +x /etc/network/if-pre-up.d/iptables

E pronto! Seu Debian está com o Iptables configurado!