🔐
infrastructure

SSL/TLS

Protocoles de chiffrement pour sécuriser les communications sur Internet (HTTPS).

Définition

SSL (Secure Sockets Layer) et son successeur TLS (Transport Layer Security) sont des protocoles cryptographiques qui securisent les communications sur Internet. Ils fournissent le chiffrement, l'authentification et l'intégrité des données pour le protocole HTTPS.

Bien que SSL soit obsolete depuis 2015 (dernière version : SSL 3.0), le terme "SSL" est encore utilise par habitude. En pratique, tout le monde utilise TLS 1.2 ou TLS 1.3.

Comment fonctionne le TLS Handshake ?

Quand votre navigateur se connecte à un site HTTPS :

  1. Client Hello : le navigateur envoie les versions TLS et cipher suites supportees
  2. Server Hello : le serveur choisit la version et la cipher suite, envoie son certificat
  3. Vérification : le navigateur vérifie le certificat auprès de l'autorité de certification (CA)
  4. Échange de clés : échange Diffie-Hellman pour générer une cle de session
  5. Session sécurisée : toutes les données sont chiffrees avec la cle de session (chiffrement symétrique AES)

En TLS 1.3, ce processus est réduit a 1 aller-retour (contre 2 en TLS 1.2), ameliorant la latence.

Types de certificats

Type Validation Délai Prix
DV (Domain Validation) Seul le domaine est vérifie Minutes Gratuit (Let's Encrypt)
OV (Organization Validation) Organisation verifiee Jours 50-200 EUR/an
EV (Extended Validation) Vérification approfondie Semaines 200-1000 EUR/an
Wildcard *.exemple.com Variable Variable

Let's Encrypt

Let's Encrypt fournit des certificats DV gratuits et automatises. C'est aujourd'hui le standard :

# Avec Certbot (le plus courant)
sudo certbot --nginx -d exemple.com -d www.exemple.com

# Renouvellement automatique
sudo certbot renew --dry-run

Bonnes pratiques

  • TLS 1.3 minimum (désactiver TLS 1.0 et 1.1)
  • HSTS (HTTP Strict Transport Security) : forcer HTTPS
  • OCSP Stapling : accélérer la vérification de certificat
  • Forward Secrecy : protéger les sessions passees même si la cle privée est compromise
  • Renouvellement automatique : Let's Encrypt expire tous les 90 jours

Configuration Nginx sécurisée

server {
    listen 443 ssl http2;
    ssl_certificate /etc/letsencrypt/live/exemple.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/exemple.com/privkey.pem;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;
    add_header Strict-Transport-Security "max-age=63072000" always;
}

Besoin d'aide technique ?

Decrivez votre projet pour des conseils personnalises par nos experts.

Recevoir des conseils

Questions fréquentes

Quelle est la difference entre SSL et TLS ?
TLS est le successeur de SSL. SSL est obsolete depuis 2015. Quand on dit 'certificat SSL', on parle en realite de TLS. Utilisez TLS 1.2 minimum, idealement TLS 1.3.
Let's Encrypt est-il fiable pour la production ?
Oui, absolument. Let's Encrypt securise plus de 300 millions de sites web. Les certificats DV sont identiques en securite a ceux payants. La seule limite : pas de validation d'organisation (OV/EV).
Comment verifier qu'un site utilise TLS correctement ?
Utilisez SSL Labs (ssllabs.com/ssltest) pour analyser la configuration TLS d'un site. Visez la note A ou A+. Verifiez aussi les headers HSTS.

Pages liées

Chaque semaine, le meilleur de la tech française

Tendances, salaires, outils et opportunités — directement dans votre boîte mail.

Gratuit. Desabonnement en un clic. Pas de spam.