Vérificateur de certificat SSL

Lisez le certificat qu'un site présente réellement, y compris ceux défectueux que votre navigateur refuse de vous montrer.

Essayez :

Pourquoi un outil est nécessaire ici

Votre navigateur vérifie déjà les certificats, et il le fait mieux qu’aucune page web ne le pourrait. Ce qu’il ne fera pas, c’est vous montrer un certificat cassé. Quand la validation échoue, vous obtenez une page d’avertissement et une raison vague ; le certificat lui-même se trouve deux clics plus loin, quand il est accessible. Or les défaillances qui méritent un diagnostic sont justement celles où votre navigateur est parfaitement content et celui d’un autre non.

La vérification ci-dessus s’exécute donc sur un serveur, délibérément sans faire confiance à ce qu’elle trouve, et rapporte ce que l’hôte a réellement présenté. Expiré, auto-signé, émis pour un autre nom — tout cela revient sous forme de données plutôt que de mur.

Les quatre défaillances, dans l’ordre où vous les rencontrerez

Expiré

La plus fréquente et la plus évitable. Tous les navigateurs affichent un avertissement pleine page, et le site est de fait hors service pour quiconque refuse de passer outre. Cela arrive parce que quelqu’un a renouvelé à la main, une fois, il y a trois cent quatre-vingt-dix-huit jours, puis a quitté l’entreprise.

Nom d’hôte qui ne correspond pas

Le certificat est authentique et en cours de validité, mais il ne couvre pas le nom que vous avez employé. C’est presque toujours la règle du joker : *.example.com ne couvre pas example.com. Les deux noms doivent figurer sur le certificat, et ce vérificateur liste tous ceux qu’il a trouvés, pour que vous voyiez d’un coup d’œil lequel manque.

Chaîne incomplète

Celle qui produit les rapports de bug les plus étranges. Le serveur envoie son propre certificat mais omet l’intermédiaire qui le relie à une racine de confiance. Les navigateurs de bureau vont généralement chercher eux-mêmes la pièce manquante et ne disent rien. Les navigateurs mobiles, les clients Java, les anciennes versions d’Android, curl et la plupart des consommateurs d’API ne le font pas : ils échouent, tout simplement.

Le résultat, c’est un site qui fonctionne parfaitement sur le portable du développeur et par intermittence pour tout le monde — d’où le fait que la section « chaîne » ci-dessus liste exactement ce que le serveur a envoyé, et non ce qu’on pourrait reconstituer.

Auto-signé

Émis par lui-même : aucun client ne lui fait donc confiance par défaut. Tout à fait raisonnable sur un service interne où vous distribuez vous-même le certificat, et jamais utilisable sur le web public.

Ce que le cadenas signifie, et ce qu’il ne signifie pas

Un certificat valide établit deux choses : que vous parlez bien à celui qui contrôle ce nom de domaine, et que le trafic entre vous ne peut être ni lu ni modifié en chemin. C’est réellement précieux, et c’est toute la garantie.

Ce qu’il n’établit pas, c’est l’honnêteté de l’exploitant. Les certificats sont gratuits et délivrés en quelques secondes : les sites d’hameçonnage en ont un valide comme une évidence. Le cadenas n’a jamais voulu dire « ce site est sûr », et c’est pourquoi les navigateurs l’ont discrètement retiré ces dernières années en tant qu’indicateur positif, pour ne plus signaler que l’absence de chiffrement.

Tout ce qui figure sur votre certificat est public

Bon à savoir avant d’y ajouter des noms d’hôtes. Depuis 2018, tout certificat publiquement approuvé doit être soumis à la Certificate Transparency — des journaux publics en ajout seul que les navigateurs consultent, et dont l’absence entraîne le rejet du certificat.

Le bénéfice de sécurité est réel : une autorité de certification ne peut pas délivrer discrètement un certificat pour votre domaine à quelqu’un d’autre sans que cela apparaisse dans un journal que vous pouvez surveiller. L’effet de bord, c’est que chaque nom de chaque certificat est consultable. Placer staging-admin.example.com sur un certificat public, c’est publier l’existence de cet hôte à qui prendra la peine de regarder — et des gens regardent : surveiller ces journaux est une étape de reconnaissance standard.

Le renouvellement est sur le point de ne plus être facultatif

La durée de vie maximale d’un certificat public baisse depuis des années : cinq ans, puis trois, puis deux, et 398 jours depuis 2020. Le CA/Browser Forum a désormais adopté un calendrier qui la ramène à 200 jours en 2026, 100 en 2027 et 47 d’ici 2029.

