Si vous exploitez un serveur web, le sécuriser avec HTTPS est une norme de base. Grâce au protocole ACME (Automated Certificate Management Environment), vous pouvez automatiser l’émission et le renouvellement des certificats SSL à l’aide d’outils tels que Certbot.

Dans ce guide, vous apprendrez à installer un certificat ACME sur Apache et NGINX à l’aide de Certbot sur différentes distributions Linux. Nous couvrirons les systèmes basés sur Debian et RHEL, inclurons des clarifications si nécessaire, et vous guiderons de l’installation au renouvellement automatisé.
Avant de commencer
Avant de commencer, vérifiez que
- Vous avez un accès sudo ou root à votre serveur
- Votre nom de domaine pointe vers l’adresse IP publique de votre serveur via DNS.
- Les ports 80 et 443 sont ouverts dans votre pare-feu ou dans le groupe de sécurité de votre fournisseur de cloud.
- Votre système est à jour et pris en charge
Étape 1 – Installer Certbot sur votre système d’exploitation
Certbot est le client ACME que nous utiliserons pour demander et renouveler des certificats SSL. Nous allons suivre les instructions d’installation pour chaque système d’exploitation pris en charge. Choisissez celui qui correspond à votre serveur.
Éditions Ubuntu LTS avec APT
Mettez à jour les paquets et installez Certbot avec votre plugin de serveur web préféré :
Apache :
sudo apt update
sudo apt install certbot python3-certbot-apache
NGINX :
sudo apt update
sudo apt install certbot python3-certbot-nginx
Systèmes Debian avec prise en charge de l’APT
Même processus que pour Ubuntu :
sudo apt update
sudo apt install certbot python3-certbot-apache # for Apache
sudo apt install certbot python3-certbot-nginx # for NGINX
Sur les systèmes Debian, l’installation de Certbot via APT est l’option la plus simple. Si vous préférez utiliser Snap (pour la dernière version), descendez à la section Snap ci-dessous.
AlmaLinux ou Rocky Linux (compatible RHEL)
Activez d’abord le référentiel EPEL :
sudo dnf install epel-releasesudo dnf update
Installez ensuite Certbot avec le plugin de votre choix :
Apache:
sudo dnf install certbot python3-certbot-apache
NGINX:
sudo dnf install certbot python3-certbot-nginx
Alternative : Installez Certbot via Snap (Tous les systèmes)
Si vous souhaitez obtenir la dernière version directement à partir de la source, utilisez Snap.
1. Installez Snap (s’il n’est pas déjà installé) :
sudo apt install snapd # Ubuntu/Debian
sudo dnf install snapd # AlmaLinux/Rocky
2. Installez et reliez Certbot :
sudo snap install core
sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
Optionnel : Installer Certbot avec pip (pour les configurations personnalisées)
Cette méthode est destinée aux utilisateurs avancés ou aux environnements personnalisés dans lesquels les paquets Snap ou OS ne sont pas disponibles. Vous ne devez l’utiliser que si
- Vous utilisez Certbot dans un environnement virtuel.
- Vous travaillez avec un minimum de conteneurs
- Votre système d’exploitation ne supporte pas proprement snapd, apt ou dnf
Pour installer Certbot à l’aide de pip :
python3 -m pip install --upgrade certbot
Ceci installe l’outil principal Certbot, mais ne met pas en place de renouvellement automatique, et n’installe pas les plugins Apache ou NGINX. Vous devrez tout configurer manuellement
Si vous n’êtes pas sûr de ce que cela signifie, revenez en arrière et utilisez les instructions APT, DNF ou Snap à la place.
Vous pouvez également installer des plugins (comme celui de NGINX) en utilisant pip :
python3 -m pip install certbot-nginx
N’utilisez pip que si l’environnement de votre système nécessite un contrôle total ou une isolation.
Étape 2 – Demander et installer votre certificat ACME
Il existe deux approches principales : l’une entièrement automatisée, l’autre spécifique au fournisseur, qui utilise des informations d’identification EAB (External Account Binding). Ces deux approches sont abordées ci-dessous.
Option A : Entièrement automatisé (ACME standard)
Laissez Certbot s’occuper de tout – demander, vérifier, installer et recharger la configuration de votre serveur.
Apache :
sudo certbot --apache
NGINX :
sudo certbot --nginx
On vous demandera :
- Quel(s) domaine(s) sécuriser
- S’il faut rediriger tout le trafic HTTP vers HTTPS
- Votre adresse électronique pour les rappels de renouvellement
Certbot s’occupe de la validation et de la configuration du serveur web en coulisses.
Option B : utiliser un fournisseur externe d’ACME (par exemple, Sectigo) avec EAB
Si votre fournisseur exige la liaison de compte externe, utilisez cette méthode :
sudo certbot --nginx \
--non-interactive \
--agree-tos \
--email [email protected] \
--server https://acme.sectigo.com/v2/DV \
--eab-kid YOUR_EAB_KID \
--eab-hmac-key YOUR_EAB_HMAC_KEY \
--domain example.com \
--domain www.example.com \
--cert-name my-website-cert
Remplacez --nginx par --apache pour l’installation d’Apache.
Vous recevrez --eab-kid et --eab-hmac-key de votre fournisseur de certificats lorsque vous enregistrerez un compte ACME.
Option C : Utiliser Certbot en mode manuel
Si vous ne souhaitez pas que Certbot modifie la configuration de votre serveur web, ou si vous utilisez une configuration personnalisée, vous pouvez demander un certificat manuellement.
Voici comment procéder en utilisant la méthode webroot :
sudo certbot certonly --webroot \
-w /var/www/html \
-d example.com \
-d www.example.com \
--email [email protected] \
--agree-tos \
--non-interactive
- –certonly indique à Certbot de délivrer le certificat mais de ne pas l’installer
- -w spécifie le répertoire racine de votre site web (doit être accessible au public via le port 80)
Après l’émission, configurez manuellement votre serveur web avec les fichiers de certificats situés dans :
/etc/letsencrypt/live/yourdomain.com/
Remarque : Ce chemin est utilisé quel que soit le fournisseur ACME que vous choisissez, sauf si vous modifiez le répertoire de stockage à l’aide des options avancées (–config-dir, –work-dir).
Veillez à recharger votre serveur web après avoir appliqué les chemins d’accès aux certificats à votre configuration.
Étape 3 – Vérifier que tout fonctionne
Visitez votre domaine dans un navigateur. Vous devriez voir le cadenas sécurisé ou simplement le chargement de la page sur Chrome. Pour vérifier que le serveur fonctionne :
sudo systemctl status apache2 # Debian/Ubuntu (Apache)
sudo systemctl status httpd # AlmaLinux/Rocky (Apache)
sudo systemctl status nginx # All systems (NGINX)
Et d’inspecter le certificat du terminal :
openssl s_client -connect yourdomain.com:443
Recherchez les dates valides et le nom de l’autorité de certification de votre fournisseur dans les résultats.
Étape 4 – Configurer le renouvellement automatique
Le protocole ACME supporte le renouvellement automatique des certificats, et Certbot est conçu pour gérer cela de manière transparente par le biais d’un timer systemd intégré ou d’une tâche cron. Cependant, le comportement du renouvellement dépend de votre fournisseur de certificat :
Les autorités de certification gratuites (comme Let’s Encrypt) délivrent des certificats valables pendant 90 jours et prennent en charge les contrôles de renouvellement fréquents.
Les AC commerciales (comme Sectigo ou Digicert) émettent souvent des certificats valables un an via ACME, mais suivent toujours le processus de renouvellement ACME. Certbot s’en occupe aussi automatiquement, mais moins fréquemment.
Vérifiez que le renouvellement est prévu
Certbot met en place un timer système ou un job cron par défaut. Vous pouvez confirmer qu’il est actif avec :
systemctl list-timers | grep certbot
Certbot vérifie ainsi vos certificats régulièrement (généralement deux fois par jour) et ne les renouvelle que lorsqu’ils se trouvent dans la fenêtre de renouvellement (généralement 30 jours avant l’expiration).
Dernières paroles
Certbot et le protocole ACME simplifient la gestion de SSL. Ce guide vous donne tout ce dont vous avez besoin pour installer un certificat ACME sur Apache et NGINX avec un renouvellement automatique, une validation claire, et un contrôle total en cas de besoin.
Economisez 10% sur les certificats SSL en commandant aujourd’hui!
Émission rapide, cryptage puissant, confiance de 99,99 % du navigateur, assistance dédiée et garantie de remboursement de 25 jours. Code de coupon: SAVE10

