Installation des certificats SSL gratuits de Let's Encrypt
#1 Activation du module OpenSSL
Il faut activer le module OpenSSL. Sur ma machine, il est déjà activé. Mais je vais le faire quand même pour vous montrer.
Ensuite je redémarre Apache.
#2 Installation de l'outil certbot
Pour installer le certificat, nous allons utiliser l'outil certbot
de Let’s Encrypt
. Cet outil va considérablement simplifier cette opération. Let’s Encrypt
est une autorité de certification 'gratuite'. C'est une fondation à but non lucratif. Une sorte de service public du certificat SSL.
Donc pour installer certbot
, je fais la commande suivante :
#3 Installation du certificat avec certbot
Maintenant, pour installer le certificat, je lance la commande suivante :
Avec l'option --apache
, certbot
fait la totale. Il installe le certificat, il édite la conf apache pour mettre ce qu'il faut pour le ssl et il met une entrée dans la crontab. Je détaille tout cela à la fin du tuto.
Au cours de la procédure d'installation du certificat, il faut donner une adresse de courriel. Personnellement, j'ai donné la même que celle avec laquelle j'ai acheté le nom de domaine. Je ne suis pas sûr que ce soit indispensable, mais moi, j'ai fait comme cela.
#4 Test sur le port 443
Maintenant, théoriquement https est fonctionnel. Je fais un test https://www.tuto-dev-web.fr
. Le lien https://www.tuto-dev-web.fr
n'a été disponible que pendant la réalisation du tuto. Il ne fonctionne plus maintenant que le tuto est terminé.
Vous pouvez voir le certificat SSL en cliquant dans la barre d'adresse du navigateur, à gauche de l'URL du site, puis sur le cadenas et enfin sur 'certificat valide'.
#4 Qu'a fait certbot ?
Ci-dessous, je détaille ce qu'a fait l'outil certbot
:
- Installation du certificat SSL.
- Installation d'une entrée dans la crontab dans le fichier
/etc/cron.d/certbot
. Vous pouvez voir qu'il y a un contrôle de la validité du certificat toutes les 12 heures. - Modification de la configuration Apache. Ajout du fichier
/etc/apache2/sites-available/tuto-dev-web.fr-le-ssl.conf
. Et ceci pour le sitetuto-dev-web.fr
. - Modification de la conf Apache dans
/etc/apache2/sites-available/tuto-dev-web.fr.conf
. Il ajoute la gestion du choix de l'Url courte ou de l'Url longue (C'est détaillé ci-dessous).
#5 Choix du www.tuto-dev-web.fr (Url longue) ou bien du tuto-dev-web.fr (Url courte)
En bas du fichier /etc/apache2/sites-available/tuto-dev-web.fr.conf
, certbot ajoute deux conditions et une règle de réécriture. Par défaut, il choisit l'Url courte. Si vous voulez une Url longue, il faut ajouter www
puis un point avec un backslashe devant. Ca correspond à la dernière ligne qui est en commentaire (le #).