Por que o OS X não confia no certificado SSL do GitHub?

68

Quando vou a qualquer página do github.com no Chrome, recebo um grande erro feio:

Você tentou acessar o github.com, mas o servidor apresentou um certificado emitido por uma entidade que não é confiável pelo sistema operacional do seu computador. Isso pode significar que o servidor gerou suas próprias credenciais de segurança, nas quais o Chrome não pode confiar para obter informações de identidade, ou um invasor pode estar tentando interceptar suas comunicações.

Você não pode prosseguir porque o operador do site solicitou maior segurança para este domínio.

O mesmo acontece (no Chrome e com curl) quando também vou para https://www.digicert.com/ . Esse problema estranho começou há uma semana e meia atrás.

Aqui está o que vejo quando clico no ícone de cadeado quebrado na barra de endereço:

GitHub.com está quebrado Informações sobre o certificado do GitHub.com

Mas o gist.github.com funciona bem:

Gist.GitHub.com funciona Informações do certificado Gist.GitHub.com

Também não funciona com curl:

Não funciona com curl

Tudo funciona bem no Firefox.

Como posso corrigir meu problema de CA raiz?

Aqui está o que parece no Firefox:

insira a descrição da imagem aqui insira a descrição da imagem aqui

Atualizar:

Percebi que o primeiro certificado da cadeia é diferente no meu Chrome / Safari quebrado, em comparação com o Chrome no meu outro computador.

insira a descrição da imagem aqui insira a descrição da imagem aqui

(Não há mais X vermelho desagradável porque eu confiei no Safari.) Veja como os emissores são diferentes? O que eu posso fazer disso?

Trevor Dixon
fonte
Há uma diferença entre * .github.com e github.com que navegador você está usando?
Ramhound
Cromada. Está quebrado no Chrome, mas funciona no Firefox. Não funciona com ondulação.
Trevor Dixon
Você pode postar as informações do Firefox que mostram que o certificado não possui erros?
Ramhound
Adicionadas imagens do Firefox na parte inferior.
Trevor Dixon
Mesmo problema com o próprio digicert.com .
Trevor Dixon

Respostas:

42

isso funcionou para mim:

Keychain.app > Preferences > General > Reset My Default Keychain

ATUALIZAR

Uma opção menos drástica é excluir o certificado DigiCert do chaveiro de login : você já deve ter um no chaveiro raiz. Este erro parece ocorrer quando os dois não coincidem.

evacchi
fonte
2
Parece drástica ...
JLundell
3
Acredito que a exclusão do certificado na chave de login também funcione. Se entendi corretamente, o DigiCert está no chaveiro raiz de qualquer maneira. Vale a pena tentar antes de redefinir. (Evidentemente backup etc etc)
evacchi
Sim, isso funcionou para mim. Quebra-cabeça porque está no chaveiro de login. No exame, as duas versões não são idênticas; curioso de onde veio a versão de login.
JLundell
bom saber, vou atualizar a resposta.
Evacchi
3
Como um aparte: problemas semelhantes podem ser causados ​​por um certificado raiz expirado na Chaveiro de Login, que substitui os certificados atualizados das Raízes do Sistema. Para mostrá-los, ative "Mostrar certificados expirados" no menu "Visualizar".
Arjan
79

Há um novo problema a partir de 26 de julho de 2014, quando um certificado de propagação antigo, aparentemente quase amplo, expirou.

Com base em https://www.yesthatallen.com/fixing-an-old-digicert-issue/

Instruções para limpar o certificado SSL DigiCert expirado no OSX

 
  1. Iniciando o Acesso ao Keychain via Spotlight
    • ⌘-Space
    • Digite "Acesso ao chaveiro"
    • Hit return
  2. Verifique se os certificados expirados são mostrados; ative "Mostrar certificados expirados" no menu "Visualizar".
  3. Procure por "Digicert".
  4. Clique com o botão direito do mouse no certificado com um X vermelho e selecione "Excluir CA raiz do DigiCert High Assurance EV"
  5. O certificado pode não parecer removido até que o Acesso às Chaves seja reiniciado
  6. Reinicie seus navegadores
Mais uma vez, você poderá acessar os sites afetados.

 

Allen Hancock
fonte
2
A remoção do certificado não ajudou, eu reiniciei o meu computador. O problema persiste. Qualquer ideia?
Aviel 27/07
9
Ok, eu provavelmente excluo muitos certificados digi, fui aqui digicert.com/digicert-root-certificates.htm e baixei o certificado "DigiCert High Assurance EV Root CA".
Aviel 27/07
11
@Aviel Obrigado, o download e a reinstalação desse certificado fizeram isso por mim.
Tim Scott
11
Isso funcionou como um encanto para mim e também resolveu o problema semelhante com o safari (como seria de esperar). Eu precisava reiniciar o Chrome.
Biggusjimmus
Ótimo! Isso funcionou para mim. Obrigado @Allen Hancock :)
Mark Robson
1

Eu apenas tentei a solução de John, e não ajudou. Embora no meu caso, não encontrei nenhum dos ícones "azul +" na classe.
Então, tudo o que fiz foi excluir os dois arquivos de cache sugeridos e reiniciar.
No meu caso, estou tentando atualizar um aplicativo no Macports, que usa o git para conectar-se ao github para baixar a fonte, e isso está causando o erro. E vejo o erro no Safari, mas não no Firefox.

Após o exposto, entrei em contato com o DigiCert e eles foram muito úteis para resolvê-lo. Em Acesso a Chaves-> Raízes do Sistema Categoria: Certificados

DigiCert High Assurance EV Root CA-> Confiar-> SSL mudar de: nenhum valor especificado para: Sempre confiar GTE CyberTrust Global Root-> Confiar-> SSL mudar de: nenhum valor especificado para: Sempre confiar

