|
|
letsencrypt [13/12/2015 17:12] viper61 . |
letsencrypt [18/09/2016 02:54] |
====== Let’s Encrypt ====== | |
===== Objectif ===== | |
L'objectif de cette documentation est la mise en place des outils nécessaire à la création de certificats via l'autorité de certification [[https://letsencrypt.org/|Let's Encrypt]]. | |
| |
===== Installation ===== | |
Pour le moment, il n'existe pas de dépôts pour effectuer l'installation. Il faudra donc cloner depuis le dépôt Git : | |
git clone https://github.com/letsencrypt/letsencrypt . | |
| |
===== Utilisation ===== | |
Parmi les commandes les plus importantes nous trouvons celles permettant d'obtenir un certificat, le renouveler ou encore le révoquer. | |
| |
==== Obtenir un certificat ==== | |
L’obtention d'un certificat s'obtient simplement via la commande suivante : | |
./letsencrypt-auto --agree-tos --renew-by-default --rsa-key-size 4096 --server https://acme-v01.api.letsencrypt.org/directory certonly -d Le.Domaine | |
| |
''--agree-tos'' signifie que nous acceptons les conditions d'utilisation ;\\ | |
''--renew-by-default'' permet d'activer le renouvellement du/des certificat(s) que l'on va obtenir ;\\ | |
''--rsa-key-size'' indique que l'on souhaite modifier la taille du hash du certificat, ici 4096 ;\\ | |
''--server'' permet de modifier le serveur que l'on va interroger. | |
| |
| |
Cependant, Let's Encrypt nécessite d'avoir le port 80 de disponible, ce qui n'est pas possible dans un environnement de production. Il existe cependant une solution : | |
./letsencrypt-auto --agree-tos --renew-by-default --rsa-key-size 4096 --server https://acme-v01.api.letsencrypt.org/directory certonly --webroot -w Dossier/Du/Site -d Le.Domaine | |
| |
Les ajouts de cette commande permet de lancer Let's Encrypt avec le plugin **webroot**. Ce plugin indique qu'il existe déjà un serveur web sur notre machine et que nous souhaitons l'utiliser. Il prend un paramètre **-w** suivit du chemin vers la racine du site. \\ | |
| |
<note tip>Tel que, Let's Encrypt nous obtiendra un certificat pour le domaine indiquer avec le paramètre ''-d'' du site stocké dans le répertoire indiqué par le paramètre ''-w''. \\ | |
On peut indiquer plusieurs domaine avec plusieurs paramètre ''-d''. Si le site se trouve dans un autre répertoire, il faudra précédé ''-d'' par ''-w Dossier/Du/Site''.</note> | |
| |
Une fois le certificat obtenu, nous pourrons utiliser le générateur de Mozilla pour obtenir une configuration pour son serveur Web : https://mozilla.github.io/server-side-tls/ssl-config-generator/ | |
| |
Les certificats générés seront enregistrer dans le répertoire suivant : **/etc/letsencrypt/live/Le.Domaine/** | |
| |
==== Renouveler le certificat ==== | |
Malgré le renouvellement automatique, nous pouvons demander pour en obtenir un manuellement en utilisant les même valeurs que lorsque nous avons généré le certificat. | |
| |
==== Révoquer du certificat ==== | |
En cas d'erreur, de disparition du site, d'une attaque ou pour tout autre raison, on peut demander la révocation de notre certificat grâce à la commande : | |
./letsencrypt-auto revoke --cert-path certificat.pem | |