Ton site a le cadenas dans le navigateur, donc « il est déjà sécurisé ». C'est la phrase qu'on entend le plus et la plus trompeuse. Le cadenas dit seulement qu'il existe un certificat valide pour ce domaine : il ne dit rien des versions du protocole que tu acceptes, des chiffrements que tu négocies, de la complétude de la chaîne ni de la date d'expiration. C'est pour ça que les outils d'analyse donnent une note, de A+ à F, et que deux sites avec un cadenas peuvent être aux antipodes. Ce guide explique ce que mesure chaque partie de cette note, quelle configuration est raisonnable en 2026 et comment vérifier la tienne avec deux commandes.
Ce qu'évalue une note TLS
Les outils sérieux combinent sept vérifications. Les deux premières sont éliminatoires : si elles échouent, la note tombe à F sans regarder le reste.
- Certificat valide : émis par une autorité reconnue, pour le bon domaine, dans sa période de validité.
- Chaîne complète : le certificat intermédiaire qui relie le tien à l'autorité racine est envoyé avec lui.
- Versions du protocole : quels TLS tu acceptes et lesquels tu refuses.
- Chiffrements : quels algorithmes tu proposes et dans quel ordre.
- Redirection : si HTTP mène à HTTPS sur tout le site.
- HSTS : si tu dis au navigateur de ne plus jamais utiliser HTTP.
- Vulnérabilités connues : renégociation non sécurisée, compression, les attaques à nom propre de la décennie passée.
Versions : seulement 1.2 et 1.3
TLS 1.0 et 1.1 sont obsolètes depuis 2020 et les navigateurs les refusent. Si ton serveur les accepte encore, la note baisse parce qu'un attaquant peut forcer un client ancien à les utiliser. TLS 1.2 est le minimum acceptable ; TLS 1.3 est le standard actuel : moins d'allers-retours à la connexion, chiffrements modernes obligatoires et aucune des options non sûres des versions précédentes. La bonne configuration aujourd'hui, c'est d'accepter 1.2 et 1.3 et rien d'autre. Si tu utilises Vercel, Netlify, Cloudflare ou un hébergement géré, c'est déjà le cas ; si tu administres ton propre nginx ou un équilibreur de charge, vérifie-le.
Chiffrements : ce qui compte vraiment
Le chiffrement définit comment la clé est échangée et comment le trafic est protégé. Deux choses font la différence. La première, c'est la confidentialité persistante (les suites qui commencent par ECDHE) : si quelqu'un vole ta clé privée à l'avenir, il ne peut pas déchiffrer le trafic qu'il a enregistré avant. La seconde, c'est d'éviter les algorithmes cassés ou faibles : RC4, 3DES, les vieux modes CBC et l'échange de clé RSA pur. Une liste raisonnable pour TLS 1.2 se réduit à ECDHE avec AES-GCM ou ChaCha20 ; en TLS 1.3, le protocole n'autorise de toute façon que des chiffrements modernes, une raison de plus de l'activer.
La chaîne de certificats : la faille invisible
Ton certificat est signé par un intermédiaire, et l'intermédiaire est signé par une racine que les appareils connaissent déjà. Le serveur doit envoyer ton certificat et l'intermédiaire. Si tu oublies l'intermédiaire, Chrome sur ordinateur le télécharge tout seul et tu ne verras aucune erreur ; mais beaucoup de mobiles, curl, les bots d'IA et les intégrations de paiement échouent avec un « certificat non fiable ». C'est la faille la plus courante sur les serveurs configurés à la main et la plus difficile à remarquer parce que « chez moi ça marche ». Vérifie-la comme ça :
openssl s_client -connect tondomaine.com:443 -servername tondomaine.com </dev/null 2>/dev/null | grep -E "s:|i:|Verify return"
Au moins deux certificats doivent apparaître dans la chaîne et la vérification doit se terminer par Verify return code: 0 (ok).
Domaine et noms alternatifs
Le certificat doit couvrir exactement les noms que tu utilises : tondomaine.com et www.tondomaine.com sont deux noms différents. Un certificat pour la racine seule fait planter www, et inversement. Les certificats actuels listent plusieurs noms dans le champ SAN, et les jokers (*.tondomaine.com) couvrent les sous-domaines d'un niveau. Vérifie aussi les sous-domaines oubliés : api, app, staging avec des certificats expirés, c'est un classique.
Expiration : de plus en plus courte
Les certificats Let's Encrypt durent 90 jours, le maximum autorisé par les navigateurs aujourd'hui est de 398 et l'industrie a convenu de le réduire progressivement jusqu'à 47 jours en 2029. Le message est clair : le renouvellement doit être automatique. Les plateformes gérées le font toutes seules ; si tu as ton propre serveur, utilise un client ACME avec renouvellement planifié et, surtout, une alerte externe qui te prévient s'il reste moins de 14 jours. La panne pour certificat expiré est la plus bête et la plus fréquente.
Redirection et HSTS
Tout le trafic HTTP doit rediriger vers HTTPS avec un 301, sur toutes les routes, pas seulement sur l'accueil. Et une fois que tout fonctionne en HTTPS, l'en-tête Strict-Transport-Security dit au navigateur de ne plus réessayer HTTP pendant la durée que tu indiques, ce qui élimine la petite brèche de la première requête. Avec includeSubDomains et preload, tu peux inclure ton domaine dans la liste que les navigateurs embarquent d'usine. C'est la différence habituelle entre un A et un A+. Comment ça se configure, dans les en-têtes de sécurité HTTP.
Contenu mixte
Un détail qui n'affecte pas la note du certificat mais bien le cadenas : si ta page HTTPS charge une image, un script ou une police en HTTP, le navigateur le bloque ou marque la page comme non sécurisée. Ça vient souvent d'URL copiées d'un vieux template. Cherche http:// dans le code source et remplace par des chemins relatifs ou du HTTPS.
Si tu es sur une plateforme gérée
Vercel, Netlify, Cloudflare Pages, Railway ou Render émettent et renouvellent le certificat, imposent des versions modernes et choisissent des chiffrements sûrs. Tu n'as rien à toucher de tout ça. Ce qui reste à toi : ajouter HSTS, éliminer le contenu mixte, rediriger les domaines alternatifs et surveiller les sous-domaines qui pointent ailleurs.
Pourquoi ça compte au-delà de la note
Un TLS faible permet d'intercepter des sessions sur des réseaux publics, et un certificat mal configuré fait planter ton site sur des appareils que tu ne vois pas. Les processeurs de paiement exigent TLS 1.2 au minimum pour respecter PCI DSS. Google utilise HTTPS comme signal de positionnement et les navigateurs marquent « non sécurisé » tout ce qui n'en a pas. Et, plus prosaïquement, un certificat expiré un samedi matin, c'est un site hors ligne jusqu'à ce que quelqu'un s'en aperçoive.
Le vérifier en trente secondes
curl -sIL http://tondomaine.com | grep -iE "^(HTTP|location|strict-transport)"
openssl s_client -connect tondomaine.com:443 -servername tondomaine.com -tls1_1 </dev/null 2>&1 | grep -iE "alert|error" | head -1
La première doit afficher un 301 vers https:// puis l'en-tête HSTS. La seconde tente de se connecter en TLS 1.1 et doit échouer : si elle se connecte, tu acceptes une version obsolète.
Scanaris vérifie ton TLS à chaque scan
Scanaris contrôle les versions du protocole, les chiffrements, la chaîne complète, les noms du certificat, les jours avant expiration, la redirection et HSTS, et te prévient par e-mail avant que le certificat n'expire. Chaque constat vient avec un fix prompt contenant la configuration exacte pour ton serveur ou ta plateforme. Ce sont des vérifications en lecture seule : il se connecte à ton site exactement comme le ferait un navigateur. Pour voir tout ce qu'il vérifie en trente secondes, lis comment savoir si ton site est sécurisé en 5 minutes.
Questions fréquentes
Quelle différence entre SSL et TLS ?
SSL est l'ancien nom du protocole, retiré il y a des années parce que non sûr. Ce qu'on utilise aujourd'hui, c'est TLS, mais les gens continuent de dire « certificat SSL ». En pratique, quand tu lis SSL, pense TLS.
Ai-je besoin d'un certificat payant ?
Non. Les certificats gratuits de Let's Encrypt ou ceux qu'émet ta plateforme chiffrent exactement pareil. Les payants ajoutent une validation de l'organisation ou des garanties, pas plus de sécurité dans la connexion.
Pourquoi j'ai un B si mon certificat est valide ?
Généralement parce que tu acceptes TLS 1.0 ou 1.1, que tu proposes des chiffrements faibles ou que tu n'envoies pas l'en-tête HSTS. Le certificat n'est qu'une des sept choses examinées.