Certificats SSL/TLS : Sécuriser les connexions de votre site web
· 12 min de lecture
Table des matières
- Que sont les certificats SSL/TLS ?
- Comment fonctionne la poignée de main TLS
- Types de certificats et niveaux de validation
- Anatomie d'un certificat SSL/TLS
- Obtenir un certificat SSL
- Erreurs SSL courantes et solutions
- En-têtes de sécurité pour HTTPS
- Meilleures pratiques SSL/TLS
- Surveillance et renouvellement des certificats
- Optimisation des performances pour HTTPS
- Questions fréquemment posées
- Articles connexes
Que sont les certificats SSL/TLS ?
SSL (Secure Sockets Layer) et son successeur TLS (Transport Layer Security) sont des protocoles cryptographiques qui chiffrent la communication entre un navigateur web et un serveur. Lorsque vous voyez l'icône de cadenas dans la barre d'adresse de votre navigateur et « https:// » dans l'URL, un certificat SSL/TLS est à l'œuvre, protégeant les données circulant entre vous et le site web.
Un certificat SSL/TLS est un document numérique qui remplit trois fonctions critiques :
- Chiffrement — Brouille les données pour que seul le destinataire prévu puisse les lire, protégeant les informations sensibles comme les mots de passe, les numéros de carte de crédit et les données personnelles contre les espions
- Authentification — Prouve que le serveur est bien celui qu'il prétend être, empêchant les attaques de l'homme du milieu où un attaquant se fait passer pour un site web légitime
- Intégrité — Garantit que les données n'ont pas été altérées pendant le transit, assurant que ce que le serveur envoie est exactement ce que le client reçoit
Bien que « SSL » soit encore couramment utilisé dans le langage courant, le protocole SSL lui-même a été déprécié en raison de vulnérabilités de sécurité découvertes dans SSL 2.0 et SSL 3.0. Les sites web modernes utilisent TLS 1.2 ou TLS 1.3, qui offrent un chiffrement et des fonctionnalités de sécurité nettement plus robustes. Cependant, les certificats sont toujours largement appelés « certificats SSL » en raison d'une convention historique.
🛠️ Essayez par vous-même : Utilisez notre outil de vérification SSL pour vérifier instantanément l'état du certificat de n'importe quel site web, sa date d'expiration et sa configuration de sécurité.
L'importance des certificats SSL/TLS va au-delà de la simple sécurité. Les moteurs de recherche comme Google utilisent HTTPS comme signal de classement, ce qui signifie que les sites web sans certificats SSL peuvent être classés plus bas dans les résultats de recherche. De plus, les navigateurs modernes affichent des avertissements bien visibles pour les sites non-HTTPS, ce qui peut avoir un impact significatif sur la confiance des utilisateurs et les taux de conversion.
Comment fonctionne la poignée de main TLS
Avant que des données chiffrées ne soient échangées, le client (votre navigateur) et le serveur effectuent une poignée de main TLS pour établir une connexion sécurisée. Ce processus se produit en millisecondes mais implique plusieurs étapes sophistiquées qui garantissent que les deux parties peuvent communiquer en toute sécurité.
Comprendre la poignée de main TLS vous aide à résoudre les problèmes de connexion et à apprécier la complexité derrière cette simple icône de cadenas. Voici ce qui se passe lors d'une poignée de main TLS 1.2 typique :
- Client Hello — Votre navigateur envoie un message au serveur listant les versions TLS et les suites de chiffrement qu'il prend en charge, ainsi qu'un nombre aléatoire qui sera utilisé plus tard dans le processus de génération de clé
- Server Hello — Le serveur répond avec la version TLS et la suite de chiffrement choisies dans la liste du client, son propre nombre aléatoire et son certificat SSL/TLS contenant la clé publique
- Vérification du certificat — Votre navigateur vérifie le certificat du serveur par rapport à sa liste d'autorités de certification (CA) de confiance. Il vérifie la période de validité du certificat, la correspondance du nom de domaine et l'état de révocation
- Échange de clés — Le client génère un secret pré-maître, le chiffre avec la clé publique du serveur provenant du certificat et l'envoie au serveur. Seul le serveur peut le déchiffrer avec sa clé privée
- Génération des clés de session — Le client et le serveur utilisent les deux nombres aléatoires et le secret pré-maître pour générer indépendamment des clés de session identiques pour le chiffrement symétrique
- Messages de fin — Les deux parties envoient des messages « terminé » chiffrés pour vérifier que la poignée de main a réussi et qu'elles peuvent maintenant communiquer en toute sécurité
TLS 1.3, la dernière version, rationalise considérablement ce processus. Il réduit la poignée de main à un seul aller-retour au lieu de deux, améliorant la vitesse de connexion jusqu'à 40 %. Il supprime également la prise en charge des anciennes suites de chiffrement vulnérables et implémente la confidentialité persistante par défaut.
Conseil pro : Vous pouvez afficher les détails de la poignée de main TLS dans les outils de développement de votre navigateur. Dans Chrome, ouvrez DevTools, allez dans l'onglet Sécurité et cliquez sur « Afficher le certificat » pour voir la chaîne de certificats complète et les détails du protocole.
La poignée de main établit également quelle suite de chiffrement sera utilisée pour la session. Une suite de chiffrement est une combinaison d'algorithmes qui définissent comment le chiffrement, l'authentification et l'intégrité des messages seront gérés. Les suites de chiffrement modernes utilisent des algorithmes comme AES-256 pour le chiffrement, ECDHE pour l'échange de clés et SHA-256 pour le hachage.
Types de certificats et niveaux de validation
Tous les certificats SSL/TLS ne sont pas créés égaux. Ils varient en niveau de validation, portée de couverture et cas d'utilisation prévus. Le choix du bon type dépend des besoins de votre site web, de votre budget et du niveau de confiance que vous souhaitez établir avec les visiteurs.
Niveaux de validation
Les autorités de certification (CA) offrent trois niveaux de validation principaux, chacun nécessitant différentes quantités de vérification avant l'émission :
| Type de validation | Processus de vérification | Délai d'émission | Idéal pour |
|---|---|---|---|
| Validation de domaine (DV) | Vérifie uniquement la propriété du domaine via e-mail, DNS ou HTTP | Minutes à heures | Blogs, sites personnels, environnements de développement |
| Validation d'organisation (OV) | Vérifie la propriété du domaine plus l'identité de l'organisation via des vérifications du registre des entreprises | 1-3 jours | Sites web d'entreprise, sites corporatifs, intranets |
| Validation étendue (EV) | Vérification rigoureuse incluant l'existence légale, physique et opérationnelle de l'organisation | 1-2 semaines | Commerce électronique, banque, applications haute sécurité |
Les certificats de validation de domaine sont l'option la plus courante et la plus abordable. Ils sont parfaits pour la plupart des sites web et peuvent être obtenus gratuitement via des services comme Let's Encrypt. La CA vérifie simplement que vous contrôlez le domaine, généralement en vous demandant d'ajouter un enregistrement DNS ou de répondre à un e-mail envoyé à une adresse d'administrateur.
Les certificats de validation d'organisation fournissent une couche de confiance supplémentaire en vérifiant que votre entreprise est légitime et légalement enregistrée. Le nom de l'organisation apparaît dans les détails du certificat, que les utilisateurs peuvent consulter en cliquant sur l'icône de cadenas.
Les certificats de validation étendue se distinguaient autrefois en affichant le nom de l'organisation directement dans la barre d'adresse du navigateur avec un surlignage vert. Cependant, les principaux navigateurs ont supprimé cet indicateur visuel, rendant les certificats EV moins visuellement distinctifs qu'ils ne l'étaient autrefois. Ils fournissent toujours le plus haut niveau de validation, mais le retour sur investissement a diminué pour de nombreuses organisations.
Portée de couverture
Les certificats diffèrent également par le nombre de domaines et de sous-domaines qu'ils peuvent sécuriser :
- Domaine unique — Sécurise un domaine spécifique (par ex., exemple.com). Ne couvre pas www.exemple.com sauf s'il est explicitement inclus
- Wildcard — Sécurise un domaine et tous ses sous-domaines de premier niveau (par ex., *.exemple.com couvre blog.exemple.com, boutique.exemple.com, api.exemple.com)
- Multi-domaines (SAN) — Sécurise plusieurs domaines différents avec un seul certificat en utilisant des noms alternatifs de sujet (par ex., exemple.com, exemple.org, exemple.net)
- Multi-domaines Wildcard — Combine les capacités wildcard et multi-domaines pour sécuriser plusieurs domaines et leurs sous-domaines
Conseil rapide : Les certificats wildcard ne couvrent pas plusieurs niveaux de sous-domaines. Un certificat pour *.exemple.com sécurisera blog.exemple.com mais pas api.blog.exemple.com. Pour cela, vous auriez également besoin de *.blog.exemple.com.
Anatomie d'un certificat SSL/TLS
Un certificat SSL/TLS contient plusieurs champs importants que les navigateurs et les serveurs utilisent pour établir la confiance et sécuriser les connexions. Comprendre ces composants vous aide à résoudre les problèmes et à prendre des décisions éclairées lors de l'obtention de certificats.
Chaque certificat comprend les informations clés suivantes :
- Sujet — L'entité à laquelle le certificat est délivré, y compris le nom commun (CN) qui est généralement le nom de domaine
- Émetteur — L'autorité de certification qui a émis et signé le certificat
- Période de validité — Les dates de début et de fin pendant lesquelles le certificat est valide. Les certificats modernes ont une validité maximale de 398 jours (environ 13 mois)
- Clé publique — La clé publique cryptographique utilisée pour le chiffrement et l'échange de clés pendant la poignée de main TLS
- Algorithme de signature — L'algorithme utilisé par la CA pour signer le certificat (par ex., SHA-256 avec RSA)
- Noms alternatifs de sujet (SAN) — Domaines et sous-domaines supplémentaires couverts par le certificat
- Utilisation de la clé — Spécifie à quoi le certificat peut être utilisé (par ex., signature numérique, chiffrement de clé)
- Politiques de certificat — Références aux politiques et procédures de validation de la CA
Vous pouvez afficher les détails d'un certificat dans n'importe quel navigateur en cliquant sur l'icône de cadenas et en sélectionnant « Certificat » ou « Afficher le certificat ». Cela révèle la chaîne de certificats complète, qui comprend généralement trois niveaux :
- Certificat d'entité finale — Le certificat de votre site web
- Certificat(s) intermédiaire(s) — Un ou plusieurs certificats qui relient votre certificat à la racine
- Certificat racine — Le certificat racine de confiance de la CA qui est préinstallé dans les navigateurs et les systèmes d'exploitation
La chaîne de certificats est cruciale pour établir la confiance. Les navigateurs ne font pas confiance directement à votre certificat ; ils font confiance à la CA racine, et votre certificat prouve qu'il a été signé par cette autorité de confiance via les certificats intermédiaires.
Conseil pro : Configurez toujours votre serveur web pour envoyer la chaîne de certificats complète, y compris les certificats intermédiaires. Les intermédiaires manquants sont une cause fréquente d'erreurs SSL, en particulier sur les appareils mobiles qui peuvent ne pas avoir tous les certificats intermédiaires en cache.
Obtenir un certificat SSL
L'obtention d'un certificat SSL/TLS est devenue beaucoup plus facile et plus abordable ces dernières années, grâce à des initiatives comme Let's Encrypt et à des outils d'automatisation améliorés. Voici un guide complet pour sécuriser votre site web.
Options de certificats gratuits
Let's Encrypt a révolutionné SSL/TLS en offrant des certificats de validation de domaine gratuits et automatisés. C'est maintenant la plus grande autorité de certification au monde, sécurisant des centaines de millions de sites web. Les certificats sont valables 90 jours et peuvent être renouvelés automatiquement à l'aide d'outils comme Certbot.
Pour obtenir un certificat Let's Encrypt :
- Installez Certbot ou un autre client ACME sur votre serveur
- Exécutez la commande de demande de certificat pour votre serveur web (Apache, Nginx, etc.)
- Certbot vérifie automatiquement la propriété du domaine et installe le certificat
- Configurez le renouvellement automatique pour qu'il s'exécute tous les 60 jours
La plupart des principaux fournisseurs d'hébergement offrent désormais une installation SSL en un clic via leurs panneaux de contrôle, utilisant souvent Let's Encrypt en coulisses. Cela inclut des plateformes comme cPanel, Plesk et des fournisseurs cloud comme AWS, DigitalOcean et Cloudflare.
Autorités de certification commerciales
Bien que les certificats gratuits fonctionnent parfaitement pour la plupart des cas d'utilisation, vous pourriez c