Documentation/Déploiement/Installer un certificat SSL avec Certbot
Déploiement8 min2026-05-0522Populaire

Installer un certificat SSL avec Certbot

Configurer HTTPS gratuitement avec Let's Encrypt et Certbot sur un site Nginx.

Installer un certificat SSL avec Certbot

Prérequis

Avant d'installer le certificat SSL, vérifiez que :

  • Le domaine pointe vers l'adresse IP du VPS.
  • Nginx est installé.
  • Le site répond déjà en HTTP sur le port 80.
  • Les ports 80 et 443 sont ouverts.

Vérifiez la configuration Nginx :

bash
nginx -t

Rechargez Nginx si nécessaire :

bash
systemctl reload nginx

Installer Certbot

Mettez le système à jour :

bash
apt update && apt upgrade -y

Installez Certbot et le plugin Nginx :

bash
apt install certbot python3-certbot-nginx -y

Vérifiez l'installation :

bash
certbot --version

Vérifier le bloc Nginx

Votre configuration Nginx doit contenir le bon server_name.

Exemple :

nginx
server {
    listen 80;
    server_name exemple.fr www.exemple.fr;

    root /var/www/exemple.fr;
    index index.html index.php;
}

Testez :

bash
nginx -t
systemctl reload nginx

Générer le certificat SSL

Lancez Certbot avec Nginx :

bash
certbot --nginx -d exemple.fr -d www.exemple.fr

Certbot vous demandera une adresse e-mail et modifiera automatiquement la configuration Nginx.

Pour un seul domaine :

bash
certbot --nginx -d exemple.fr

Tester le site en HTTPS

Vérifiez dans un navigateur :

text
https://exemple.fr

Vous pouvez aussi tester depuis le VPS :

bash
curl -I https://exemple.fr

Vous devez obtenir une réponse en 200, 301 ou 302 selon votre configuration.


Vérifier le renouvellement automatique

Certbot installe normalement un renouvellement automatique.

Testez-le :

bash
certbot renew --dry-run

Si le test passe, le renouvellement automatique est fonctionnel.

Consultez les timers systemd :

bash
systemctl list-timers | grep certbot

Commandes utiles

Lister les certificats :

bash
certbot certificates

Renouveler manuellement :

bash
certbot renew

Supprimer un certificat :

bash
certbot delete

Afficher les logs :

bash
tail -f /var/log/letsencrypt/letsencrypt.log

Erreurs fréquentes

DNS problem: NXDOMAIN

Le domaine ne pointe pas correctement vers votre VPS. Vérifiez les enregistrements DNS.

Connection refused

Le port 80 ou 443 est fermé, ou Nginx n'écoute pas correctement.

Timeout during connect

Le pare-feu ou la configuration réseau bloque la validation Let's Encrypt.


Conclusion

Votre site dispose maintenant d'un certificat SSL Let's Encrypt et peut répondre en HTTPS. Pensez à vérifier régulièrement que le renouvellement automatique fonctionne.

Ce guide vous a aidé ?

Votre retour permet de repérer les guides à améliorer en priorité.