+ Responder ao Tópico



  1. #1

    Padrão Problema com Redirect + proxy

    Pessoal,

    estou com um problema e não sei como resolver o mesmo.
    Meu iptables está com ip válido exemplo no firewall 200.300.400.500 e o gateway é 10.11.10.1 o meu dns esta em 10.11.10.3. Quando eu deixo como drop o FORWARD não consigo mais navegar.
    Como arrumar isso.
    Veja bem: Saindo requisicao de 200.300.400.500 com destino a porta 80
    sendo que o DNS esta em 10.11.10.3. e o PROXY ?

    # Limpando as Regras
    $IPT -t filter -F
    $IPT -t filter -X
    $IPT -t nat -F
    $IPT -t nat -X
    $IPT -t mangle -F
    $IPT -t mangle -X

    # Politica
    $IPT -t filter -P INPUT DROP
    $IPT -t filter -P FORWARD DROP
    $IPT -t filter -P OUTPUT ACCEPT
    $IPT -t nat -P PREROUTING ACCEPT
    $IPT -t nat -P POSTROUTING ACCEPT
    $IPT -t nat -P OUTPUT ACCEPT

    # Liberando Loopback
    $IPT -t filter -A INPUT -i lo -j ACCEPT
    $IPT -t filter -A INPUT -s $LAN_RANGE -j ACCEPT

    # Compartilhando a Conexao
    echo 1 > /proc/sys/net/ipv4/ip_forward
    $IPT -t nat -A POSTROUTING -o $NET_IFACE -j MASQUERADE

    $IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

    # Estabelecidas / Reincidentes / Invalid
    $IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
    $IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    $IPT -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    $IPT -A INPUT -m state --state INVALID -j DROP
    $IPT -A FORWARD -m state --state INVALID -j DROP
    $IPT -A INPUT -m state --state UNTRACKED -j DROP
    $IPT -A FORWARD -m state --state UNTRACKED -j DROP

    # Roteia DNS
    $IPT -t nat -A PREROUTING -t nat -p tcp -d 200.300.400.500 --dport 53 -j DNAT --to 10.11.10.3
    $IPT -t nat -A PREROUTING -t nat -p udp -d 200.300.400.500 --dport 53 -j DNAT --to 10.11.10.3
    $IPT -t nat -A PREROUTING -t nat -p tcp -d 200.300.400.500 --dport 953 -j DNAT --to 10.11.10.3
    $IPT -t nat -A PREROUTING -t nat -p udp -d 200.300.400.500 --dport 953 -j DNAT --to 10.11.10.3

    # Repassando solicitacoes ao Apache
    $IPT -t nat -A PREROUTING -p tcp -i eth0 -d 200.300.400.500 --dport 80 -j DNAT --to-destination 10.11.10.3
    $IPT -A FORWARD -p udp -i eth0 --dport 80 -d 10.11.10.3 -j ACCEPT
    $IPT -A FORWARD -p tcp -i eth0 --dport 80 -d 10.11.10.3 -j ACCEPT

    # Ativar o mascaramento (nat).
    $IPT -t nat -A POSTROUTING -d 0/0 -j MASQUERADE
    $IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

    # Ativando Proxy
    $IPT -t nat -A PREROUTING -p tcp --dport 80 -i eth1 -s $LAN_RANGE -j REDIRECT --to-port 3128

  2. #2

    Padrão Re: Problema com Redirect + proxy

    isso é porque voce nao tem nenhuma regra como:

    iptables -A FORWARD -s 10.11.10.0/24 -p tcp --dport 80 -j ACCEPT

    é por isso que o transparente nao funciona, voce so ta liberando a conexao na porta 80 tcp/udp (sendo que udp é desnecessario) para o ip do proxy. no transparante ele conecta (ele pensa que...) diretamente na internet ai seu fw nao deixa passar. easy essa

    ahh gostei do exemplo do ip do fw .. 200.300 .. (maldade com o octeto, "estambalhaste o brinquedo" do octecto hehe)

  3. #3

    Padrão Re: Problema com Redirect + proxy

    Quanto ao octeto é porque um dia eu coloquei como ex. 200.201.202.203 e um cara mi mando uma MP, para não colocar o IP da minha rede kkkkkk.

    Bom, mais duvidas.


    Eu tinha add antes de ler a sua resposta ao Forum, so que mesmo assim não está navegando.
    O que eu fiz

    iptables -A FORWARD -s $LAN_RANGE -j ACCEPT

    só que assim fica muito aberto. Ou seja, todo mundo vai poder fazer a festa na rede sendo oposto do que o dono quer.

    A ordem em que eu deixei as regras está certo ao seu modo de ver ?


    De qualquer forma, obrigado pela resposta.



  4. #4

    Padrão Re: Problema com Redirect + proxy

    Sim as regras estao ok

    bom nao fica aberto nao se voce especificar que so vai deixar passar a 80 nessa parte do FORWARD...e porque nao navega? onde para exatamente? na resolucao de nomes? no request? a ideia de por aberto no forward para a lan era para ver se funciona porque vem ou mal, nao existe muita diferenca entre por:

    iptables -P FORWARD ACCEPT
    e por
    iptables -P FORWARD DROP
    iptables -A FORWARD -s $LAN_RANGE -j ACCEPT


    Bom entretanto RELENDO suas regras, o seu proxy nao esta na mesma maquina que o firewall né? tem que fazer um DNAT para lá entao. e um REDIRECT na maquina do proxy, sacou?
    -j REDIRECT so redireciona as portas internamente, essas eh uma das grandes diferentes entre port forwarding e redirectors.

    Verifica isso e da um retorno

  5. #5

    Padrão Re: Problema com Redirect + proxy

    Esta sim,

    O firewall está com o proxy ou seja 10.11.10.1

    e o Dns + qmail estao na 10.11.10.3


    quando eu especifico --dport 80 ele num vai. Fica processando e não vai.
    Agora quando eu nao informo a porta so falo que é ACCEPT navega e passa pelo squid, porque o log esta correndo.



  6. #6

    Padrão Re: Problema com Redirect + proxy - RESOLVIDO

    Bom, seguinte.

    Depois de insistentes tentativas sem obter exito. Um colega meu mi deu uma luz.

    Seguinte.

    Estão certas as regras POREM, esta faltando mandar liberar a porta do proxy 3128 na qual ocorre o redirecionamento.

    portanto

    iptables -A FORWARD -s $LAN_RANGE -i eth1 -o eth0 -p tcp --dport 3128 -j ACCEPT



    Só que agora eu li uma coisa.
    Não é necessário usar com o IP FIXO o MASQUERADE.

    Então quero ver agora as outras opções.

    Abraço a -> mistymst e a quem estiver lendo esse tópico.


  7. #7

    Padrão Re: Problema com Redirect + proxy

    Spyder, boa noite. Eu também passei por isso. Quando instalei o meu primeiro servidor para internet na empresa, no nosso ip fixo, e aproveitando as regras de firewall, que foram instalados por terceiros, na época, funcionou legal. Depois adquirimos uma outra ADSL de ip dinâmico e aproveitei o mesmo script de firewall e não funcionou. Aí executei o comando man iptables. Lá fala claramente que em IP Dinâmico o parâmetro MASQUERADE é o correto e não é para IP Fixo. No IP Fixo, tem que fazer um SNAT. Depois disso, graças a Deus sempre deu certo.
    Um grande abraço e fique com Deus ..... 8-)

  8. #8

    Padrão Re: Problema com Redirect + proxy - RESOLVIDO

    Citação Postado originalmente por spyderlinux

    iptables -A FORWARD -s $LAN_RANGE -i eth1 -o eth0 -p tcp --dport 3128 -j ACCEPT
    Tipo, essa regra nao era para ser necessaria sabe? porque a tua requisicao nao deveria passar pela 3128, esta rolando so input nela e quem faz o resto é o proxy, inclusive porque tu ta usando o modulo de tracking (state related/established) entao ele liberaria as portas necessarias para o resto da comunicacao, bom entretanto se funcionou nada mal, mas mesmo assim ainda é "estranho", nao tenho essa regra aqui
    so relendo as regras denovo parece que faltou liberar o input na 3128, mas posso ter passado por ela e nao ter visto... ao inves da tua forward tenta abrir o input para a tua lan:

    iptables -A INPUT -s $LAN_REDE -i ethX -p tcp --dport 3128 -j ACCEPT

    ai testa

    quanto ao lance do MASQUERADE / SNAT é verdade isso, no SNAT voce realmente especifica o IP e no MASQUERADE ele vai atras do IP que sera "NATeado" (neologismo eh legal hehe) para voce, mas nao necessariamente que voce precise usar SNAT quando tiver IP estatico e MASQUERADE quanto tiver IP dinamico.

    deu para entender +-?