Pagina do Facebook parcialmente carregada depois de ativar interceptação SSL



  • Configuração: Pfsense 2.2.2 64bit + Squid3 Marcado com SSL Ativado Certificado Gerado e Importado + Squidguard

    Bom dia pessoal.

    Sou novo no forum e no mundo PfSense.

    Porém consegui fazer quase tudo funcionar como eu preciso tirando essa parte do facebook.

    Se eu habilito a interceptação SSL, crio o certificado e importo nos navegadores, a maioria dos sites abrem normalmente.  Porém o Facebook abre parcialmente.  Até agora foi o unico site que esta me dando problemas.

    Se eu adiciono ele na blacklist do squidguardi ele bloqueia normal mas se eu deixo ele livre, a pagina fica toda mal carregada.

    Já tentei filtrar pacotes etc etc e não consigo perceber o que pode estar causando isso.

    E isso acontece em qualquer navegador que esteja com o proxy que eu testei.  Inclusive aconteceu em minha maquina virtual.  A pagina é carregada parcialmente em todos esses casos.

    Se eu desativo a interceptação SSL, tudo volta a funcionar perfeitamente.

    Por favor, alguém mais experiente poderia me ajudar?

    Obrigado!!



  • Fiz algum progresso gente.

    Seguinte, enquanto acessava o site do face com proxy ativado, consegui capturar algumas coisas interessantes.

    O que eu entendi é que o facebook usa vários ips pra carregar videos, imagens e etc.  Uma porrada …

    Percebi que o meu certificado gerado com o pfsense e importado pro navegador não confia nesses endereços e por isso o squid barra o acesso.  Isso faz com que a pagina não carregue e por isso ela fica deformada.  Segue:

    GET https://fbstatic-a.akamaihd.net/rsrc.php/v2/yG/r/a92XwleskLR.css HTTP/1.1
    Host: fbstatic-a.akamaihd.net
    Connection: keep-alive
    Cache-Control: max-age=0
    Accept: text/css,*/*;q=0.1
    If-Modified-Since: Mon, 01 Jan 2001 08:00:00 GMT
    CSP: active
    User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.124 Safari/537.36
    Referer: https://www.facebook.com/
    Accept-Encoding: gzip, deflate, sdch
    Accept-Language: pt-BR,pt;q=0.8,en-US;q=0.6,en;q=0.4
    
    HTTP/1.1 503 Service Unavailable
    Server: squid
    Mime-Version: 1.0
    Date: Sun, 21 Jun 2015 00:21:31 GMT
    Content-Type: text/html
    Content-Length: 3803
    X-Squid-Error: ERR_SECURE_CONNECT_FAIL 92
    Vary: Accept-Language
    Content-Language: pt-br
    X-Cache: MISS from IEECD
    X-Cache-Lookup: NONE from IEECD:3128
    Via: 1.1 IEECD (squid)
    Connection: close
    
    

    Esse é apenas um dos endereços.

    Já estou usando aquela configuração no campo Custom ACLS (Before_Auth) mas de nada adiantou.

    always_direct allow all
    ssl_bump server-first all

    Comecei a ter esperança quando configurei nesse campo ae (Custom ACLS Before_Auth) o seguinte:

    acl BrokenButTrustedServers dstdomain example.com
    sslproxy_cert_error allow BrokenButTrustedServers
    sslproxy_cert_error deny

    O problema é que tem muitoooo dominio que fica bloqueando e mesmo colocando todos que eu encontrei não deu certo.  Porém melhorou … carregou a pagina tirando alguns videos e imagens.  O problema eh que atualizando a pagina começava a aparecer novos problemas e etc.

    Não acredito que essa seja a maneira mais pratica de resolver.

    A unica coisa que deixa carregar a pagina é quando eu marco: "Do not verify remote certificate"

    Porém dessa forma, ele não vai verificar certificado de nenhum site certo?

    Acho que não é o mais interessante.

    Alguem pode contribuir com alguma ideia?



  • Não sei se realmente você precisa interceptar o trafego HTTPs, mas se não precisa eu recomendo usar proxy ativo.



  • Proxy ativo seria o que?  Colocar o endereço do proxy no navegador?  Se for eu já fiz e mesmo assim não rola.



  • Você pode fazer manualmente ou utilizar o protocolo WPAD para entrega automática.

    Desativou o proxy transparente?

    Quando diz que deixa livre, seria colocar no SquidGuard como Whitelist?



  • @Tomas:

    Você pode fazer manualmente ou utilizar o protocolo WPAD para entrega automática.

    Desativou o proxy transparente?

    Quando diz que deixa livre, seria colocar no SquidGuard como Whitelist?

    Então, como eu disse não importa se esta transparente ou não.

    O que faz isso acontecer é o fato da Interceptação do SSL estar ativo.  Se eu desativar o site abre normalmente.

    Outra coisa que faz ele abrir normalmente e continua interceptando HTTPS é marcar: "Do not verify remote certificate" em Remote Cert checks.

    Só que eu não acho que essa seja a forma mais segura né?

    Sobre o Wpad até queria fazer … tentei inclusive mais não consegui de forma alguma.

    Vou tentar novamente.



  • Mas a questão é, precisa estar com SSL ativo?

    Se é só para fazer bloqueio não precisa.



  • @Tomas:

    Mas a questão é, precisa estar com SSL ativo?

    Se é só para fazer bloqueio não precisa.

    Entendi mas no caso se o SSL não estiver ativo, vou conseguir ver o que os usuários acessam utilizando o HTTPS?  Ou seja, vou conseguir filtrar isso nos logs do Squid?



  • Você não precisa "ver" o que acessam, e sim bloquear por URL pelo SquidGuard.


Log in to reply