Tu choisis les services que nous pouvons activer pour l’analyse, la personnalisation et les contenus externes.
Nous utilisons des cookies et des technologies similaires sur notre site pour personnaliser les contenus, intégrer des médias externes et mieux comprendre l’utilisation de certaines sections.
Cookies nécessaires
Ces entrées assurent des fonctions essentielles comme la sécurité, la stabilité et le traitement des formulaires.
Tes données peuvent être traitées avec ton consentement ou sur la base d’intérêts légitimes. Dans les paramètres des cookies, tu peux refuser chaque catégorie facultative ou l’autoriser individuellement.
Certains services traitent des données personnelles dans des pays tiers. En donnant ton consentement, tu acceptes également ce transfert. Pour en savoir plus, consulte notre politique de confidentialité.
Tu pourras rouvrir et modifier ta sélection à tout moment. · 1.0.2
Configurer Certbot sur un serveur Linux – Sécurise tes sites Web avec Let's Encrypt SSL
Découvre comment sécuriser ton site Web avec des certificats SSL gratuits via Certbot et Let's Encrypt pour protéger les transferts de données → En savoir plus
10 novembre 20267 min de lecture6 Vues0 utile
Introduction
Les certificats SSL sont essentiels sur Internet et permettent de transmettre des données en toute sécurité entre un client et un hôte. Dans ce guide, nous te montrons comment configurer l'outil open source Certbot pour demander des certificats SSL gratuits auprès de l'autorité de certification à but non lucratif Let's Encrypt.
FAQ
Questions fréquentes
Tu as besoin d'un serveur Linux, de ton propre domaine et d'un accès à ses paramètres DNS. Pour chaque domaine racine ou sous-domaine, crée un enregistrement DNS A qui pointe vers l'adresse IP de ton serveur Linux.
Exécute la commande sudo apt install certbot.
Certbot est un outil open source qui te permet de demander des certificats SSL gratuits auprès de Let's Encrypt, une autorité de certification à but non lucratif.
Nginx est recommandé, car c'est un serveur Web open source performant et populaire. Consulte le guide Linux Reverse Proxy pour obtenir de l'aide sur sa configuration.
Avis
Cet article t’a-t-il été utile ?
Ton avis nous aide à mieux définir les priorités et à améliorer les contenus.
0 de 0 Les personnes ayant donné leur avis ont trouvé cet article utile.
Aide personnalisée
Le guide ne suffit pas ?
Notre équipe d’assistance ZAP connaît ton produit : décris brièvement ta demande et nous t’aiderons personnellement.
Zappy connaît ce guide et te répond directement dans le chat.
Navigation
Logiciel
Préparation
Pour utiliser Certbot, tu as besoin d'un serveur Linux et d'un nom de domaine qui t'appartient. Tu dois pouvoir accéder aux paramètres DNS du domaine et tu dois créer un enregistrement DNS A pour chaque domaine racine ou sous-domaine que tu souhaites utiliser. Cet enregistrement doit pointer vers l'adresse IP de ton serveur Linux.
Certbot propose également des plugins supplémentaires qui te permettent de configurer des certificats pour tes domaines en un seul clic. Ils sont compatibles avec différents serveurs Web, comme Nginx ou Apache. Nous te recommandons Nginx, un serveur Web open source performant et populaire. Pour obtenir de l'aide sur la configuration, consulte notre guide Linux Reverse Proxy.
Installation
Commence par installer le paquet open source Certbot, qui te permet de demander des certificats SSL gratuits auprès de Let's Encrypt.
Code
sudo apt install certbot
Une fois Certbot installé, tu peux demander des certificats pour ton ou tes domaines. Let's Encrypt et Certbot proposent différentes méthodes de validation ACME pour vérifier que le domaine t'appartient.
Nous te recommandons vivement la méthode standard HTTP-01, car elle permet le renouvellement automatique. Si tu rencontres des problèmes avec cette méthode, tu peux utiliser la méthode DNS-01, qui est manuelle et ne prend pas en charge le renouvellement automatique, car elle repose sur la validation d'un enregistrement DNS TXT.
Conseil
Utiliser des plugins pour serveur Web
Si tu utilises un serveur Web comme Nginx ou Apache, ou ton propre serveur Web, nous te recommandons de passer directement à la section Plugins pour serveur Web ci-dessous. Tu y découvriras comment utiliser des plugins Certbot supplémentaires pour ces serveurs Web afin d'installer et de demander des certificats en un clic, sans avoir à arrêter le serveur Web.
Défi HTTP-01
Certbot étant installé, tu peux maintenant demander des certificats pour ton ou tes domaines. Dans cet exemple, nous utilisons le mode autonome, dans lequel Certbot démarre un serveur Web temporaire pour effectuer les opérations nécessaires. Tu dois donc ouvrir le port 80 dans ton pare-feu et vérifier qu'aucun autre serveur Web ni service ne l'utilise, afin que le serveur Web temporaire puisse démarrer et que le défi puisse être récupéré (d'où le nom HTTP du défi).
Dans la commande suivante, tu utilises le paramètre --standalone pour indiquer à Certbot que tu souhaites utiliser le serveur Web temporaire.
Après avoir exécuté la commande, un premier assistant interactif peut s'ouvrir. Tu devras alors saisir une adresse e-mail pour les communications concernant les certificats, puis choisir si tu souhaites t'inscrire à une liste de diffusion et accepter les conditions générales.
Certbot génère alors un défi ACME et l'héberge sur le serveur Web temporaire. Les serveurs de Let's Encrypt essaient ensuite de le récupérer depuis ton serveur. Si la vérification réussit, les certificats sont créés et enregistrés dans /etc/letsencrypt/live/[deine_domain].
Tu peux maintenant utiliser les certificats SSL partout où tu en as besoin. Il te suffit d'indiquer le chemin local vers les certificats.
Enregistrement DNS TXT
Si tu rencontres des problèmes pour valider ton domaine avec la méthode HTTP-01, tu peux utiliser la méthode DNS-01. Tu devras alors créer un enregistrement DNS TXT avec une valeur fournie par Let's Encrypt.
Comme indiqué précédemment, cette méthode ne prend pas en charge le renouvellement automatique, sauf si tu configures ta propre infrastructure à cet effet. Nous te recommandons donc d'utiliser la méthode HTTP-01 dans la mesure du possible.
Dans la commande suivante, tu utilises le paramètre --preferred-challenges pour indiquer à Certbot que tu souhaites utiliser la méthode DNS-01.
Après avoir exécuté la commande, un premier assistant interactif peut s'ouvrir. Tu devras alors saisir une adresse e-mail pour les communications concernant les certificats, puis choisir si tu souhaites t'inscrire à une liste de diffusion et accepter les conditions générales.
Certbot t'indique alors comment créer un enregistrement DNS TXT avec une valeur spécifique. Le nom d'hôte cible est généralement _acme-challenge. suivi de ton domaine (dans cet exemple, il s'agirait de _acme-challenge.zapdocs.example.com). Tu trouveras la valeur dans la console.
Après avoir créé l'enregistrement, appuie sur Entrée pour continuer. Si tout est correct et que l'enregistrement s'est propagé, les certificats sont créés et enregistrés dans /etc/letsencrypt/live/[deine_domain].
Infos
Patiente, car la propagation des modifications DNS peut prendre un peu de temps. Elle ne dure généralement que quelques minutes, mais peut être plus longue dans de rares cas.
Tu peux maintenant utiliser les certificats SSL partout où tu en as besoin. Il te suffit d'indiquer le chemin local vers les certificats.
Renouvellement automatique
Dans la plupart des cas, Certbot configure automatiquement le renouvellement de tes certificats, soit avec une tâche Cron, soit avec un minuteur systemd. Tu peux le tester avec la commande suivante, qui simule le renouvellement sans l'effectuer réellement :
Code
certbot renew --dry-run
Conseil
Comme indiqué précédemment, la méthode DNS-01 ne prend pas en charge le renouvellement automatique avec Certbot, sauf si tu configures ta propre infrastructure à cet effet. Nous te recommandons donc d'utiliser la méthode HTTP-01 dans la mesure du possible.
Si tout fonctionne comme prévu, le test devrait réussir. Pour vérifier ou modifier le renouvellement automatique, recherche la tâche Cron ou le minuteur correspondant dans /etc/crontab/, /etc/cron.*/* ou avec systemctl list-timers.
Configuration manuelle d'une tâche Cron
Si le renouvellement automatique n'est pas configuré, tu peux créer toi-même une tâche Cron. Pour cela, ouvre la crontab avec crontab -e. Si c'est la première fois que tu le fais, tu devras choisir un éditeur : sélectionne la première option, /bin/nano.
Dans l'éditeur Nano qui s'ouvre, ajoute la ligne suivante pour effectuer le renouvellement chaque jour à 6 h du matin, heure locale :
Code
0 6 * * * certbot renew
Enregistre le fichier et quitte Nano avec CTRL + X, confirme avec Y, puis appuie sur ENTER.
Conclusion
Tu as configuré Certbot pour ton ou tes domaines, que ce soit en mode autonome, avec Webroot ou à l'aide de l'un des plugins. Ton site Web peut ainsi transmettre des données en toute sécurité via HTTPS. Si tu as des questions ou rencontres des problèmes, notre équipe d'assistance est là pour t'aider tous les jours ! 🙂
Hébergement de serveurs dès 2,49 € / mois, mise en ligne immédiate, protection DDoS incluse.
Certbot propose plusieurs plugins supplémentaires pour les serveurs Web qui simplifient encore la gestion des certificats, car ils modifient automatiquement les blocs de configuration du serveur concernés. Pour utiliser un plugin, il te suffit d'ajouter le paramètre correspondant à ta commande certbot.
Les deux méthodes utilisent le défi HTTP-01 et fonctionnent de manière similaire. Lorsqu'un plugin est utilisé, Certbot recherche d'abord le bloc de configuration du serveur qui contient le domaine demandé comme server_name. Certbot génère ensuite un défi ACME et ajoute temporairement un bloc location /.well-known/acme-challenge/... à la configuration du bloc du serveur.
Les serveurs de Let's Encrypt essaient ensuite de récupérer le défi depuis ton serveur. Si la vérification réussit, ton certificat est généré et la configuration du bloc du serveur Web est automatiquement modifiée pour utiliser HTTPS (port 443) et indiquer les chemins vers les nouveaux certificats.
Plugin Nginx
Avant d'utiliser le plugin, vérifie qu'il est installé.
Code
sudo apt install python3-certbot-nginx
Pour utiliser le plugin Nginx, ajoute le paramètre --nginx à ta commande, comme indiqué ci-dessous.
Pour désactiver les modifications automatiques des blocs de configuration par Certbot, ajoute le paramètre certonly, par exemple certbot certonly.
Plugin Webroot
Si tu utilises ton propre serveur Web local, qui n'est pas basé sur un logiciel de serveur Web traditionnel, tu peux choisir la méthode Webroot pour le laisser fonctionner sans avoir à l'arrêter.
Pour utiliser le plugin Webroot, ajoute le paramètre --webroot à ta commande. Tu dois également indiquer le chemin vers le répertoire racine de ton serveur Web avec -w [dein_webserver_pfad] (abréviation de --webroot-path).
Un chemin Webroot courant est /var/www/html. Tu peux aussi utiliser cette méthode avec des serveurs Web comme Nginx ou Apache si tu souhaites les laisser fonctionner sans appliquer automatiquement les modifications aux blocs de configuration, comme le font les plugins natifs.