+ Responder ao Tópico



  1. #1
    chipmaster
    Visitante

    Padrão Proxy transparente

    Olá instalei o squid e esta funcioando perfeitamente.
    Agora estou tentando fazer o proxy transparente mais nao estou conseguindo.
    Alguel poderia me ajudar.
    vou passar meus arquivos de configurações.

    regras_ipfw
    add 00050 divert 8668 ip from any to any via fxp0
    add 00100 allow ip from any to any via vr1
    add 00101 allow tcp from any to any
    add 00102 fwd 127.0.0.1,3128 tcp from 192.168.0.0/24 to any dst-port 80
    add 65000 allow ip from any to any
    add 65535 allow ip from any to any


    rc.conf
    kern_securelevel_enable="YES"
    kern_securelevel="-1"
    firewall_enable="YES"
    firewall_type="/etc/regras_ipfw"
    natd_enable="YES"
    natd_interface="fxp0"
    natd_flags=""
    gateway_enable="YES"
    hostname="chipmaster.fln.virtua.com.br"
    ifconfig_fxp0="DHCP"
    sshd_enable="YES"
    usbd_enable="YES"

    squid.conf
    http_port 192.168.0.1:3128
    visible_hostname chipmaster.fln.virtua.com.br
    cache_mem 85 MB
    acl intranet src 192.168.0.0/24
    http_access allow intranet
    httpd_accel_host virtual
    httpd_accel_port 80
    httpd_accel_with_proxy on
    httpd_accel_uses_host_header on

    acl QUERY urlpath_regex cgi-bin \?
    no_cache deny QUERY

    auth_param basic children 5
    auth_param basic realm Squid proxy-caching web server
    auth_param basic credentialsttl 2 hours
    auth_param basic casesensitive off

    refresh_pattern ^ftp: 1440 20% 10080
    refresh_pattern ^gopher: 1440 0% 1440
    refresh_pattern . 0 20% 4320

    acl all src 0.0.0.0/0.0.0.0
    acl manager proto cache_object
    acl localhost src 127.0.0.1/255.255.255.255
    acl to_localhost dst 127.0.0.0/8
    acl SSL_ports port 443 563
    acl Safe_ports port 80 # http
    acl Safe_ports port 21 # ftp
    acl Safe_ports port 443 563 # https, snews
    acl Safe_ports port 70 # gopher
    acl Safe_ports port 210 # wais
    acl Safe_ports port 1025-65535 # unregistered ports
    acl Safe_ports port 280 # http-mgmt
    acl Safe_ports port 488 # gss-http
    acl Safe_ports port 591 # filemaker
    acl Safe_ports port 777 # multiling http
    acl CONNECT method CONNECT

    http_access allow manager localhost
    http_access deny manager
    http_access deny !Safe_ports
    http_access deny CONNECT !SSL_ports
    http_access deny all

    http_reply_access allow all

    icp_access allow all

  2. #2

    Padrão Re: Proxy transparente

    Seu servidor precisa de 2 interfaces de rede. uma pra entrada da internet e outra pra mandar pros clientes.

    tenta mudar a regra do firewall pra essa:

    add 00102 fwd 192.168.0.1,3128 tcp from 192.168.0.0/24 to any dst-port 80 via sua_2ª_interface_de_rede

  3. #3
    chipmaster
    Visitante

    Padrão Re: Proxy transparente

    valeu pela dica vou testar.

  4. #4
    chipmaster
    Visitante

    Padrão Re: Proxy transparente

    Nào funcionou.

    Sera que nao pode ser a ordem que coloqueis os comandos de proxy transparente no arquivo squid.conf ???

  5. #5

    Padrão Re: Proxy transparente

    tente mudar isso
    add 00102 fwd 127.0.0.1,3128 tcp from 192.168.0.0/24 to any dst-port 80
    para isso
    ipfw add 10 fwd localhost,3128 tcp from any to not me 80

  6. #6
    chipmaster
    Visitante

    Padrão Re: Proxy transparente

    ainda nao deu com essa regra nao navega. quando eu configuro o proxy manualmente retorna esse erro.
    Connection Failed
    The system returned:

    (61) Connection refused

    que merda.
    Cheguei a reconfigar todo meu squid.conf. mesmo assim nao funcionou.
    So pode ser problema mesmo de firewall ou natd.
    sei que o proxy transparente nao esta funcionando porque vou no log e vejo que nao houve nenhum acesso. quando configuro o proxy no navegador vou ver o log e esta tudo em ordem.
    tenho certesa que eh uma coisa boba mais nao tenho a menor ideia do que fazer.
    Comprei o livro Freebsd+squid segui tudo passo a passo e nao deu certo. quando eu coloco as regras iguais ao do livro ai mesmo a coisa fica feia nao funciona mais nada. para tudo nem consigo ping dentro da rede.

  7. #7

    Padrão Re: Proxy transparente

    se vc configura o proxy manualmente e ele da connection refused eh o proxy que ta barrando, o firewall pode ateh nao estar direcionando, mas o proxy tb está barrando, poste teu squid.conf

  8. #8

    Padrão Re: Proxy transparente

    Se certifique que o "IPFIREWALL_FORWARD" está no kernel.

  9. #9
    chipmaster
    Visitante

    Padrão Re: Proxy transparente

    IPFIREWALL_FORWARD

    esta no kernel sim.

    Explicando o problema. configurando o proxy manualmente tudo funciona perfeitamente. Vou no access.log vejo os acessos.

    Quando fiz as configurações para fazer o proxy transparente o navegador continua funcionando perfeitamente so que quando vou ver o access,log vejo que a maquina nao acessou o squid.

    No primeiro post esta meus meus arquivos de configurações. Agora eu mudei o do squid.conf que estava meio bagunçado. podois eu coloco aqui. Mais continuou o mesmo problema.
    Estou meio perdido pois tenho um livro de Freebsd+squid fiz tudo passo a passo e vezes mais não funcioou.
    Minha versão do Freebsd eh a 6.0.


    Se alguem conseguir me ajudar ficarei muito grato.

  10. #10

    Padrão Re: Proxy transparente

    Eu ja vi o squid nao funcionar a transparencia devido ele ser compilado com o suporte para o PF.
    Como se o PF pegasse o lugar do ipfw.
    Entao, verifique isso tambem, ok?

  11. #11
    chipmaster
    Visitante

    Padrão Re: Proxy transparente

    como eu verifico isso ???
    fiz a instalação do squid pelos ports -on-line ele fez tudo sozinho.

  12. #12

    Padrão Re: Proxy transparente

    Faz o seguinte.

    Primeiro antes de tudo, atualize o ports.

    Segundo, arranca fora esse squid...

    cd /usr/ports/www/squid
    make deinstall

    Terceiro, veja como que tá as paradas aí..
    make config
    (nao coloque o suporte pro pf)

    Depois, segue adiante...

  13. #13
    etherlink
    Visitante

    Padrão Re: Proxy transparente

    Vc pode usa o pf para fazer proxy transparent tambem desta forma
    rdr on $int_if proto tcp from any to any port 80 -> 127.0.0.1 port 3128

  14. #14
    chipmaster
    Visitante

    Padrão Re: Proxy transparente

    Consegui resolver o problema.
    Reconfigurei todo o squid.conf e encontrei alguns erros apesar do proxy esta funcioando haviam algumas coisas erradas.
    Isso acertado o proxy transparente ainda não funcionou.
    Tentei uma dica de um colega que tinha postado aqui sobre colocar a regra da porta 80 primeiro e funcinou.
    Valeu atodos pela ajuda.

    Meu arquivo de regras ficou assim

    add 00003 fwd 192.168.0.1,3128 tcp from 192.168.0.0/24 to any dst-port 80
    add 00004 divert 8668 ip from any to any via fxp0
    add 00005 allow ip from any to any via vr1
    add 00006 deny ip from any to 127.0.0.0/8
    add 00007 deny ip from 127.0.0.0/8 to any
    add 00010 allow ip from me to any
    add 00011 allow ip from any to me
    add 65000 pass all from any to any