À 47 jours, renouveler à la main revient à le faire huit fois par an sur chaque hôte, avec pour mode de défaillance la mise hors service de votre site. L’automatisation par ACME — Let’s Encrypt, ou ce que propose votre hébergeur — cesse d’être une bonne pratique pour devenir la seule option viable. Si vous vérifiez un certificat ici parce que vous avez reçu un courriel d’expiration, c’est cela, le problème de fond à régler.

Ce que ceci ne vérifie pas

Volontairement étroit. L’outil lit le certificat et la connexion négociée, et s’arrête là. Il ne récupère pas la page, ne note pas vos suites cryptographiques, ne teste pas les vulnérabilités de protocole et ne vous attribue pas un score sur cent. Pour un audit complet de la configuration serveur, Qualys SSL Labs est l’outil de référence et le fait en profondeur.

Pour les questions voisines : le test de fuite DNS indique quel résolveur répond pour vous, et la consultation d’IP dit à qui appartient une adresse donnée.

Les questions qui reviennent sur les certificats

Le site fonctionne dans mon navigateur mais cela indique que le certificat n'est pas fiable. Qui a raison ?

Les deux, et l’explication habituelle est une chaîne incomplète. Un serveur est censé envoyer son propre certificat ainsi que les intermédiaires qui le relient à une racine de confiance. S'il n'envoie que le sien, les navigateurs de bureau comblent souvent l'écart en récupérant eux-mêmes l'intermédiaire manquant – une fonctionnalité appelée récupération AIA. De nombreux navigateurs mobiles, clients API, applications Java et outils de ligne de commande ne le font pas. Ainsi, le site fonctionne pour vous et échoue pour un sous-ensemble de vos utilisateurs, ce qui est exactement le bug signalé comme "il ne fonctionne que pour certaines personnes". Ce vérificateur rapporte ce que le serveur a réellement envoyé.

Pourquoi mon certificat est-il valable pour www.example.com mais pas pour example.com ?

Parce qu'un caractère générique couvre exactement une étiquette, et uniquement celle la plus à gauche. *.example.com correspond à www.example.com et api.example.com, mais il ne correspond pas à example.com lui-même, ni à a.b.example.com. Le domaine nu doit être répertorié séparément dans les noms alternatifs du sujet. Il s’agit de l’une des erreurs de certificat les plus courantes et elle produit un site qui fonctionne avec le préfixe www et échoue sans celui-ci.

Combien de temps doit durer un certificat ?

Les certificats publics sont aujourd'hui plafonnés à 398 jours, et le secteur évolue nettement plus rapidement : le CA/Browser Forum a convenu d'un calendrier qui ramène la durée maximale à 47 jours d'ici 2029. La conséquence pratique est que le renouvellement manuel cesse d'être viable. Si le vôtre ne se renouvelle pas automatiquement via ACME ou votre fournisseur d'hébergement, cela vaut la peine d'être corrigé avant la date limite.

Quelle est la différence entre SSL et TLS ?

TLS est le protocole ; SSL est son prédécesseur et la dernière version de celui-ci est devenue obsolète en 2015. Tout ce qui fonctionne aujourd'hui est TLS. Le mot « SSL » survit dans les noms de produits, de certificats et de titres de poste par pure habitude, c'est pourquoi cette page est appelée un vérificateur SSL alors que chaque valeur qu'elle rapporte est TLS. Si un serveur propose réellement SSL 3.0, c'est une découverte en soi.

Un certificat valide signifie-t-il que le site est sûr ?

Non, et la confusion des deux constitue le malentendu le plus courant à propos des certificats. Un certificat prouve que vous parlez à celui qui contrôle ce nom de domaine et que personne entre les deux ne peut lire ou modifier la conversation. Cela ne dit rien sur l’honnêteté de cette personne. Les sites de phishing disposent régulièrement de certificats valides : ils sont gratuits et délivrés en quelques secondes. Le cadenas signifie crypté et non fiable.

Puis-je voir tous les certificats émis pour mon domaine ?

Oui, et cela en vaut la peine. Chaque certificat de confiance publique doit être enregistré dans Certificate Transparency, un ensemble de journaux publics en ajout uniquement que les navigateurs vérifient. Recherchez votre domaine sur crt.sh et vous verrez tous les certificats jamais émis pour celui-ci – c'est ainsi que vous en découvrirez un que vous n'avez pas demandé. Cela signifie également que les noms alternatifs de sujet sur vos certificats sont publics, donc mettre un nom d'hôte interne privé sur un certificat public publie ce nom d'hôte.

A certificate protects the connection between a visitor and one site. It does nothing about what the networks in between can see about which sites you visit at all — that metadata is visible even when every connection is encrypted. What your network can still see

Dernière vérification . Vous avez repéré quelque chose de dépassé ? Dites-le-nous.