Jeedom letsencrypt : Différence entre versions

De SLM - MediaWiki
Ligne 1 : Ligne 1 :
−
==Installation de Letsencrypt==
+
==Recuperer les certificat geré par opnsense==
−
Voici les commandes à lancer pour installer letsencrypt avant la génération :
 
−
<nowiki>apt-get install -y git
 
−
cd /opt
 
−
git clone https://github.com/letsencrypt/letsencrypt
 
−
cd letsencrypt
 
−
./letsencrypt-auto --help</nowiki>
 
  
−
Pour faire une demande de certificat vous devez posséder un nom de domaine pour lequel il sera généré.
+
rep opnsense
 +
/var/etc/acme-client/home/centreon.slemoal.fr/centreon.slemoal.fr.cer
 +
/var/etc/acme-client/home/centreon.slemoal.fr/centreon.slemoal.fr.key
  
−
==Configuration d’Apache==
+
centreon
−
Pour que le processus de letsEncrypt se termine correctement, il est nécessaire d’effectuer les trois étapes ci-dessous au préalable :
+
nano /opt/rh/httpd24/root/etc/httpd/conf.d/10-centreon.conf
  
−
Attention il est nécessaire d’ouvrir le port 80 sur le routeur (FAI) !
 
  
−
Activer le module SSL d’apache de la box Jeedom.
+
<VirtualHost *:443>
 +
  SSLEngine on
 +
#  SSLCertificateFile /etc/pki/tls/certs/ca.crt
 +
#  SSLCertificateKeyFile /etc/pki/tls/private/ca.key
 +
  SSLCertificateFile /etc/pki/tls/certs/centreon.slemoal.fr.cer
 +
  SSLCertificateKeyFile /etc/pki/tls/private/centreon.slemoal.fr.key
  
−
Activer le VirtualHost HTTPS d’apache de la box Jeedom .
+
/etc/pki/tls/certs/centreon.slemoal.fr.cer
 +
/etc/pki/tls/private/centreon.slemoal.fr.key
  
−
Configurer un portForwarding des requêtes HTTPS sur votre Box internet pour les rediriger vers votre Box Jeedom.
+
systemctl restart httpd24-httpd.service
  
−
===Activation du virtualHost et du module SSL===
 
−
Note
 
  
−
Se connecter en SSH sur la box Jeedom.
+
[[Catégorie:Centreon]]
−
 
 
−
<nowiki>a2enmod ssl
 
−
a2ensite default-ssl.conf
 
−
service apache2 restart</nowiki>
 
−
Note
 
−
 
 
−
Aucun certificat ne sera délivré par LetsEncrypt tant que votre site en HTTPS ne sera pas joignable de l’extérieur.
 
−
 
 
−
/opt/letsencrypt/letsencrypt-auto --apache --email slemoal51@gmail.com -d jeedom.slemoal.fr
 
−
 
 
−
Note
 
−
 
 
−
Si vous utilisez la méthode de renouvellement automatique ci-dessous, vous pouvez désactiver le virtualHost default-ssl.conf avec la commande a2dissite default-ssl.conf Pensez à reporter le code par défaut ci-dessous dans le virtualHost créé par le script de renouvellement : /etc/apache2/sites-available/000-default-le-ssl.conf`
 
−
 
 
−
<nowiki><FilesMatch "\.(cgi|shtml|phtml|php)$">
 
−
  SSLOptions +StdEnvVars
 
−
</FilesMatch>
 
−
<Directory /usr/lib/cgi-bin>
 
−
  SSLOptions +StdEnvVars
 
−
</Directory>
 
−
</VirtualHost></nowiki>
 
−
 
 
−
==Configuration de Nginx==
 
−
Cette commande n’est à utiliser que si vous disposez d’un serveur web Nginx.
 
−
 
 
−
./letsencrypt-auto certonly --email slemoal51@gmail.com -d jeedom.slemoal.fr -a webroot --webroot-path /usr/share/nginx/www/
 
−
Vous devez remplacer le chemin vers la racine du serveur. Vous devez ajouter les deux lignes de configuration du HTTPS dans la configuration nginx :
 
−
 
 
−
nano /etc/nginx/sites-enabled/default
 
−
Ajouter les lignes suivantes, entre les lignes server { et root /usr/share/nginx/www ; :
 
−
 
 
−
<nowiki>listen 80;
 
−
 
 
−
listen 443 ssl;
 
−
 
 
−
ssl_certificate /etc/nginx/ssl/ jeedom.chezmoi.fr.crt;
 
−
 
 
−
ssl_certificate_key /etc/nginx/ssl/ jeedom.chezmoi.fr.key;
 
−
 
 
−
ssl_session_timeout 5m;</nowiki>
 
−
 
 
−
Et enfin redémarrez le serveur Nginx.
 
−
service nginx restart
 
−
 
 
−
==Renouvellement==
 
−
Le renouvellement se fait avec la commande :
 
−
 
 
−
/opt/letsencrypt/letsencrypt-auto --apache --renew-by-default -d jeedom.slemoal.fr
 
−
 
 
−
Vous recevez un mail automatiquement à l’arrivée de l’échéance du certificat qui vous rappellera de lancer cette commande.
 
−
 
 
−
===Méthode automatique===
 
−
C’est quand même mieux quand c’est automatique. Pour ce faire, voici les étapes à suivre :
 
−
 
 
−
Installez bc, utilisé dans le script le-renew :
 
−
apt-get install -y bc
 
−
 
 
−
Créez un fichier pour y écrire le script (son emplacement est libre) :
 
−
nano /bin/certletsencryptrenew.sh
 
−
 
 
−
Saisissez les lignes ci-dessous dans le fichier créé précédemment. L
 
−
 
 
−
Ce script vérifie l’expiration du certificat et le renouvelle automatiquement si la date d’expiration est à moins de 30 jours.
 
−
<nowiki>curl -L -o /usr/local/sbin/le-renew http://do.co/le-renew
 
−
chmod +x /usr/local/sbin/le-renew
 
−
le-renew jeedom.slemoal.fr</nowiki>
 
−
 
 
−
Editez le crontab.
 
−
crontab -e
 
−
 
 
−
On ajoute la ligne suivante :
 
−
0 5 * * 1 /bin/certletsencryptrenew.sh
 

Version du 6 avril 2020 à 14:47

Recuperer les certificat geré par opnsense

rep opnsense /var/etc/acme-client/home/centreon.slemoal.fr/centreon.slemoal.fr.cer /var/etc/acme-client/home/centreon.slemoal.fr/centreon.slemoal.fr.key

centreon nano /opt/rh/httpd24/root/etc/httpd/conf.d/10-centreon.conf


<VirtualHost *:443>

 SSLEngine on
  1. SSLCertificateFile /etc/pki/tls/certs/ca.crt
  2. SSLCertificateKeyFile /etc/pki/tls/private/ca.key
 SSLCertificateFile /etc/pki/tls/certs/centreon.slemoal.fr.cer
 SSLCertificateKeyFile /etc/pki/tls/private/centreon.slemoal.fr.key

/etc/pki/tls/certs/centreon.slemoal.fr.cer /etc/pki/tls/private/centreon.slemoal.fr.key

systemctl restart httpd24-httpd.service