Ceci est une ancienne révision du document !
Table des matières
Let's Encrypt
Introduction
L'objectif de cette page est de générer et faire signer des certificats avec Let's Encrypt.
Cette méthode n'est pas la plus simple, mais elle permet de mettre en place DANE/TLSA et HPKP ainsi que d'avoir des certificats en ECC.
Pour cela, il faut juste le packet certbot/letsencrypt.
Cette méthode n'est pas éligible au renouvellement automatique de certbot, donc il faudra ajouter manuellement l'entrée en tache cron. La méthodologie, si suivie a la lettre, permet un gestion simple de ces certificats.
Génération du certificat
Pour chaque domaines, nous allons créer les dossiers où seront stocké les certificats et les clés:
# mkdir -p /etc/letsencrypt/wiki.virtit.fr/live # mkdir -p /etc/letsencrypt/wiki.virtit.fr/archive
puis on génère le certificat :
# openssl ecparam -name prime256v1 -genkey -out /etc/letsencrypt/wiki.virtit.fr/live/private.key # openssl req -new -key virtit.pem -nodes -days 3650 -out /etc/letsencrypt/wiki.virtit.fr/live/cert.csr
Ces certificats seront unique mais pensez à les renouveler régulièrement .
Signature du certificat
Pour signer votre certificat, il faut lancer la commande suivante :
# certbot certonly --webroot -w /var/www/letsencrypt/ -d wiki.virtit.fr --csr /etc/letsencrypt/wiki.virtit.fr/live/cert.csr --cert-path /etc/letsencrypt/wiki.virtit.fr/live/cert.pem --chain-path /etc/letsencrypt/wiki.virtit.fr/live/chain.pem --fullchain-path /etc/letsencrypt/wiki.virtit.fr/live/fullchain.pem
Renouvellement du certificat
Pour renouveler le certificat, il faut déplacer le certificat, et les chaines de certificats.
Je vous conseil d'ajouter la tâche cron suivante :
0 2 * * * /bin/rm /etc/letsencrypt/wiki.virtit.fr/archive/* && /bin/mv /etc/letsencrypt/wiki.virtit.fr/live/*.pem /etc/letsencrypt/wiki.virtit.fr/archive/ && /usr/bin/certbot certonly --webroot -w /var/www/letsencrypt/ -d wiki.virtit.fr --csr /etc/letsencrypt/wiki.virtit.fr/live/cert.csr --cert-path /etc/letsencrypt/wiki.virtit.fr/live/cert.pem --chain-path /etc/letsencrypt/wiki.virtit.fr/live/chain.pem --fullchain-path /etc/letsencrypt/wiki.virtit.fr/live/fullchain.pem --post-hook '/bin/systemctl reload apache2'
Il faudra adapter la dite commande avec le bon domaine et les bons post-hook.