user2965673
fonte
1

Para mim, o problema foi resolvido iniciando o utilitário Acesso às Chaves, selecionando Primeiros Socorros nas Chaves no menu Acesso às Chaves e selecionando Reparar.

Keith Bennett
fonte
Clicar em reparar parece ter limpo todos os meus certificados, por isso pode ser um subproduto.
Gray
0

Há algum tempo, tive um problema com vários certificados SSL, e descobri que isso funciona para 90% desses problemas.

Exclua os arquivos /var/db/crls/crlcache.db e /var/db/crls/ocspcache.db. Estes podem ser encontrados usando o Finder Go>; Vá para o menu Pasta (Cmd + Shift + G). Isso redefine o cache de certificados aceitos no sistema. Ele não os remove, apenas força o sistema a reconstruir os caches na reinicialização.

Abra o Acesso ao chaveiro (/ Aplicativos / Utilitários / Acesso ao chaveiro). Selecione Certificados no seletor de categoria, no lado esquerdo. Na barra de pesquisa, digite a palavra Classe. Examine essa lista e encontre quaisquer certificados que tenham um símbolo azul + sobre o ícone. Estes são os que você precisa modificar.

Selecione um que tenha um + azul e pressione Command + I. Clique no triângulo de divulgação ao lado da lista "Confiar" para mostrar a lista de permissões. Agora, o que precisamos fazer é definir esse certificado para usar os padrões do sistema. No entanto, por algum motivo, quando você o seleciona, ele não salva. Então, o que você precisa fazer é isso. Em "Confiança", onde está escrito "Secure Sockets Layer (SSL)", altere o menu suspenso para dizer "Nenhum valor especificado". Então feche a janela. Ele solicitará suas permissões de administrador. Em seguida, abra o painel de informações desse certificado novamente. Em “Confiar” novamente, defina agora o menu suspenso que diz “Ao usar este certificado:” para dizer “Usar padrões do sistema”. Você pode fechar o painel de informações e inserir sua senha novamente. Faça isso para qualquer um dos certificados que tenham um + azul em seu ícone. Só deve haver um ou dois.

Reinicie seu sistema.

Deixe-me saber se isso funciona, eu ficaria curioso se isso funciona.

Como SEMPRE faça backup usando o Time Machine, porque se piorar, pelo menos você pode voltar!

John Marc
fonte
0

Para aqueles que removeram o certificado expirado, mas ainda têm o problema. Inicie o acesso ao chaveiro, acesse o item de menu, selecione "primeiros socorros", execute uma verificação, execute um reparo e execute uma verificação novamente para ter certeza. O problema deve desaparecer.

Kurt Bussche
fonte
Parece ser o mesmo que a resposta de Keith Bennett em 6 de julho.
Scott
0

Isso me ajudou:

(chrome, OsX)

  1. Abra o Keychain.app
  2. Pesquise "digicert" no canto superior direito do Keychain.app
  3. Selecione todos os certificados digicert e remova-os com clique direito e menu de contexto ( http://screencast.com/t/2T4f1XQa0Xu )
  4. Vá aqui http://digicert.com/digicert-root-certificates.htm
  5. Encontre na página e faça o download do certificado CA raiz DigiCert High Assurance EV
  6. Quando baixado - clique nele e instale-o no seu chaveiro
  7. Reinicie seu chrome
Nedudi
fonte
0

Eu segui a dica de Allen, mas não funcionou para mim. Então eu tento isso. Parece que funciona.

  1. Siga todos os passos de Allen.
  2. Abra o site afetado no Safari (por exemplo: github.com).
  3. Essa caixa de alerta será exibida. Clique em 'Mostrar certificado'. insira a descrição da imagem aqui
  4. No menu suspenso 'Ao usar este certificado:', selecione 'Sempre confiar'. Todos os 2 menus suspensos abaixo seguirão a mesma regra que você selecionou aqui. insira a descrição da imagem aqui
  5. Abra o Chrome, tente acessar o site afetado (por exemplo: github.com).

Eu tentei isso. O Facebook carrega normalmente. Mas, o github carregado sem CSS. Eu recebo o esqueleto github. Não sei por que isso aconteceu. Mas a conexão já está estabelecida e tudo bem.

Alguma idéia pessoal?

Zulhilmi Zainudin
fonte
0

Depois de passar muitas horas tentando consertar isso, baixei - Link ;

  • CA raiz global do DigiCert
  • DigiCert High Assurance EV Root CA
  • CA raiz do ID de garantia do DigiCert

Não faço ideia se esta boa prática, mas está funcionando para mim. Estou executando o OSX 10.9.5 e o Chrome 42.0.2311.152 (64 bits)

Stuart
fonte
0

Trabalhar comigo no MAC 10.10.3 1) Abrir acesso ao chaveiro 2) Pesquisar DigiCert High Assurance EV Root CA 3) Clique duas vezes no DigiCert High Assurance EV Root CA 4) Nas janelas DigiCert High Assurance EV Root CA selecione TRUST 5) alterar com pulldown menu ao usar este certificado com SEMPRE CONFIANÇA CONCLUÍDA

suryo
fonte
0

Encontrado abaixo online. Eu tinha certeza de que era uma piada como você costumava enganar alguém para pressionar ALT + F4 no Windows, mas funcionou para mim e para um colega de trabalho:

  1. Clique em qualquer lugar no quadro afetado do Chrome
  2. No teclado, digite: perigo

É isso aí, a página carrega. Como o CSS não carrega, basta clicar em "Exibir código-fonte", clicar no arquivo css e você verá a mensagem de erro novamente. Repita as etapas acima e o CSS será exibido. Atualize a página do Github e tudo ficará bem.

Alan P.
fonte