Outils pour utilisateurs

Outils du site


webadmin:apache2:lets-encrypt

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
webadmin:apache2:lets-encrypt [2017/10/30 17:05] – créée yoannwebadmin:apache2:lets-encrypt [2021/02/01 21:51] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
-{{tag>webadmin ssl certbot}}+{{tag>webadmin ssl certbot letsencrypt}}
  
 ====== Utiliser Lets's encrypt avec Apache 2 ====== ====== Utiliser Lets's encrypt avec Apache 2 ======
  
-===== Activer la configuration SSL =====+Let's Encrypt est une autorité de certification (CA) qui facilite l’acquisition de certificats SSL. Le service est gratuit. 
 + 
 +===== Prérequis ===== 
 + 
 +  * Un nom de domaine avec un enregistrement de type **A** 
 +  * Apache 2 et le module SSL activé pour l' hôte virtuel de travail 
 + 
 +===== Activer le module SSL ===== 
 + 
 +Dans un premier temps on va faire fonctionner un hôte virtuel Apache 2 avec SSL
  
-Dans un premier temps on va faire fonctionner Apache 2 avec SSL 
 <code bash> <code bash>
 $ sudo a2enmod ssl $ sudo a2enmod ssl
Ligne 19: Ligne 27:
 </file> </file>
  
-Une fois cette configuration fonctionnelle, une alerte est levée coté client car le certificat fournit par le serveur est auto-signé.+Une fois cette configuration fonctionnelle, si on teste la connexion au serveur avec un navigateur, une alerte est levée coté client car le certificat fournit par le serveur est auto-signé.
  
  
Ligne 25: Ligne 33:
  
  
-Le client +L'installation du client et des scripts let's encrypt varie selon les distributions. 
 + 
 +==== Debian Jessie ==== 
 + 
 +Disponible dans les backports: 
 + 
 +<code bash> 
 +echo "deb http://ftp.debian.org/debian jessie-backports main" > /etc/apt/sources.list.d/backports.list 
 +apt update 
 +apt install certbot -t jessie-backports 
 +</code> 
 + 
 +Pour Apache installer également le plugin apache: 
 +<code bash> 
 +$ sudo apt-get install python-certbot-apache 
 +</code> 
 + 
 +==== Ubuntu 16 ==== 
 <code bash> <code bash>
 $ sudo apt-get install certbot $ sudo apt-get install certbot
 </code> </code>
  
 +===== Générer un certificat pour Apache =====
 +
 +La procédure d'obtention d'un certificat pour Apache est facilité par script. Vérifier que l'installation du plugin est bien valide: invoquer **letsencrypt** avec l'argument **help** afin de vérifier que l'option **%%--apache%%** existe:
 +
 +<code bash>
 +$ letsencrypt --help
 +</code>
 +
 +On l'invoque de la façon suivante en spécifiant l'argument **-d** avec en paramètre le nom de domaine:
 +
 +<code bash>
 +$ sudo ./letsencrypt-auto --apache --rsa-key-size 4096 -d vhost1.your_domain.tld -d vhost2.your_domain.tld
 +</code>
 +
 +Un même certificat peut être utilisé par plusieurs hôtes virtuels, spécifier les noms DNS via l'argument **-d** . Répéter autant de fois que nécessaire.
 +
 +<note>
 +La commande proposée ci-dessus retourne une erreur avec la version **certbot 0.10.2**
 +</note>
 +
 +Le message suivant est affiché:
 +<file>
 +Client with the currently selected authenticator does not support any combination of challenges that will satisfy the CA.
 +</file>
 +
 +Elle ne devrait plus se présenter pour les versions de **certbot 0.12.0** et supérieures. Cela est du à la désactivation du challenge par défaut **TLS-SNI-01** utilisé par apache et nginx présentant des failles.
 +
 +Pour pouvoir générer le certificat malgré tout:
 +
 +<code bash>
 +certbot --authenticator standalone --rsa-key-size 4096 --installer apache -d vhost.phobos-net.fr --pre-hook "systemctl stop apache2" --post-hook "systemctl start apache2"
 +</code>
 +
 +Pour vérifier le statut du certificat SSL fournit, SSL labs propose un service ne ligne disponible à l'URL https://www.ssllabs.com/ssltest/
 +
 +Les certificats fournis par let's encrypt sont valides 90 jours. Pour renouveler les certificats, il faut relancer le client avec les mêmes paramètres avant la date limite. Pour cela on créera une tâche cron.
  
 ===== Références ===== ===== Références =====
  
- * https://www.tecmint.com/install-free-lets-encrypt-ssl-certificate-for-apache-on-debian-and-ubuntu/+  * https://www.tecmint.com/install-free-lets-encrypt-ssl-certificate-for-apache-on-debian-and-ubuntu/ 
 +  * https://memo-linux.com/installer-certbot-sous-debian/ 
 +  * https://stackoverflow.com/questions/48187964/lets-encrypt-error-certificate-install-error-client-with-the-currently-selec
webadmin/apache2/lets-encrypt.1509383130.txt.gz · Dernière modification : 2021/02/01 21:51 (modification externe)