O meu Chrome "salta" para o protocolo HTTPS inexistente

3

Meu Chrome (40.0.2214.115m) pula para https inexistente:

eu digito

http://johnwhitech.homeip.net:8080/

E o Chrome redireciona para

http s ://johnwhitech.homeip.net:8080/

que não existe. Eu faço não ter HTTPS em todos os lugares.

No analisador de rede, vejo que meu servidor respondeu um redirecionamento 307 que é não verdadeiro (o apache está configurado corretamente e não dá essa resposta, outros navegadores não redirecionam, pacotes HTTP fazem um loop perfeitamente normal).

Eu tentei registrar a solicitação com o violinista, aqui está:

CONNECT johnwhitech.homeip.net:8080 HTTP/1.1

Host: johnwhitech.homeip.net:8080

Connection: keep-alive

User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)

Chrome/40.0.2214.115 Safari/537.36

A SSLv3-compatible ClientHello handshake was found. Fiddler extracted the parameters below.

...

Outra coisa estranha: na coluna HOST do violinista, se eu tentar com o firefox, vejo o nome do meu servidor. Com o chrome, só vejo "Tunnel to ...", mesmo para o primeiro pedido. O protocolo é, de fato, HTTP (veja o início do pacote), mas por que, no hearth my chromes envia um SSL "ClientHello" junto com ele?

É um comportamento normal?

A única coisa que vejo que pode estar relacionada ao SSL é que instalei um certificado autoassinado, primeiro por meio de configurações de cromo e depois por todo o sistema. Este certificado funciona bem, mas talvez desde que o nome de domínio corresponda a um certificado na lista, os cromos tentam SSL?

Obrigado pessoal!

EDIT3: Esse comportamento também acontece sem conectividade com a Internet (cache limpo), então definitivamente não no lado do servidor

EDIT4: O que eu vejo na guia "REDE" do Chrome Dev Tools. A primeira entrada é normal, a segunda entrada é via HTTP, que é imediatamente redirecionada para HTTPS. Isto acontece sem conexão de rede, em particular o servidor não está enviando HSTS.

    
por lbarman 03.03.2015 / 15:56

1 resposta

7

O Chrome indica claramente o motivo: o HSTS. HSTS, uma vez recebida, adere. Esta é uma parte essencial do conceito. Isso significa que, se o Chrome tiver recebido um cabeçalho de HSTS do seu servidor, mesmo que apenas uma vez, ele permanecerá até expirar.

Para verificar o cache HSTS do Chrome, acesse chrome://net-internals/#hsts . De lá, você pode consultar o cache. A menos que relate "Não encontrado", o Chrome tem um cabeçalho HSTS em cache da sua página. Para removê-lo, use a ferramenta fornecida na mesma página.

    
por 03.03.2015 / 19:46