+ Responder ao Tópico



  1. #1

    Padrão Lusca + Tproxy + wccpv2, quase lá!

    Boa tarde a todos do forum. Recentemente postei um tópico, e obtive uma grande ajuda na configuração do wccp em um cisco 2801. Estou indo agora a solução do tproxy, juntamente com o wccp. Segue a configuração utilizada, espero que os amigos ajudem pois ainda não funcionou, no momento que o Cisco reconhece o proxy pelo wccp, a navegação para de funcionar. O sistema usado foi o Fedora 11 Kernel 2.6.30, já com suporte ao Tproxy. No Cisco:

    Código :
     
    ip subnet-zero
    ip wccp 80
    ip wccp 90
    ip cef
    !
    !
    no ip dhcp use vrf connected
    !
    !
    !
    !
    !
    !
    interface FastEthernet0/0 (Clientes)
     ip address 189.xxx.xxx.97 255.255.255.248
     ip wccp 80 redirect in
     ip wccp 90 redirect out
     duplex auto
     speed auto
    !
    interface FastEthernet0/1 (Proxy)
     ip address 189.xxx.xxx.105 255.255.255.252
    ip wccp redirect exclude in
     duplex auto
     speed auto
    !
    interface Serial0/1/0
     ip address 200.xxx.xxx.126 255.255.255.252
     ip wccp 80 redirect in
     ip wccp 90 redirect out
     encapsulation ppp
    !
    interface Serial0/1/1
     no ip address
     shutdown
     clockrate 2000000
    !
    interface Serial0/3/0
     no ip address
     shutdown
     clockrate 2000000
    !
    interface Serial0/3/1
     no ip address
     shutdown
     clockrate 2000000
    !

    No squid.conf, usando o Lusca, ultima versão no site:

    Código :
     
    wccp2_router 189.xxx.xxx.105 
    http_port 3129 tproxy wccp2_service dynamic 80 wccp2_service_info 80 protocol=tcp lags=src_ip_hash priority=240 ports=80 
    wccp2_service dynamic 90 wccp2_service_info 90 protocol=tcp flags=dst_ip_hash,ports_source priority=240 ports=80

    Tentei utilizar:

    Código :
    wccp2_forwarding_method gre 
    wccp2_return_method gre 
    wccp2_forwarding_method 2 
    wccp2_return_method 2

    Na versão do Lusca que utilizei estes parametros deram erro. Aqui fica uma de minhas dúvidas, que tipo de configuração deve ser usada? Minhas regras de iptables foram:

    Código :
     
    iptables -t mangle -N DIVERT iptables -t mangle -A DIVERT -j MARK --set-mark 1 iptables -t mangle -A DIVERT -j ACCEPT
     
    iptables -t mangle -A PREROUTING -p tcp -m socket -j DIVERT
     
    iptables -t mangle -A PREROUTING -p tcp --dport 80 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 3129 
     
    ip rule add fwmark 1 lookup 100 
     
    ip route add local 0.0.0.0/0 dev lo table 100
     
     echo 0 > /proc/sys/net/ipv4/conf/lo/rp_filter echo 1 > /proc/sys/net/ipv4/ip_forward


    Tentei com o tunel Gre e sem o tunel. Aparentemente está faltando alguma regra, pois vejo evolução nos contadores de pacotes do wccp do cisco. Grato pela ajuda.
    Última edição por Josue Guedes; 14-03-2010 às 17:06.

  2. #2

    Padrão

    os services voce deve informa-los em apenas 1 interface, recomendo na interface com os clientes..

    por exemplo.. o service 80 tem como base o ip source, ja o 90 tem o dest_ip ...

    eu voltarei a testar o tproxy com wccp em breve !!

    abraço

  3. #3

    Padrão

    Bom dia Alexandre, farei novos testes aqui hoje, mudarei no Cisco segundo você sugeriu. Você utiliza como em sua rede para ter o spoofing de ip´s nos clientes?

  4. #4

    Padrão

    me parece que as ultimas versoes do kernel estao com problemas no tproxy..

    use a versao 2.6.31 !!

  5. #5

    Padrão

    Mudei no Cisco aqui, os serviçoes de redirect estão agora só na interface dos clientes. Mudei umas configurações no squid.conf também:

    Código :
     
    wccp2_router 189.xxx.xxx.105
    wccp_version 2
    wccp2_rebuild_wait on
    wccp2_fowarding_method 1
    wccp2_return_method 1
    wccp2_assigment_method 1
    wccp2_service dynamic 80
    wccp2_service dynamic 90
    wccp2_service_info 80 protocol=tcp flags=src_ip_hash priority=240 ports=80
    wccp2_service_info 90 protocol=tcp flags=dst_ip_hash,ports_source priority=240 ports=80

    Notei um erro no cache.log:

    Código :
     
    comm_fdopen6: FD 12: TPROXY comm_ips_bind_lcl() failed? Why?

    Alexandre esse erro ai seria algo relacionado a compilação do Lusca?

    Grato pela ajuda.

  6. #6

    Padrão

    Citação Postado originalmente por alexandrecorrea Ver Post
    me parece que as ultimas versoes do kernel estao com problemas no tproxy..

    use a versao 2.6.31 !!
    Segundo um tuto no site oficial do Squid, a versão 2.6.32 também tem problemas.

  7. #7

    Padrão

    qual a versao do lusca ?

    ja tentou usar a versao do svn ??

    svn checkout http://lusca-cache.googlecode.com/svn/branches/LUSCA_HEAD/

    dps entra no LUSCA_HEAD e executa?

    sh bootstrap.sh

    e roda o configure.. make.. make install.. novamente !!

    acredito que com a versao do svn vá funcionar

  8. #8

    Padrão

    Citação Postado originalmente por alexandrecorrea Ver Post
    qual a versao do lusca ?

    ja tentou usar a versao do svn ??

    svn checkout http://lusca-cache.googlecode.com/svn/branches/LUSCA_HEAD/

    dps entra no LUSCA_HEAD e executa?

    sh bootstrap.sh

    e roda o configure.. make.. make install.. novamente !!

    acredito que com a versao do svn vá funcionar
    Boa noite Alexandre, a versão aqui foi a R14448, tentarei fazer as correções que você sugeriu e postos os resultados. Mais uma vez, muito obrigado!

  9. #9

    Padrão

    Alexandre, rodei os bootstrap.sh, e o processo ocorreu sem erros, contudo a mensagem no cache.log referente a tproxy, continua aparecendo, e o tproxy ainda não fucionou, tentarei aplicar o patch na versão 2.7, posto os resultados.

  10. #10

    Padrão

    O path que tentei rodar aqui, retornou problemas, no squid 2.7, tenho procurado informações, e vejo muitos, que tentaram, e também não conseguiram, parece que o que funciona mesmo é o path para squid 2.6, isso é verdade? O tproxy é estável? É a melhor opção para spoof de Ip´s?