Let's Encrypt est une autorité de certification (CA) qui fournit gratuitement des certificats SSL/TLS en utilisant un processus entièrement automatisé qui élimine la création, la validation, l'installation et le renouvellement manuels des certificats…
Une fois générés, vous pourrez installer ces certificats sur vos serveurs web pour servir le trafic HTTPS à vos utilisateurs et à votre public…
Pour obtenir vos certificats gratuits de wildcard à installer sur votre serveur web, suivez les étapes ci-dessous.
Avant de générer vos certificats de wildcard gratuits, vous devez d'abord vous assurer que certbot est installé et fonctionne…
Pour l'installer, exécutez les commandes ci-dessous :
# apt update # apt-get install letsencrypt
Les commandes ci-dessus installeront l'outil certbot et toutes les dépendances qui seront autorisées pour faire fonctionner l'outil.
Maintenant que l'outil est installé, vous pouvez procéder à la génération des certificats…
Let's Encrypt propose de nombreux moyens de valider que vous êtes le propriétaire du domaine pour lequel vous souhaitez fournir des certificats SSL… Vous ne pourrez pas générer de certificats si vous ne pouvez pas prouver que vous êtes propriétaire du domaine pour lequel vous souhaitez obtenir des certificats…
Pour les certificats wildcard, la seule méthode de challenge acceptée par Let's Encrypt est le challenge DNS, que nous pouvons invoquer via le drapeau preferred-challenges=dns…
Donc, pour générer un certificat wildcard pour le domaine *.exemple.com, vous exécutez les commandes ci-dessous.
Vous devez également inclure le domaine nu lors de l'enregistrement.
# certbot certonly --manual --preferred-challenges=dns --email admin@example.com --server https://acme-v02.api.letsencrypt.org/directory --agree-tos -d example.com -d *.example.com
Les options de commande :
Après avoir exécuté la commande ci-dessus, Let's Encrypt fournira une chaîne de caractère pour ajouter un enregistrement de type text dans votre DNS.
Exemple :
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator manual, Installer None ------------------------------------------------------------------------------- Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about EFF and our work to encrypt the web, protect its users and defend digital rights. ------------------------------------------------------------------------------- (Y)es/(N)o: y Obtaining a new certificate Performing the following challenges: dns-01 challenge for example.com ------------------------------------------------------------------------------- NOTE: The IP of this machine will be publicly logged as having requested this certificate. If you're running certbot in manual mode on a machine that is not your server, please ensure you're okay with that. Are you OK with your IP being logged? ------------------------------------------------------------------------------- (Y)es/(N)o: y ------------------------------------------------------------------------------- Please deploy a DNS TXT record under the name _acme-challenge.example.com with the following value: x4MrZ6y-JqFJQRmq_lGi9ReRQHPa1aTC9J2O7wDKzq8 Before continuing, verify the record is deployed.
Allez sur le portail de votre fournisseur DNS et ajoutez un enregistrement de text pour la chaîne fournie ci-dessus et sauvegardez…
Après les changements efféctués et si Let's encrypt est en mesure de valider que vous possédez le domaine, vous devriez voir un message réussi comme ci-dessous :
IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/example.com/privkey.pem Your cert will expire on 2020-01-09. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run "certbot renew" - Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Le certificat wildcard est maintenant généré et prêt à être utilisé…
Pour vérifier que le certificat est prêt, exécutez les commandes ci-dessous :
# certbot certificates
Il devrait afficher un écran similaire à celui ci-dessous :
Found the following certs:
Certificate Name: example.com
Domains: *.example.com
Expiry Date: 2020-01-05 07:48:04+00:00 (VALID: 85 days)
Certificate Path: /etc/letsencrypt/live/example.com/fullchain.pem
Private Key Path: /etc/letsencrypt/live/example.com/privkey.pem
Les certificats de Let's Encrypt sont valables 90 jours… Vous voudrez configurer une cron pour automatiser le processus de renouvellement.
Pour ce faire, ouvrez crontab et ajoutez l'entrée ci-dessous :
#crontab -e
Ensuite, ajoutez la ligne ci-dessous et enregistrez.
0 1 * * * /usr/bin/certbot renew >> /var/log/letsencrypt/renew.log