web-dev-qa-db-fra.com

Comodo SSL: ERR_CERT_AUTHORITY_INVALID sur Chrome mobile et Opera mobile (Android)

Sur certains navigateurs mobiles, tels que Chrome mobile pour Android, je reçois une erreur ERR_CERT_AUTHORITY_INVALID lorsque je me connecte à mon site Web https . Je n'ai pas ce problème sur tous les navigateurs mobiles (comme Firefox) et il n'y a pas de problème sur le PC.

Mon certificat est un certificat Comodo Extended Validation . Je sous-traite à Gwhile, une autorité de certification SSL française, et Gandi est en charge de l'obtention du certificat Comodo EV et de me le donner . Gandi m'a donné une base. Certificat PEM + un certificat PEM intermédiaire. J'ai installé les deux.

J'ai effectué des analyses sur https://www.ssllabs.com/ssltest/analyze.html et le message "téléchargement supplémentaire" pour l'un des certificats (nommé "autorité de certification COMODO RSA") pendant l'installation de tous les certificats Je viens de Gandi.

J'ai essayé de regarder dans ce fil, mais cela n'a pas aidé: Le certificat SSL "err_cert_authority_invalid" sur le chrome mobile uniquement

Est-ce que quelqu'un sait ce qui ne va pas? Merci.

17
Julien Salinas

Pour ceux que ça intéresse, voici comment j'ai résolu le problème. 

Problème: il manquait un certificat intermédiaire Comodo dans ma chaîne de certificats. Mon autorité de certification SSL (G secours) était chargée des relations avec Comodo et Gandi ne m'a donné que deux certificats: un certificat de base + un certificat intermédiaire. Les deux étaient en format .pem. J'ai installé les deux et cela suffisait pour presque tous les navigateurs, à l'exception de quelques navigateurs mobiles. En réalité, un certificat intermédiaire de Comodo appelé "Autorité de certification COMODO RSA" était manquant.

Solution en 2 étapes: 

1) trouvé le référentiel contenant tous les certificats Comodo ici https://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/620/0/which-is-root-which-is- intermédiaire . Je copie le mien collé en format .PEM depuis cette page https://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/977/108/extended-validation-sha-2 ( il s’appelle ici "# intermediaire1" et non "Autorité de certification COMODO RSA").

2) a concaténé ce nouveau certificat intermédiaire avec le premier certificat intermédiaire que j'avais déjà (appelé "# intermediaire2" sur le site Web de Comodo) en plaçant ce nouveau certificat à la fin du premier certificat. Je l'ai fait comme ça: 

-----BEGIN CERTIFICATE-----
intermediate#2
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
intermediate#1
-----END  CERTIFICATE-----

J'espère que ça va aider!

11
Julien Salinas

J'héberge mon site sous nginx et j'ai également eu le même problème avec mon application Android. La réponse ci-dessus acceptée m'a dirigé vers ma solution:

Lorsque j'ai reçu le certificat (my-domain.crt), j'ai créé un fichier boundle crt généré en combinant mon certificat avec ComodoRSADomainCA et ComodoRSAAddTrustCA PEM content.

cat my-domain.crt ComodoRSADomain.crt ComodoRSAAddTrustCA.crt > ssl-boundle.crt

Lorsque j'ai lié ssl-boundle.crt à nginx, les clients n'avaient aucun problème à échanger des données. Et aussi j’ai eu ce joli résultat sur ssllabs :

 The happy score :)

5
RonzyFonzy

La chaîne de certificat est incomplète. Le "téléchargement supplémentaire" le prouve.

Vous devez envoyer la chaîne avec le certificat manquant indiqué par ssllabs.

Notez que la connexion fonctionne la plupart du temps car les navigateurs gardent un cache sur les certificats.

3
Tom

Après la création du bundle si le problème persiste, il ne restait que quelques espaces supplémentaires à la fin du .pem et de Chrome comme non sécurisés et que Firefox fonctionne bien. Après je les enlève, tout va bien, espérons que cela aidera quelqu'un.

0
onalbi