Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 04/08/2017, à 08:20

HPIR40

Lets encrypt - certificat SSL

Bonjour

Il y a pas mal de post concernant des problèmes de mise en place des certificats SSL, je vous met donc ici ma procédure complète d'installation.

Bien entendu vous pouvez également ajouter vos propres procédures du moment qu'elles fonctionnent

Installation de let's encrypt (ne pas oublier sudo)

apt-get update
apt-get install git

git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt --depth=1
cd /opt/letsencrypt 
git pull

/opt/letsencrypt/letsencrypt-auto

Création des clés (pour 2 sites par exemple), pour ma part j'installe mes clés en standalone

!!Attention le port 80 et 443 doivent être accéssible et on arrête apache avant de générer les clés!!

/etc/init.d/apache2 stop
/opt/letsencrypt/letsencrypt-auto --rsa-key-size 4096 certonly --standalone -d domaine.com
/opt/letsencrypt/letsencrypt-auto --rsa-key-size 4096 certonly --standalone -d forum.domaine.com

On écrit ensuite les chemins d'accés aux clés dans les virtualhosts (apache2 dans mon cas)

Pour le site domaine.com:

SSLCertificateFile /etc/letsencrypt/live/domaine.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domaine.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf

Pour le site forum.domaine.com

SSLCertificateFile /etc/letsencrypt/live/forum.domaine.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/forum.domaine.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf

On redémarre apache2

/etc/init.d/apache2 start

Et voilà les clés sont en place et le https est 100% fonctionnel.

Maintenant le soucis est que les clés let's encrypt ne sont valables que 90 jours donc il faut mettre en place le renouvellement automatique.

On crée donc dans un premier temps un petit script (pour ma part il est la: /root/renew_letsencrypt.sh)

#!/bin/bash
#/root/renew_letsencrypt.sh

# Liste de vos domaines à certifier
args1="-d domaine.com"
args2="-d forum.domaine.com"
# service tournant sur le port 80 et 443 (http / https) devant être stoppé pour utiliser --standalone
serv='apache2'

/etc/init.d/apache2 stop
/opt/letsencrypt/letsencrypt-auto certonly --standalone --renew-by-default $args1
sleep 60
/opt/letsencrypt/letsencrypt-auto certonly --standalone --renew-by-default $args2
sleep 60
/etc/init.d/apache2 start

On rend le script executable

chmod +x /root/renew_letsencrypt.sh

Bien penser à ajouter sleep si vous ajoutez des domaines car les serveurs let's encrypt peuvent être long à répondre. Sans cela, le renouvellement plante.

Reste plus qu'à ajouter une tâche cron pour que ce renouvellement se fasse une fois par mois la nuit par exemple

0 2 1 * * /bin/bash /root/renew_letsencrypt.sh > /var/log/letsencrypt/renew.log

Je crée régulièrement des sites et interface web et cette méthode n'a jamais plantée.

Dernière modification par HPIR40 (Le 02/12/2017, à 16:20)

Hors ligne

#2 Le 12/08/2017, à 16:11

chiron

Re : Lets encrypt - certificat SSL

Mon chemin de croix continue....

Pourtant mon site est bien accessible en http...

root@boussole:/opt/letsencrypt# /opt/letsencrypt/letsencrypt-auto
Saving debug log to /var/log/letsencrypt/letsencrypt.log
No names were found in your configuration files. Please enter in your domain
name(s) (comma and/or space separated)  (Enter 'c' to cancel): soleil2.fr
Obtaining a new certificate
Performing the following challenges:
tls-sni-01 challenge for soleil2.fr
Waiting for verification...
Cleaning up challenges
Failed authorization procedure. soleil2.fr (tls-sni-01): urn:acme:error:connection :: The server could not connect to the client to verify the domain :: Error getting validation data

IMPORTANT NOTES:
 - The following errors were reported by the server:

   Domain: soleil2.fr
   Type:   connection
   Detail: Error getting validation data

   To fix these errors, please make sure that your domain name was
   entered correctly and the DNS A/AAAA record(s) for that domain
   contain(s) the right IP address. Additionally, please check that
   your computer has a publicly routable IP address and that no
   firewalls are preventing the server from communicating with the
   client. If you're using the webroot plugin, you should also verify
   that you are serving files from the webroot path you provided.

Dernière modification par chiron (Le 12/08/2017, à 16:11)


In hoc signo vinces.

Hors ligne

#3 Le 14/08/2017, à 17:00

HPIR40

Re : Lets encrypt - certificat SSL

Comme il te le dit:

To fix these errors, please make sure that your domain name was
   entered correctly and the DNS A/AAAA record(s) for that domain
   contain(s) the right IP address. Additionally, please check that
   your computer has a publicly routable IP address and that no
   firewalls are preventing the server from communicating with the
   client. If you're using the webroot plugin, you should also verify
   that you are serving files from the webroot path you provided.

donc il faut dans ton dns ou celui de la zone DNS de ton hébergeur une régle du type

soleil2.fr IN A L'ipdepubliquedetonserveur

Dernière modification par HPIR40 (Le 14/08/2017, à 17:00)

Hors ligne

#4 Le 18/08/2017, à 19:46

Pacifick_FR42

Re : Lets encrypt - certificat SSL

Bonjour !
Perso, j'ai un problème avec Let's encrypte et ISPconfig.
Maintenant il est intégré via ISPconfig, seul problème est que à chaque fois je doit changer le vhost à la mains :

</VirtualHost>
<VirtualHost *:443>
en
<VirtualHost domaine.ltd:443>

Quelqu'un à une idée du pourquoi ?

Dernière modification par Pacifick_FR42 (Le 18/08/2017, à 19:47)

Hors ligne

#5 Le 19/08/2017, à 18:06

HPIR40

Re : Lets encrypt - certificat SSL

Bonjour

ISPConfig court circuite en quelque sorte apache

va voir la: https://www.oboqo.com/blog/lets-encrypt … tuitement/

Hors ligne