Página 2 de 2 PrimeiroPrimeiro 12
+ Responder ao Tópico



  1. #21
    CRASH2k
    Visitante

    Padrão Policiamento FORWARD é drop, mas mesmo assim funciona tudo

    Posta a saída para

    iptables -nL FORWARD
    e
    iptables -t nat -nL


    Citação Postado originalmente por Anonymous
    esse script acima, apresenta o mesmo erro...
    não funciona.

    Grato

  2. #22
    CRASH2k
    Visitante

    Padrão Policiamento FORWARD é drop, mas mesmo assim funciona tudo

    Ops... já vi o erro no script anterior... muda o state do FORWARD

    iptables -A FORWARD -o $IF_INTERNA -m state --state ESTABLISHED,RELATED -j ACCEPT

    Isto deve resolver

    Citação Postado originalmente por Anonymous
    esse script acima, apresenta o mesmo erro...
    não funciona.

    Grato

  3. #23
    Visitante

    Padrão Policiamento FORWARD é drop, mas mesmo assim funciona tudo

    realmente funcionou...
    Mas CRASH2k, porque esse script não funcionou:
    Código :
    #!/bin/bash
    IF_EXTERNA="eth0"
    IF_INTERNA="eth1"
    REDE_INTERNA="172.0.0.0/24"
     
    echo "1"> /proc/sys/net/ipv4/ip_forward
     
    iptables -F
    iptables -Z
    iptables -X
    iptables -F -t nat
    iptables -X -t nat
    iptables -F -t mangle
    iptables -X -t mangle
     
    iptables -P FORWARD ACCEPT
    iptables -P INPUT ACCEPT
    iptables -P OUTPUT ACCEPT
     
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -i $IF_INTERNA -j ACCEPT
     
    iptables -A FORWARD -i $IF_INTERNA -p udp --dport 53 -j ACCEPT
    iptables -A FORWARD -i $IF_INTERNA -p tcp --dport 80 -j ACCEPT
     
    iptables -t nat -A POSTROUTING -s $REDE_INTERNA -j MASQUERADE

  4. #24

    Padrão firewall

    mesmo parecendo nao ter nada a ver, tenta mudar os ips de rede da sua maquina Linux pra uma das faixas.. esse sua faixa 172.0.0.0/24 nunca vi uso dela em redes locais pequenas...:
    use uma dessas:
    10.0.0.0/8
    172.16.0.0/16
    192.168.0.0/24

    use o script abaixo pra ver se funciona
    # variavies #
    IPT='/sbin/iptables'
    REDE='192.168.0.0/24'

    # Policiamento #
    $IPT -P INPUT DROP
    $IPT -P FORWARD DROP
    $IPT -P OUTPUT ACCEPT

    # abrir portas #
    $IPT -A INPUT -s $REDE -p tcp --dport 22 -j ACCEPT # exemplo se vc usa ssh
    $IPT -A FORWARD -s $REDE -p tcp --dport 80 -j ACCEPT
    $IPT -A FORWARD -s $REDE -p udp --dport 53 -j ACCEPT

    # regras para estado das conexoes #
    $IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    $IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

    # fazendo nat #
    $IPT -t nat -A POSTROUTING -s $REDE -j MASQUERADE

  5. #25
    Visitante

    Padrão Policiamento FORWARD é drop, mas mesmo assim funciona tudo

    Para ficar mais legivel

    Assim funcionou
    Código :
    #!/bin/bash
    IF_EXTERNA="eth0"
    IF_INTERNA="eth1"
    REDE_INTERNA="172.0.0.0/24"
     
    echo "1"> /proc/sys/net/ipv4/ip_forward
     
    iptables -F
    iptables -X
    iptables -F -t nat
    iptables -X -t nat
     
    iptables -P FORWARD DROP
    iptables -P INPUT DROP
    iptables -P OUTPUT ACCEPT
     
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A INPUT -i $IF_INTERNA -j ACCEPT
     
    #iptables -A FORWARD -i $IF_EXTERNA -m state --state NEW,INVALID -j DROP
    iptables -A FORWARD -o $IF_INTERNA -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A FORWARD -i $IF_INTERNA -p udp --dport 53 -j ACCEPT
    iptables -A FORWARD -i $IF_INTERNA -m multiport -p tcp --dport 80,443,8080,119,110,25 -j ACCEPT
     
    iptables -t nat -A POSTROUTING -s $REDE_INTERNA -j MASQUERADE



    Mas assim não funciona

    Código :
    #!/bin/bash
    IF_EXTERNA="eth0"
    IF_INTERNA="eth1"
    REDE_INTERNA="172.0.0.0/24"
     
    echo "1"> /proc/sys/net/ipv4/ip_forward
     
    iptables -F
    iptables -Z
    iptables -X
    iptables -F -t nat
    iptables -X -t nat
    iptables -F -t mangle
    iptables -X -t mangle
     
    iptables -P FORWARD ACCEPT
    iptables -P INPUT ACCEPT
    iptables -P OUTPUT ACCEPT
     
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -i $IF_INTERNA -j ACCEPT
     
    iptables -A FORWARD -i $IF_INTERNA -p udp --dport 53 -j ACCEPT
    iptables -A FORWARD -i $IF_INTERNA -p tcp --dport 80 -j ACCEPT
     
    iptables -t nat -A POSTROUTING -s $REDE_INTERNA -j MASQUERADE

    Alguém sabe o motivo ?
    Somente colocando esse -m state ... etc... vai funcionar ?

    Obrigado

  6. #26
    CRASH2k
    Visitante

    Padrão Policiamento FORWARD é drop, mas mesmo assim funciona tudo

    É que o "state" no FORWARD garante o retorno dos pacotes a sua rede local (desde que a conexão já esteja estabelecida ou reincidente). Da forma que estava vc só permitia no sentido "rede local -> internet", mas não tinha nada tratando o retorno.

    Citação Postado originalmente por Anonymous
    realmente funcionou...
    Mas CRASH2k, porque esse script não funcionou:
    Código :
    #!/bin/bash
    IF_EXTERNA="eth0"
    IF_INTERNA="eth1"
    REDE_INTERNA="172.0.0.0/24"
     
    echo "1"> /proc/sys/net/ipv4/ip_forward
     
    iptables -F
    iptables -Z
    iptables -X
    iptables -F -t nat
    iptables -X -t nat
    iptables -F -t mangle
    iptables -X -t mangle
     
    iptables -P FORWARD ACCEPT
    iptables -P INPUT ACCEPT
    iptables -P OUTPUT ACCEPT
     
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -i $IF_INTERNA -j ACCEPT
     
    iptables -A FORWARD -i $IF_INTERNA -p udp --dport 53 -j ACCEPT
    iptables -A FORWARD -i $IF_INTERNA -p tcp --dport 80 -j ACCEPT
     
    iptables -t nat -A POSTROUTING -s $REDE_INTERNA -j MASQUERADE

  7. #27
    Visitante

    Padrão Policiamento FORWARD é drop, mas mesmo assim funciona tudo

    então não tem como fazer isso, sem usar o -m state ?

  8. #28
    CRASH2k
    Visitante

    Padrão Policiamento FORWARD é drop, mas mesmo assim funciona tudo

    O negócio é que vc precisa tratar o retorno do pacote, e se vc usar um controle baseado em estados de conexão melhor ainda.

    Mas, poderia ter feito o retorno assim:

    iptables -A FORWARD -o $IF_INTERNA -m multiport -p tcp --sport 80,443,8080,110,25,119 -j ACCEPT
    iptables -A FORWARD -o $IF_INTERNA -p udp --sport 53 -j ACCEPT

    O negócio é o retorno. Só q trabalhar com um firewall stateful é mais seguro.

    Citação Postado originalmente por Anonymous
    então não tem como fazer isso, sem usar o -m state ?

  9. #29
    Visitante

    Padrão Policiamento FORWARD é drop, mas mesmo assim funciona tudo

    Entendi, quando eu troquei para sport, o meu primeiro script funcionou
    Vou procurar algo bom para ler sobre o iptables, excplicando como funciona o sport, e esse -m.

    Mas fica aqui, o meu Muito Obrigado a todos que me ajudaram

    :clap: :clap:

  10. #30
    Visitante

    Padrão Policiamento FORWARD é drop, mas mesmo assim funciona tudo

    ah, para complementar a porta 53 nem liberei e funcionou...
    Mas fechei a 80 para ver o que iria acontecer, e bloqueou perfeitamente.
    valeu

  11. #31
    Visitante

    Padrão Policiamento FORWARD é drop, mas mesmo assim funciona tudo

    O Negocio é verificar o estado da conexao mesmo porque com o meu script fiz uns testes e liberou tudo.

    Mas com estado está funcionando perfeitamente :clap: