Let's Encrypt : Mise en place
Table des matières
Let's Encrypt est une autorité de certification qui fournit des certificats gratuits X.509 pour le protocole cryptographique TLS au moyen d'un processus automatisé destiné à se passer du processus complexe actuel impliquant la création manuelle, la validation, la signature, l'installation et le renouvellement des certificats pour la sécurisation des sites internet. Le projet vise à généraliser l'usage de connexions sécurisées sur l’internet. De nombreux sponsors soutiennent ce projet comme Cisco, Red Hat, Mozilla, Gemalto...
Il est nécessaire de satisfaire quelques prérequis pour l'installation, à savoir :
Ici, j'ai effectué mes tests sur une machine Gentoo Linux. Let's Encrypt n'est pas noté comme stable, j'ai du ajouter l'argument --debug à mes commandes.
Dans un premier temps, on clone le dépôt git :
On se rend ensuite dans le dossier en question pour exécuter ensuite les commandes :
Je vais ici utiliser la commande «oneliner» qui est plus simple à utiliser :
Une fois fait, on a un super message nous indiquant que l'opération a été faite avec succès :
Il faut ensuite configurer apache, pour renseigner le certificat nouvellement généré :
Et éditer ces deux lignes :
On recharge apache après :
Pour renouveler un certificat on exécute la commande «oneliner» suivante :
Vous aurez constaté que --manual-public-ip-logging-ok a été remplacé par l'argument --renew-by-default qui est assez explicite.
Dans le cas de cette erreur :
Il suffit de supprimer le dossier local du programme :
Relancer la commande et ça devrait rouler.
Introduction
Let's Encrypt est une autorité de certification qui fournit des certificats gratuits X.509 pour le protocole cryptographique TLS au moyen d'un processus automatisé destiné à se passer du processus complexe actuel impliquant la création manuelle, la validation, la signature, l'installation et le renouvellement des certificats pour la sécurisation des sites internet. Le projet vise à généraliser l'usage de connexions sécurisées sur l’internet. De nombreux sponsors soutiennent ce projet comme Cisco, Red Hat, Mozilla, Gemalto...
Prérequis
Il est nécessaire de satisfaire quelques prérequis pour l'installation, à savoir :
- Avoir la commande git à disposition
- Avoir un serveur connecté à Internet avec un nom de domaine pleinement qualifié (FQDN)
- Avoir les droits d'administration ... évident !
Ici, j'ai effectué mes tests sur une machine Gentoo Linux. Let's Encrypt n'est pas noté comme stable, j'ai du ajouter l'argument --debug à mes commandes.
Installation
Dans un premier temps, on clone le dépôt git :
Code BASH :
git clone https://github.com/certbot/certbot /opt/certbot
On se rend ensuite dans le dossier en question pour exécuter ensuite les commandes :
Code BASH :
cd /opt/certbot
Génération du premier certificat
Je vais ici utiliser la commande «oneliner» qui est plus simple à utiliser :
Code BASH :
./certbot-auto certonly -d oxygen.linuxtricks.fr --email=adrien.d@mageialinux-online.org --agree-tos -a webroot --webroot-path /var/www/localhost/htdocs/ --manual-public-ip-logging-ok --debug
- certonly : ne générer que le certificat
- -d oxygen.linuxtricks.fr : le domaine à certifier
- [email protected] : email associé au certificat
- --agree-tos : accepter les conditions d'utilisation
- -a webroot : là où va se situer l'authentification, à l racine du site
- --webroot-path /var/www/localhost/htdocs/ : la racine du site en question
- --manual-public-ip-logging-ok : oops, me rappelle plus
- --debug : obligatoire sur Gentoo
Une fois fait, on a un super message nous indiquant que l'opération a été faite avec succès :
Citation :
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/oxygen.linuxtricks.fr/fullchain.pem. Your
cert will expire on 2016-08-14. To obtain a new version of the
certificate in the future, simply run Certbot again.
- If you like Certbot, please consider supporting our work by:
- Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/oxygen.linuxtricks.fr/fullchain.pem. Your
cert will expire on 2016-08-14. To obtain a new version of the
certificate in the future, simply run Certbot again.
- If you like Certbot, please consider supporting our work by:
Il faut ensuite configurer apache, pour renseigner le certificat nouvellement généré :
Code BASH :
vi /etc/apache2/vhosts.d/00_default_ssl_vhost.conf
Et éditer ces deux lignes :
Code BASH :
SSLCertificateFile /etc/letsencrypt/live/oxygen.linuxtricks.fr/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/oxygen.linuxtricks.fr/privkey.pem
On recharge apache après :
Code BASH :
/etc/init.d/apache2 reload
Renouveler un certificat
Pour renouveler un certificat on exécute la commande «oneliner» suivante :
Code BASH :
./certbot-auto certonly -d oxygen.linuxtricks.fr --email=adrien.d@mageialinux-online.org --agree-tos -a webroot --webroot-path /var/www/localhost/htdocs/ --renew-by-default --debug
Vous aurez constaté que --manual-public-ip-logging-ok a été remplacé par l'argument --renew-by-default qui est assez explicite.
Quelques problèmes
ExecutableNotFound
Dans le cas de cette erreur :
Code TEXT :
An unexpected error occurred: ExecutableNotFound Please see the logfile 'certbot.log' for more details.
Il suffit de supprimer le dossier local du programme :
Code BASH :
rm -rf /root/.local/share/letsencrypt
Relancer la commande et ça devrait rouler.