Hello à toi sur ce tutoriel, utiliser Let’s Encrypt avec Apache ! 😎
On va voir ensemble comment installer le client LE et configurer notre certificat avec notre Apache (très simple !).
Let’s Encrypt ?
Mais Let’s Encrypt qu’est ce que c’est ? Et bien c’est une toute nouvelle autorité de certification ! Et si on en entend parler partout c’est parce que déjà elle est gratuite (et simple d’installation). On peut donc générer soit-même des certificats SSL signés afin de pouvoir disposer du fameux cadenas vert tant apprécié et rassurant. Il vous faut juste posséder un serveur et un nom de domaine rattaché à ce dernier et enfin le client letsencrypt et c’est tout !
Prêt ? Allons-y !
Installation du client
Bon, commençons 🙂
Tout d’abord pour pouvoir faire fonctionner Let’s Encrypt il nous faut le client et on va le récupérer via le dépôt officiel sur Github.
sudo apt-get update && sudo apt-get install -y git
On rafraîchit notre liste de package et on installe git.
Maintenant on va donc récupérer le client.
sudo git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt
On va donc cloner le dépôt git directement dans le dossier /opt/letsencrypt sur notre serveur.
Mise ne place du certificat
L’avantage d’utilise Apache avec Let’s Encrypt par rapport à Nginx c’est qu’on à pratiquement rien à faire. En effet LE est fourni avec un plugin qui permet de directement configurer Apache !
On accède d’abord au dossier letsencrypt
cd /opt/letsencrypt
Je vais maintenant vous montrer la commande pour pouvoir générer un certificat pour un seul nom de domaine: exemple.com
./letsencrypt-auto --apache -d exemple.com
- letsencrypt-auto: c’est l’executable qui permet de creer notre certificat.
- –apache: ce paramètre précise quel plugin utiliser, ici apache.
- -d exemple.com: on précise pour quel domaine (ou sous-domaine) on souhaite un certificat SSL.
Vous comprendrez donc que pour obtenir un certificat qui couvre plusieurs domaines (ou sous-domaines), il suffit de spécifier plusieurs fois le paramètre -d avec la valeur désirée !
./letsencrypt-auto --apache -d exemple.com -d www.exemple.com -d sub.exemple.com
Une fois que vous exécutez la commande, un guide va se lancer et vous guider à travers la création de votre certificat.
On va d’abord renseigner un email :
Ensuite on va vous demander si vous voulez autoriser à la fois le HTTP et le HTTPS (Easy) vers votre site ou si tout le traffic doit passer en HTTPS (Secure):
Si tout c’est bien passez vous obtiendrez une fenêtre validant la création du certificat !
Vous pouvez dès maintenant accéder à votre site en HTTPS 🙂
Renouvellement automatique
Ce qu’il faut savoir avec Let’s Encrypt c’est que votre certificat n’est valable que 90 jours. Mais il est possible de le renouveler ! Cela se passe avec la commande suivante:
./letsencrypt-auto renew
Mais bon, on va pas se mentir c’est chiant de devoir penser de temps en temps à taper la commande surtout si on a différent certificat que l’on a créé à différent moment.
Pour cela nous allons créer une tache cron ! On l’exécutera tous les lundis à 1h du matin.
On lance le gestionnaire de cron.
crontab -e
Et on y insère notre cron !
0 1 * * 1 /opt/letsencrypt/letsencrypt-auto renew >> /var/log/le-renew.log
CTRL + X et Oui pour sauvegarder et quitter !
Et normalement :p on n’aura aucun problème d’expiration de notre certificat ! #Youpi
Vous pouvez maintenant pleinement profiter de votre site en HTTPS !
À très bientôt les amis !
Leave a Reply