Jeedom letsencrypt : Différence entre versions

De SLM - MediaWiki
Ligne 11 : Ligne 11 :
 
[[Fichier:opnsense_contournement_dns.png]]
 
[[Fichier:opnsense_contournement_dns.png]]
  
{{color|Rouge|ATTENTION}}  
+
{{Rouge|ATTENTION}}  
  
 
{{Bleu|paon}}
 
{{Bleu|paon}}

Version du 7 avril 2020 à 07:25

Retour

Principe:

L'idée est de pouvoir se connecter sur le site jeedom.slemoal.fr en restant local et en bénéficiant du certificat ssl Lets encrypt généré et géré par OPNSense à cette étape

Redirection DNS

Se connecter sur OPNSense

Services: Unbound DNS: Contournements

Opnsense contournement dns.png

ATTENTION

paon

Sur votre ordinateur le serveur DNS doit être opnsense

Récupérer les certificat Let's encrypt généré par opnsense

Nous allons créer un compte avec un certificat, afin de permettre au serveur Jeedom de se connecter à opnsense en ssh afin de récupérer le certificat let'encrypte créer à cette étape

Créer une clé public sur Jeedom

si ça n'est pas dejà fait, nous allons créer une clé pour l'utilisateur root

ssh-keygen -t rsa -b 2048 -C root

ne renseigner pas de passphrase

Copier le contenue de la clé public

cat /root/.ssh/id_rsa.pub


Créer un compte sur OPNSense

Système: Accès: Utilisateurs

Renseigner:

  • Nom d'utilisateur: jeedom
  • Cocher: Générer un mot de passe aléatoire
  • Shell de connexion: /bin/sh
  • Clés autorisées: coller la clé public créer precedement (Exemple: ssh-rsa AAAAB3NzaC1yc... ...XOQKm/x root)

Sauvegarder

Tester la connection en ssh depuis le serveur jeedom

ssh jeedom@10.10.10.1 -p 8022
ECDSA key fingerprint is SHA256:SoX8QCm... ...6CRPJMI.
Are you sure you want to continue connecting (yes/no)? yes

Si il ne demande pas de mot de passe, c'est gagné.

Modifier le fichier de conf apache

Modifier l'emplacement des certificat et clé dans le fichier apache

cat /etc/apache2/sites-enabled/000-default-le-ssl.conf

Dans notre cas le fichier sera:

<IfModule mod_ssl.c>
<VirtualHost *:443>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html
        ErrorLog /var/www/html/log/http.error


ServerName jeedom.slemoal.fr
  SSLCertificateFile /etc/ssl/certs/jeedom.slemoal.fr.cer
  SSLCertificateKeyFile /etc/ssl/private/jeedom.slemoal.fr.key
</VirtualHost>
</IfModule>

Créer un cron sur le serveur jeedom

crontab -e

scp -P 8022 jeedom@10.10.10.1:/var/etc/acme-client/home/jeedom.slemoal.fr/jeedom.slemoal.fr.cer /etc/ssl/certs/jeedom.slemoal.fr.cer
scp -P 8022 jeedom@10.10.10.1:/var/etc/acme-client/home/jeedom.slemoal.fr/jeedom.slemoal.fr.key /etc/ssl/private/jeedom.slemoal.fr.key
service apache2 restart


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