Qu'est-ce qu'un Certificat SSL ?
Un certificat SSL (Certificat Secure Sockets Layer) est un certificat numérique qui authentifie l'identité d'un site web et établit une connexion chiffrée entre un serveur web et un navigateur. Bien que SSL ait été remplacé par TLS (Transport Layer Security), le terme « certificat SSL » reste largement utilisé. Ces certificats sont essentiels pour les sites web HTTPS, affichant l'icône de cadenas qui signale la sécurité aux visiteurs.
Comment Fonctionnent les Certificats SSL
Le Processus de Poignée de Main
1. Browser requests secure connection
2. Server sends SSL certificate + public key
3. Browser verifies certificate with CA
4. Browser creates session key, encrypts with public key
5. Server decrypts with private key
6. Encrypted session established
Types de Certificats
Par Niveau de Validation
| Type | Validation | Temps | Niveau de Confiance | Cas d'Utilisation |
|---|---|---|---|---|
| DV (Domaine) | Propriété du domaine uniquement | Minutes | Basique | Blogs, petits sites |
| OV (Organisation) | Vérification commerciale | 1-3 jours | Moyen | Sites commerciaux |
| EV (Étendu) | Vérification approfondie | 1-2 semaines | Maximal | Banques, e-commerce |
Par Couverture
| Type | Couvre | Exemple |
|---|---|---|
| Domaine unique | Un domaine | example.com |
| Wildcard | Domaine + tous les sous-domaines | *.example.com |
| Multi-domaine (SAN) | Domaines spécifiques multiples | example.com, example.org |
Autorités de Certification (AC)
Entités de confiance qui émettent les certificats :
- Commercial : DigiCert, Sectigo, GlobalSign
- Gratuit : Let's Encrypt, ZeroSSL
- Fournisseurs cloud : AWS Certificate Manager, Cloudflare
Obtenir un Certificat SSL
Options Gratuites (Let's Encrypt)
# Using Certbot
sudo certbot --nginx -d example.com -d www.example.com
# Auto-renewal
sudo certbot renew --dry-run
Processus d'Achat Commercial
1. Générer un CSR (Certificate Signing Request - Demande de Signature de Certificat)
2. Soumettre à l'Autorité de Certification
3. Effectuer la validation (DV/OV/EV)
4. Télécharger et installer le certificat
Configuration DNS (Enregistrements CAA)
Spécifier quels AC peuvent émettre des certificats :
example.com. CAA 0 issue "letsencrypt.org"
example.com. CAA 0 issuewild "letsencrypt.org"
Composants de Certificat
| Composant | Objectif |
|---|---|
| Clé publique | Chiffre les données envoyées au serveur |
| Clé privée | Déchiffre les données (à garder secrète !) |
| Chaîne de certificat | Liens vers l'AC racine de confiance |
| Période de validité | Date d'expiration (généralement 90 jours - 1 an) |
Meilleures Pratiques
1. Utiliser TLS 1.2+ : Désactiver les protocoles plus anciens
2. Automatiser le renouvellement : Éviter les pannes d'expiration
3. Sécuriser la clé privée : Ne jamais partager ou exposer
4. Utiliser des chiffres forts : Configurer des suites de chiffrement sécurisées
5. Implémenter HSTS : Forcer les connexions HTTPS
6. Surveiller l'expiration : Définir des alertes avant l'expiration
Problèmes Courants
- Incompatibilité de certificat : Le domaine ne correspond pas au certificat
- Certificat expiré : Période de validité dépassée
- Chaîne incomplète : Certificats intermédiaires manquants
- Contenu mixte : Ressources HTTP sur la page HTTPS
Les certificats SSL sont fondamentaux pour la sécurité web, permettant les communications chiffrées qui protègent les données sensibles lors de la transmission.