No meu ambiente local do Apache, tenho um site que requer SSL para desenvolvimento, portanto, utilizo um certificado autoassinado. O site local funcionou bem no Firefox e Chrome até agora, mas depois de atualizar o Firefox para a versão 59 hoje não consigo aceitar a exceção de segurança (no Chrome, o certificado autoassinado continua funcionando).
O Firefox fornece essas informações adicionais na página bloqueada:
... usa um certificado de segurança inválido. O certificado não é confiável porque é autoassinado. Código de erro: SEC_ERROR_UNKNOWN_ISSUER
Não há opção para permitir a exceção aqui, como costumava existir, mas fui às Preferências do Firefox em Certificados e, na guia "Servidor", adicionei uma exceção para o domínio local. O certificado é listado no nome correto do servidor local, os detalhes mostram minhas configurações de certificado de Emitido por e Emitido como iguais, com um período de tempo válido.
Alguém experimentando problemas semelhantes com o FF 59 ou pode ter uma idéia do que tentar fazer com que o certificado autoassinado volte a funcionar localmente?
Edit: Eu não vejo nenhuma menção a isso nas notas de versão do FF 59, mas algo na nova versão faz com que todos os meus hosts virtuais locais nos domínios * .dev tentem estabelecer automaticamente uma conexão https (ou seja, todos os http solicitações para * .dev são enviadas automaticamente para o URL https). Talvez algo sobre esse comportamento também esteja causando esses problemas para meus hosts virtuais https reais.
fonte
Respostas:
Ainda não estou totalmente claro sobre como tudo isso se encaixa exatamente, mas, como apontado nesta resposta, os
.dev
domínios agora são TLDs oficiais. Dessa forma, parece que os navegadores forçam algum tipo de comportamento HSTS e forçam conexões https. Para esses TLDs, parece que meu certificado autoassinado não foi mais aceito no Firefox. Alterar meus hosts virtuais para usar.test
resolveu o problema sem precisar alterar nada nos meus certificados autoassinados.Vale ressaltar que no Firefox também meus hosts virtuais não SSL atuaram desde a versão 59 hoje, porque o comportamento do HSTS parecia forçar o SSL nos hosts virtuais que eu não havia configurado para servir via SSL. No Chrome, isso ainda funcionava, mas de qualquer forma é seguro dizer que se afastar do
.dev
TLD agora oficialmente usado resolverá muitas dores de cabeça.fonte
.dev
é um TLD válido há algum tempo, portanto NÃO o use para nomear seus recursos internos. O mesmo para qualquer outro nome: não use nenhum nome que você pense que mais ninguém usará. Use os nomes de teste mencionados no RFC2606 ou apenas registre um nome de domínio verdadeiro em qualquer lugar e use um subdomínio comoint.example.com
oudev.example.com
para sufocar todos os seus nomes internos. Você vai então nunca tem colisões ou problemas (contanto que seu não se esqueça de renovar o nome de domínio a cada ano!).dev
domínios. A menos que você saiba que é um TLD, não há chance de inferir que esse é o problema.Existe uma maneira fácil de contornar isso.
about:config
false
.AVISO: Isso desativará completamente o HSTS . Dê uma olhada nos comentários sobre esta resposta para discutir algumas desvantagens deste método. Pessoalmente, acho que o benefício supera o risco, mas você é responsável por sua própria segurança.
fonte
.dev
projetos atuais serão transferidos para outro sufixo de TLD, mas, por enquanto, isso ajuda a não interromper o desenvolvimento local.Definir
security.enterprise_roots.enabled
comotrue
naabout:config
página resolveu isso para mim e permitiu que meu certificado autoassinado funcionasse durante o desenvolvimento.Há um pouco de discussão sobre os méritos dessa ativação por padrão aqui:
Defina security.enterprise_roots.enabled como true por padrão .
Embora a intenção desse sinalizador seja permitir que o Firefox use o armazenamento raiz da CA em toda a máquina como uma fonte válida para as autoridades de certificação, isso corrigiu a situação do meu próprio caso de uso em que eu tenho um certificado de vários domínios autoassinado que eu uso localmente para teste (subjectAltName's) . Mesmo depois de adicionar o certificado à lista de certificados do Firefox, não foi até eu ativar isso que permiti o carregamento do site local.
fonte
Teve o mesmo problema no Basilisk Web Browser . Tentei alterar as configurações de proxy de rede ou modificar os sinalizadores "network.stricttransportsecurity.preloadlist" ou "security.enterprise_roots.enabled" ... mas não resolveu o botão ausente para adicionar certificado para o site bloqueado. Somente isso conseguiu:
about:support
.Open Directory
no seu perfil do navegador.fonte
Eu fui para "Let's Encrypt"
Válido apenas por três meses por vez, mas a atualização pode ser automatizada.
Como você pode ver nas observações, há um problema. Nossos domínios de desenvolvimento e teste são chamados dev-www.example.com e test-www.example.com. Usamos o certificado curinga da produção.
fonte