Aller au contenu

mon petit script pour renouveler mes certificats Let’s Encrypt


Ldfa

Messages recommandés

Après avoir passé ce blog et d’autres sites web dont je gère en full HTTPS grâce à Let’s Encrypt, j’ai écrit un petit script bash pour automatiser le renouvellement de mes certificats tous les 2 mois, avant les 90 jours de limite de validité.

httpsmemolinuxletsencrypt

Avant d’écrire le script d’automatisation de renouvellement, il faut passer par une étape de configuration en créant un fichier avec l’extension .ini pour chaque domaine (site web).

De plus, pour être notifié par mail pensez à configurer un MTA.

Configuration d’un fichier .ini pour chaque domaine

nano /opt/letsencrypt/memo-linux.ini
rsa-key-size = 4096
email = admin@memo-linux.com
domains = memo-linux.com,www.memo-linux.com,cdn-01.memo-linux.com,cdn-02.memo-linux.com
text = True
authenticator = standalone
renew-by-default = True
agree-tos = True
exemple pour un second domaine :
nano /opt/letsencrypt/autre-site.ini
rsa-key-size = 4096
email = admin@autre-site.tld
domains = autre-site.tld,cdn.autresite.tld
text = True
authenticator = standalone
renew-by-default = True
agree-tos = True

Quelques explications :

  • rsa-key-size : Chiffrement de la clé sur 4096bits.
  • email : l’e-mail de destination pour être notifié du renouvellement.
  • domains : le domaine ou sous domaine généré(s) avec ce certificat
  • text : pour exécuter letsencrypt-auto uniquement en lignes de commandes.
  • authenticator : méthode de vérification de l’identité du domaine.
  • renew-by-default : comme les certificats existent déjà, on indique que c’est uniquement pour renouveler le certificat
  • agree-tos : pour accepter les conditions d’utilisation de Let’s Encrypt

Attention, Let’s Encrypt limite la génération de 5 certificats par semaine (pour l’instant).

Mon script de renouvellement des certificats Let’s Encrypt

nano /home/fred/script/updatecrt.sh
#!/bin/bash
/opt/letsencrypt/letsencrypt-auto certonly --config /opt/letsencrypt/memo-linux.ini
/opt/letsencrypt/letsencrypt-auto certonly --config /opt/letsencrypt/autre-site.ini
##recharger le serveur web, chez moi c'est nginx
systemctl reload nginx

Ne pas oublier de rendre exécutable le sript :

chmod +x /home/fred/script/updatecrt.sh

Planification de l’exécution du script

Pour ce faire, je vais utiliser crontab et configurer la planification tous les 2 mois à 2 heures du matin :

crontab -e
0 2 1 */2 * /home/fred/script/updatecert.sh
systemctl restart cron

Afficher l’article complet

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.