Página 1 de 2 12 ÚltimoÚltimo
+ Responder ao Tópico



  1. Pessoal estuou com uma dúvida cruel, sou iniciante em firewall iptables, ao setar a política pradão do firewall, as chains todas como DROP nada passa, até aí tudo bem.

    Aí depois eu configura assim:

    IPTABLES -A INPUT -i lo -s 127.0.0.1/8 -d 127.0.0.1/8 -j ACCEPT
    IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

    IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
    IPTABLES -A FORWARD -i eth1 -s 192.168.0.0/24 -o eth0 -j ACCEPT

    se eu tirar umas dessas regras não navego na internet mas com essas regras observei que passa tudo configurei outlook e funciona.

    Pergunta como faço para setar as políticas como DROP e liberar só portas necessárias e funcionar realmente o que liberei tipo porta 80 25 e 110?

  2. cara...

    parabéns por estar começando a usar o iptables..

    vou te dar uma grande ajuda no seu aprendizado

    Guia Foca GNU/Linux - Firewall iptables

    mas indo direto ao ponto, para você liberar portas específicas, você precisa discriminálas nas regras de FORWARD..

    valeu



  3. #3
    wrochal
    Caro,

    Veja abaixo o exemplo que uso é simples e funcionar:

    Código :
    #!/bin/bash
    # Firewall desenvolvido por William da Rocha Lima
    # qualquer dúvida envie e-mail para wrochal@linuxit.com.br
    # Sobre a Licença GPL
    # Data: 22/02/2006
     
     
    # Programas
    IPT=/sbin/iptables
    MODP=/sbin/modprobe
     
    # Configuracao Rede
    IFWAN=eth0
    IFLAN=eth1
    IPWAN=200.X.123.X
    LAN=192.168.5.0/24
    IFINT=192.168.5.0/24
    ANY=0/0
     
    # Servidor de Terminal Service
    SERVER=192.168.5.43
     
    # IPS Liberados para NET
    IPS_ALLOW="192.168.5.1 192.168.5.2 192.168.5.43 192.168.5.56 192.168.5.196 192.168.5.63"
     
    # Portas LIBERADAS (INPUT TCP/UDP)
    INPUT_TCP="53 22 80 9022 20 21 3456 3389 3390 1723"
    INPUT_UDP="53 67 80"
     
    # PORTAS LIBERADAS (FORWARD)
    FORWARD_TCP="20 22 21 25 47 53 80 110 143 1723 1863 3422 3456 3389 3390 3391 3392 3393 443 9022 9023 5800 5900"
    FORWARD_UDP="20 22 21 25 47 53 80 110 143 1723 1863 3456"
     
    # MODULOS A CARREGAR
    for module in ip_tables ipt_REDIRECT ipt_MASQUERADE ipt_MARK ipt_REJECT \
            ipt_TOS ipt_LOG iptable_mangle iptable_filter iptable_nat ip_nat_ftp \
            ip_conntrack ip_conntrack_ftp ip_conntrack_irc \
            ip_nat_irc ipt_mac ipt_state ipt_mark; do
            $MODP $module
    done
     
    # ATIVANDO MASCARAMENTO NO KERNEL
    echo 1 > /proc/sys/net/ipv4/ip_forward
     
    # Protecao de ICMP e Spoofing
    echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
    echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
     
    # Inicio das Regras
    echo -n "Iniciando o Firewall   "
     
    # Limpando as Regras
    echo -n "Limpando as Regras	" 
    $IPT -F
    $IPT -Z
    $IPT -X
    $IPT -t nat -F
    $IPT -t nat -X
    $IPT -t nat -Z
    echo -n "Ativando Compartilhamento	"
    # Compartilhamento
    $IPT -t nat -A POSTROUTING -s 192.168.5.0/24 -d $ANY -p ALL -o $IFWAN -j MASQUERADE
     
    echo -n "Configurando Chain INPUT"
    # LoopBack Livre
    $IPT -A INPUT -i lo -s 0/0 -d 0/0 -j ACCEPT
    $IPT -A OUTPUT -o lo -s 0/0 -d 0/0 -j ACCEPT
    $IPT -A INPUT -i $IFLAN -m state --state NEW -j ACCEPT
    $IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
     
    # INPUT LIBERADAS
    for servico in $INPUT_TCP; do
      $IPT -A INPUT -p tcp --dport $servico -j ACCEPT
    done
     
    for servico in $INPUT_UDP; do
      $IPT -A INPUT -p udp --dport $servico -j ACCEPT
    done
     
    echo -n "Configurando Chain FORWARD"
    # Estacao para Internet
    for FORWARD in $FORWARD_TCP; do
      $IPT -A FORWARD -p tcp --dport $FORWARD -j ACCEPT
    done
     
    for FORWARD in $FORWARD_UDP; do
      $IPT -A FORWARD -p udp --dport $FORWARD -j ACCEPT
    done
     
    # Liberando Suporte
    for ALLOW_FORWARDS in $IPS_ALLOW; do
    $IPT -A FORWARD -s $ALLOW_FORWARDS -j ACCEPT
    done
     
    # Bloqueando o Resto
     
    echo -n "Configurando Prioridades de Pacotes"
     
    # Priorizando os Liberados
     
    for OUTPUT in $IPS_ALLOW; do
      $IPT -t mangle -A OUTPUT -s $OUTPUT -o $IFWAN -p tcp --dport 0:65535 -j TOS --set-tos 16
      $IPT -t mangle -A OUTPUT -s $OUTPUT -o $IFWAN -p udp --dport 0:65535 -j TOS --set-tos 16
    done
     
    # Prioridade ALTA RDP
    $IPT -t mangle -A OUTPUT -o $IFWAN -p tcp --dport 3389:3390 -j TOS --set-tos 16
    $IPT -t mangle -A PREROUTING -i $IFLAN -p tcp --sport 3389:3390 -j TOS --set-tos 0x10
     
    # Entrada
    $IPT -t mangle -A PREROUTING -i $IFLAN -p udp --sport 0:65535 -j TOS --set-tos 0x00
    $IPT -t mangle -A PREROUTING -i $IFLAN -p tcp --sport 0:65535 -j TOS --set-tos 0x00
     
    # SAIDA
    $IPT -t mangle -A OUTPUT -o $IFWAN -p tcp --dport 10:65535 -j TOS --set-tos 0x00
    $IPT -t mangle -A OUTPUT -o $IFWAN -p udp --dport 10:65535 -j TOS --set-tos 0x00
     
     
    echo -n "Configurando Redirecionamento de Portas"
    # Redirecionamento do Proxy
    $IPT -t nat -A PREROUTING -i $IFLAN -p tcp --dport 80 -j REDIRECT --to-port 3128
     
    # Servidor RDP
    $IPT -t nat -A PREROUTING -d $IPWAN -p tcp --dport 3389 -j DNAT --to-destination 192.168.5.43
    $IPT -t nat -A PREROUTING -d $IPWAN -p tcp --dport 9009 -j DNAT --to-destination 192.168.5.196
    $IPT -t nat -A PREROUTING -d $IPWAN -p tcp --dport 21 -j DNAT --to-destination 192.168.5.1:21
    $IPT -t nat -A PREROUTING -d $IPWAN -p tcp --dport 20 -j DNAT --to-destination 192.168.5.1:20
    $IPT -t nat -A PREROUTING -d $IPWAN -p tcp --dport 80 -j DNAT --to-destination 192.168.5.2
    $IPT -t nat -A PREROUTING -d $IPWAN -p tcp --dport 80 -j DNAT --to-destination 192.168.5.1
     
    echo -n "Ativando Segurança"
     
    # Bloqueando PINGS, Spoofings
    $IPT -A INPUT -p icmp --icmp-type time-exceeded -j DROP
    $IPT -A FORWARD -p icmp --icmp-type time-exceeded -j DROP
     
    # Fechando o RESTO
    $IPT -A INPUT -i $IFWAN -j DROP
    $IPT -A FORWARD -s $LAN -j DROP
     
    echo "                  [  OK  ]"

  4. # Limpando as regras existentes
    iptables -F
    iptables -X
    iptables -t nat -F
    iptables -t nat -X

    # Política de acesso
    iptables -P INPUT DROP
    iptables -P FORWARD DROP
    iptables -P OUTPUT ACCEPT

    # Permissões de acesso ao firewall
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

    # Abrindo algumas portas
    iptables -A INPUT -p tcp --dport 22 -j ACCEPT


    E por ai vai !!!


    Abraçao



  5. Olá amigo aqui vai um exemplo simples do que você pode fazer!
    Ai você pode ir melhorando as regras!!

    # interfaces
    lan_if="eth1"
    internet_if="eth0"

    # setando as politicas padrão do iptables
    iptables -P INPUT DROP
    iptables -P FORWARD DROP
    iptables -P OUTPUT ACCEPT

    # colocando algumas regras para a chain input
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A INPUT -p tcp --dport 80 -j ACCEPT
    iptables -A INPUT -s 200.200.200.200 -p tcp --dport 22 -j ACCEPT # para liberar ssh para um host especifico

    # Verificando se o arquivo existe e habilitando encaminhamento de pacotes
    if [ -e /proc/sys/net/ipv4/ip_forward ]
    then
    echo "1" > /proc/sys/net/ipv4/ip_forward
    fi

    # Agora você pode liberar os serviços que você queira

    # Essa regra permite que somente conexões estabelecidas/relacionadas por hosts de dentro da sua rede passem pela chain FORWARD!
    iptables -t FORWARD -i $internet_if -o $lan_if -m state --state ESTABLISHED,RELATED -j ACCEPT

    # Portas/serviços liberados para sua lan
    iptables -t FORWARD -i $lan_if -o $internet_if -p tcp --dport 25 -j ACCEPT
    iptables -t FORWARD -i $lan_if -o $internet_if -p tcp --dport 110 -j ACCEPT
    iptables -t FORWARD -i $lan_if -o $internet_if -p tcp --dport 443 -j ACCEPT
    iptables -t FORWARD -i $lan_if -o $internet_if -p tcp --dport 80 -j ACCEPT
    iptables -t FORWARD -i $lan_if -o $internet_if -p tcp --dport 995 -j ACCEPT

    # habilitando nat na interface $internet_if
    iptables -t nat -A POSTROUTING -o $internet_if -j MASQUERADE # Fazendo nat na interface de internet

    Bom com isso ai você vai liberar somente as portas especificadas na chain FORWARD para a internet! Com isso ai você pode ter um controle legal!
    Mas se você não quer controlar todas as portas da para fazer a seguinte regra:

    iptables -t FORWARD -i $lan_if -o $internet_if -j ACCEPT

    Bom, ai você pode mexer bastante!

    Até!!

    André






Tópicos Similares

  1. IPTables - Problema com politica padrão DROP
    Por NightMareCBA no fórum Servidores de Rede
    Respostas: 2
    Último Post: 25-03-2009, 09:34
  2. Dica em IPtable
    Por Atos_Network no fórum Servidores de Rede
    Respostas: 22
    Último Post: 07-05-2004, 14:11
  3. Dois links internet - Continuação de Dica em IPTable
    Por Atos_Network no fórum Servidores de Rede
    Respostas: 1
    Último Post: 06-05-2004, 12:07
  4. Politica padrao da tabela NAT..
    Por no fórum Servidores de Rede
    Respostas: 1
    Último Post: 29-04-2003, 16:30
  5. Dúvida em IPTABLES...
    Por soyeu no fórum Servidores de Rede
    Respostas: 2
    Último Post: 28-11-2002, 14:41

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L