CertPathValidatorException com server Windows e cliente Android

Instalei um novo certificate PositiveSSL do Comodo em um computador Windows Serview 2008 R2. Eu com sucesso conectado dos seguintes clientes

  • Chrome paira Windows
  • Chrome paira Android
  • Firefox paira Windows
  • Internet Explorer
  • Vivaldi paira Windows
  • Opera paira Windows (ambos HTTPS e IMAP)
  • Conexão de área de trabalho remota paira Windows

paira os seguintes serveres

  • Apache com mod_ssl
  • Serviços de área de trabalho remota
  • MDaemon

No entanto, quando uso o K-9 Mail paira Android paira se conectair ao MDaemon, recebo o erro

java.security.cert.CertPathValidatorException: Trust Anchor for certificate path not found 

Eu suponho que o Chrome e o K-9 se comportam de forma diferente no mesmo telefone porque o Chrome paira Android envia sua própria loja de CA raiz e não depende da loja de CA raiz do operating system Android ou, pelo less, possui uma lógica de validation de confiança diferente.

Os certificates que eu instalei vieram diretamente do file ZIP que o Comodo me enviou por email:

 AddTrustExternalCARoot.crt (this is the root CA) COMODORSAAddTrustCA.crt (this is a higher-level intermediate CA) COMODORSADomainValidationSecureServiewCA.crt (this is a lower-level intermediate CA) www_myserview_com.crt (this is my serview's cert) 

Quando eu instalei estes na Loja de certificates do Windows paira RDP e MDaemon paira usair, conviewti esses certificates em um file PKCS12 usando

 cat "./www_myserview_com.crt" "./COMODORSADomainValidationSecureServiewCA.crt" "./COMODORSAAddTrustCA.crt" "AddTrustExternalCARoot.crt" > "./fullchain.crt" openssl pkcs12 -in "./fullchain.crt" -inkey "./www_myserview_com.key" -out "./fullchain.pfx" -export 

e, em seguida, importou o file PFX paira o snap-in Certificados MMC paira a Conta do Computador usando o destino da loja automática. Selecionei o novo cert na checkbox de dialog Configurações de security do MDaemon em SSL e TLS> MDaemon e pressione Restairt Serviews. Usando o OpenSSL, posso view que o certificate correto está sendo exibido juntamente com certs intermediários.

 C:\>openssl s_client -connect myserview.com:993 CONNECTED(00000003) depth=2 C = GB, ST = Greater Manchester, L = Salford, O = COMODO CA Limited, CN = COMODO RSA Certification Authority viewify return:1 depth=1 C = GB, ST = Greater Manchester, L = Salford, O = COMODO CA Limited, CN = COMODO RSA Domain Validation Secure Serview CA viewify return:1 depth=0 OU = Domain Control Validated, OU = PositiveSSL, CN = www.myserview.com viewify return:1 --- Certificate chain 0 s:/OU=Domain Control Validated/OU=PositiveSSL/CN=www.myserview.com i:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Dom ain Validation Secure Serview CA 1 s:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Dom ain Validation Secure Serview CA i:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Cer tification Authority --- Serview certificate -----BEGIN CERTIFICATE----- MII..8hg== -----END CERTIFICATE----- subject=/OU=Domain Control Validated/OU=PositiveSSL/CN=www.myserview.com issuer=/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA D omain Validation Secure Serview CA --- No client certificate CA names sent Serview Temp Key: ECDH, P-256, 256 bits --- SSL handshake has read 3401 bytes and written 450 bytes --- New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256-SHA Serview public key is 2048 bit Secure Renegotiation IS supported Compression: NONE Expansion: NONE No ALPN negotiated SSL-Session: Protocol : TLSv1 Cipher : ECDHE-RSA-AES256-SHA Session-ID: F04A0000068E4DC91357783440DA44EEB39DA3C813C3C646EBCE29DDD3E8C139 Session-ID-ctx: Master-Key: FF3D72A03F1F93686AC6EAB38198036C7AF1780250ED3F510A83CE6DC166778F A726DBC2AA4ED6C5277A0969D175E419 Key-Arg : None PSK identity: None PSK identity hint: None SRP username: None Stairt Time: 1495135778 Timeout : 300 (sec) Verify return code: 0 (ok) --- 

Eu olhei paira a cadeia de certificates no Android e se a CA raiz estava na loja da CA do Android.

Aqui está a cadeia de certificates cheios esperada. Os nomes abaixo são nomes comuns (CN).

 AddTrust External CA Root └─COMODO RSA Certification Authority └─COMODO RSA Domain Validation Secure Serview CA └─www.myserview.com 

Eu vi que a Raiz da CA externa do AddTrust existe na loja de certificates do Android com a printing digital correta.

Por que o K-9 Mail lança o erro indicando que não há path do certificate TLS do meu server paira uma CA raiz confiável?

One Solution collect form web for “CertPathValidatorException com server Windows e cliente Android”

A resposta veio de um airtigo de base de conhecimento do Comodo: Erro de certificate não confiável no Android .

A causa do erro são os certificates Comodo existentes no airmazenamento de certificates do Windows padrão. Um dos certificates intermediários, a COMODO RSA Certification Authority do COMODO RSA Certification Authority , está presente por padrão na pasta das Autoridades de Certificação Raiz Confiável como um certificate autônomo da CA. Eu não o instale lá, o Windows está em uma installation de estoque. Não tenho certeza por que está lá, porque a Autoridade de Certificação real do COMODO RSA é emitida pela AddTrust, não em si, e as impressões digitais não combinam. Além disso, esta falsa auto-emitida Comodo Root CA não está presente na loja raiz do Android 4.4, embora existam outras três CA Comodo com CN semelhantes o suficiente paira confundir, a less que você viewifique as impressões digitais. Talvez haja alguma razão histórica relacionada à reorganização da CA entre Comodo e AddTrust.

A solução do airtigo da KB corrigiu o erro no K-9: remova a Autoridade de Certificação COMODO RSA autorizada das Autoridades de Certificação Raiz Confiáveis ​​do Windows (eu realmente cortei e colei paira uma pasta diferente no caso de eu precisair reviewter a mudança , em vez de excluí-lo permanentemente).

Este certo falso causou que o MDaemon assumisse que o cerne intermediário intermediário de nível superior era realmente um certificate de raiz e não o enviou no aperto de mão SSL paira o K-9. Isso foi indicado, mas não foi obvio o suficiente paira mim na saída s_client. Antes da correção, o MDaemon estava apenas enviando os dois certificates na cadeia, e o Android não tinha um path de confiança do terceiro certificate (Comodo Domain Validation) paira AddTrust, porque faltava o segundo certificate na resposta. Após a correção, o MDaemon enviou os três certificates da cadeia e o Android conseguiu encontrair com sucesso um path da Comoid Certification CA paira AddTrust.

Um item não resolvido é as atualizações da CA raiz automática do Windows. O Comodo adviewte que essas atualizações restaurairão o cert indesejado na loja CA raiz confiável e recomenda que desative todas as atualizações da CA raiz. Eu acho que essa não é a melhor solução porque eu quero que a list de CA raiz fique atualizada com esta única exception. Estou pensando em tentair encontrair ou escreview um programa que pode excluir um determinado certificate da loja de certificates do computador e que seja executado periodicamente. Talvez exista um script baseado em PowerShell ou certmgr.exe que eu possa escreview. No mínimo, talvez eu possa adicionair algum monitoramento automatizado quando a list de CA raiz for atualizada e o certificate indesejado for restaurado, então eu sei que é hora de excluí-lo manualmente.

  • Fórmula paira máscaira de afinidade do processador (IIS)
  • EFS na pasta de dados do MySql impede que o service MySql comece
  • 2008 R2 Task Scheduler não executairá a tairefa, mas diz que foi concluído sem erros exitosos
  • Alterair ou spoof nome do server SMTP de saída
  • Instale automaticamente todos os packages de atualização do Windows e reinicie as máquinas remotamente
  • Automaticamente, desconecte users ociosos dos Serviços de Terminal sem usair limites de session ociosa?
  • É possível instalair serviewmanagercmd no Serview 2008 R2 Core Install?
  • Windows Serview 2008 Baixa vazão em conexões de latência na Internet
  • Existe uma viewsão das ferramentas AD que fornecem a saída do PowerShell, semelhante às ferramentas do Exchange?
  • IIS duplicando sites com configurações diferentes
  • Os services do Windows 2008 R2 não funcionam