+ Responder ao Tópico



  1. #1

    Padrão Squid + Iptables Redir (wierdo stuff)

    Bom , o problema eh o seguinte: o meu redir nao funciona de jeito nenhum quando vem da rede interna, ou seja, eh muito bizarro:


    10.94.1.5 - firewall (+proxy)
    192.168.1.7 - servidor web

    fw:~# tcpdump -i eth1 -n dst host 10.94.1.5 and dst port 80
    tcpdump: listening on eth1
    11:05:42.241464 192.168.1.236.4941 > 10.94.1.5.80: S 92569632:92569632(0) win 64240 <mss 1460,nop,nop,sackOK> (DF)
    11:05:45.227224 192.168.1.236.4941 > 10.94.1.5.80: S 92569632:92569632(0) win 64240 <mss 1460,nop,nop,sackOK> (DF)
    11:05:51.161680 192.168.1.236.4941 > 10.94.1.5.80: S 92569632:92569632(0) win 64240 <mss 1460,nop,nop,sackOK> (DF)

    3 packets received by filter
    0 packets dropped by kernel


    ou seja o pilantra nao me devolve nada... mas entretanto qdo eu vou pela internet.

    11:09:38.938007 200.217.88.20.61107 > 10.94.1.5.80: S 1600006107:1600006107(0) win 5840 <mss 1452,sackOK,timestamp 163698185 0,nop,wscale 0> (DF)
    11:09:39.159912 200.217.88.20.61107 > 10.94.1.5.80: . ack 784569905 win 5840 <nop,nop,timestamp 163698214 0> (DF)
    11:09:39.216678 200.217.88.20.61107 > 10.94.1.5.80: P 0:582(582) ack 1 win 5840 <nop,nop,timestamp 163698214 0> (DF)
    11:09:39.432384 200.217.88.20.61107 > 10.94.1.5.80: . ack 1 win 5840 <nop,nop,timestamp 163698243 0,nop,nop,sack sack 1 {218:219} > (DF)
    11:09:39.446260 200.217.88.20.61107 > 10.94.1.5.80: . ack 212 win 6432 <nop,nop,timestamp 163698243 1608818,nop,nop,sack sack 1 {218:219} > (DF)
    11:09:39.449906 200.217.88.20.61107 > 10.94.1.5.80: . ack 219 win 6432 <nop,nop,timestamp 163698243 1608818> (DF)
    11:09:39.463896 200.217.88.20.61107 > 10.94.1.5.80: F 582:582(0) ack 219 win 6432 <nop,nop,timestamp 163698244 1608818> (DF)


    eu tenho comunicacao.


    minha linha de iptables eh a seguinte:


    $IPTABLES -A FORWARD -d 192.168.1.7 -p tcp --dport 80 -j ACCEPT
    $IPTABLES -t nat -A PREROUTING -p tcp --dport 80 -d 10.94.1.5 -j DNAT --to 192.168.1.7


    meu firewall eh stateful e default policy de dropar.


    agora quando eu uso meu proxy eu gero o mesmo problema do redir de antes (se eu resolver o de cima, eu resolvo esse)


    # tcpdump -i lo -n

    11:11:57.434172 10.94.1.5.3858 > 10.94.1.5.80: S 2986185642:2986185642(0) win 32767 <mss 16396,sackOK,timestamp 320694592 0,nop,wscale 0> (DF)
    11:11:57.434206 10.94.1.5.80 > 10.94.1.5.3858: R 0:0(0) ack 2986185643 win 0 (DF)
    11:11:57.434963 10.94.1.5.3859 > 10.94.1.5.80: S 2985825885:2985825885(0) win 32767 <mss 16396,sackOK,timestamp 320694592 0,nop,wscale 0> (DF)
    11:11:57.434987 10.94.1.5.80 > 10.94.1.5.3859: R 0:0(0) ack 2985825886 win 0 (DF)
    11:11:57.435514 10.94.1.5.3860 > 10.94.1.5.80: S 2987901856:2987901856(0) win 32767 <mss 16396,sackOK,timestamp 320694592 0,nop,wscale 0> (DF)
    11:11:57.435562 10.94.1.5.80 > 10.94.1.5.3860: R 0:0(0) ack 2987901857 win 0 (DF)

    ele tentando se comunicar com ele mesmo (jah que o dns em questao do meu www resolve para ele) o proxy resolve e tenta falar com ele, logo eu tenho um problema pois ele nao me faz o redir.


    # telnet 10.94.1.5 80
    Trying 10.94.1.5...
    telnet: Unable to connect to remote host: Connection refused



    Cruel, se alguem tiver alguma luz me de um toque porque eu ainda nao consegui resolver esse pepino, esse me aconteceu depois que eu tive que colocar a seguinte diretiva no meu proxy:

    httpd_accel_uses_host_header on

    pois se eu nao por ela eu nao consiguo acessar o sites internos da rede que eu presciso (outra rede nao a minha, mas nao a internet)

  2. #2
    Xlab
    Visitante

    Padrão Squid + Iptables Redir (wierdo stuff)

    Ola mistymst, eh o seguinte posta sua regra do iptables para o redirecionamento do squid pra mim, pois eh possivel que o problema esteja la. Eu particulamente nao faco DNAT com o iptables prefiro fazer com o xinetd, alem de ser mais seguro a performance eh melhor pelo o fato que o proprio xinetd executar o daemon(como o httpd por exemplo).

    Aguardo.

  3. #3

    Padrão Squid + Iptables Redir (wierdo stuff)

    Hehe amigo voce nao entendeu meu proxy nao eh transparente e eu nao faco redir para ele.

    esse DNAT que eu fiz nao eh para o squid e sim para um servidor de web dentro da intranet.

    entretanto eu consigui resolver, nao da maneira que eu queria, resolver esse problema, pois o mesmo problema continua acontecendo, mas eu fiz um workaround que ta quebrando um galho.

    agora o redir de portas do xinetd se eu nao me engano eh para a mesma maquina ou eles faz port forwarding ??? pelo que eu me lembre ele so faz redir e tem que ter algum daemon rodando.

  4. #4
    Xlab
    Visitante

    Padrão Squid + Iptables Redir (wierdo stuff)

    Citação Postado originalmente por mistymst
    Hehe amigo voce nao entendeu meu proxy nao eh transparente e eu nao faco redir para ele.

    esse DNAT que eu fiz nao eh para o squid e sim para um servidor de web dentro da intranet.

    entretanto eu consigui resolver, nao da maneira que eu queria, resolver esse problema, pois o mesmo problema continua acontecendo, mas eu fiz um workaround que ta quebrando um galho.

    agora o redir de portas do xinetd se eu nao me engano eh para a mesma maquina ou eles faz port forwarding ??? pelo que eu me lembre ele so faz redir e tem que ter algum daemon rodando.

    Ok, eu pensei que seu redirecionamento nao estava funcionando por cuasa do squid, pois nega um trafego http vindo da mesma maquina, o que poderia ta causando esse problema. Por exemplo

    iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128

    Nessa caso seu eu possuir um servidor web na mesma maquina o squid me mostrar acesso negado quando eu acessar tentar acessar o meu servidor web. Nesse caso espefico poderiamos colocar um execao tipo:

    -d ! IP_DO_SERVIDOR_WEB

    Ja sobre o xinetd eh isso mesmo ele tem que ter um daemon rodando, colocando "redirect = 192.168.0.1" qualquer tentativa de conexao com o dominio suposto como foo.bar.net sera direcionado para o ip em ridirect. Uso isso muito quando os meus usuarios tentam usar o sshd, quando eles tentam logar no meu domino eles sao redirecionado para outra servidor interno dentro da minha rede.

    falow