Bonjour
Il y a pas mal de post concernant des problèmes de mise en place des certificats SSL, je vous met donc ici ma procédure complète d'installation.
Bien entendu vous pouvez également ajouter vos propres procédures du moment qu'elles fonctionnent
Installation de let's encrypt (ne pas oublier sudo)
apt-get update
apt-get install git
git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt --depth=1
cd /opt/letsencrypt
git pull
/opt/letsencrypt/letsencrypt-auto
Création des clés (pour 2 sites par exemple), pour ma part j'installe mes clés en standalone
!!Attention le port 80 et 443 doivent être accéssible et on arrête apache avant de générer les clés!!
/etc/init.d/apache2 stop
/opt/letsencrypt/letsencrypt-auto --rsa-key-size 4096 certonly --standalone -d domaine.com
/opt/letsencrypt/letsencrypt-auto --rsa-key-size 4096 certonly --standalone -d forum.domaine.com
On écrit ensuite les chemins d'accés aux clés dans les virtualhosts (apache2 dans mon cas)
Pour le site domaine.com:
SSLCertificateFile /etc/letsencrypt/live/domaine.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domaine.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
Pour le site forum.domaine.com
SSLCertificateFile /etc/letsencrypt/live/forum.domaine.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/forum.domaine.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
On redémarre apache2
/etc/init.d/apache2 start
Et voilà les clés sont en place et le https est 100% fonctionnel.
Maintenant le soucis est que les clés let's encrypt ne sont valables que 90 jours donc il faut mettre en place le renouvellement automatique.
On crée donc dans un premier temps un petit script (pour ma part il est la: /root/renew_letsencrypt.sh)
#!/bin/bash
#/root/renew_letsencrypt.sh
# Liste de vos domaines à certifier
args1="-d domaine.com"
args2="-d forum.domaine.com"
# service tournant sur le port 80 et 443 (http / https) devant être stoppé pour utiliser --standalone
serv='apache2'
/etc/init.d/apache2 stop
/opt/letsencrypt/letsencrypt-auto certonly --standalone --renew-by-default $args1
sleep 60
/opt/letsencrypt/letsencrypt-auto certonly --standalone --renew-by-default $args2
sleep 60
/etc/init.d/apache2 start
On rend le script executable
chmod +x /root/renew_letsencrypt.sh
Bien penser à ajouter sleep si vous ajoutez des domaines car les serveurs let's encrypt peuvent être long à répondre. Sans cela, le renouvellement plante.
Reste plus qu'à ajouter une tâche cron pour que ce renouvellement se fasse une fois par mois la nuit par exemple
0 2 1 * * /bin/bash /root/renew_letsencrypt.sh > /var/log/letsencrypt/renew.log
Je crée régulièrement des sites et interface web et cette méthode n'a jamais plantée.