Accueil » Domotique » Jeedom » Guides Jeedom » Comment sécuriser l’accès à Jeedom en HTTPS avec un certificat SSL gratuit » Page 3
Guides Jeedom

Comment sécuriser l’accès à Jeedom en HTTPS avec un certificat SSL gratuit

La génération du certificat

Avant de démarrer la procédure, il est important de bien effectuer la mise à jour des dépôts. Pour ce faire exécutez la commande

sudo apt update

Il ne reste plus qu’a s’assurer que snap est bien disponible sur le système. Pour ce faire lancer la commande

sudo apt install snapd

A présent, nous pouvons demarrer la procédure

1 Démarrez la procédure en exécutant la commande :

sudo snap install core

Vous obtenez alors les lignes suivantes dans la console :

2 Passez ensuite la commande suivante pour être certain de bien disposer de la dernière version de snapd

sudo snap refresh core

3 A présent, installez certbot avec la commande :

sudo snap install --classic certbot

4 Puis préparez l’exécution de la commande certbot avec la commande :

sudo ln -s /snap/bin/certbot /usr/bin/certbot

5 Maintenant, tout est prêt, lancer les commandes.

sudo certbot --apache
sudo certbot certonly --webroot

La procédure demande alors une adresse Mail qui sera notifiée pour le renouvellement du certificat.

Une autre question demande votre autorisation, répondez par Y.

Une autre question demande si vous désirez partager votre mail avec la fondation, répondez par N.

Enfin, il est demandé de saisir le nom de domaine de votre Jeedom. Celui-ci correspond au nom de domaine créé plus haut sans “http://”.

Une toute dernière question est alors posée, il s’agit d’indiquer l’emplacement du répertoire web du Raspberry Pi. Ici, répondez par /var/www/html/.

Patientez quelques secondes et voilà votre certificat activé.

Le renouvellement

Tant que nous y sommes, profitons-en pour automatiser le renouvellement du certificat tous les 90 jours.

1 Afin de planifier ce renouvellement, il faut faire appel à la crontab, il s’agit tout simplement du planificateur de tâche de debian.

sudo nano crontab -e

2 Puis collez la ligne suivante en fin de fichier

0 1 30 * * /etc/certbot renew –dry-run  >> /var/log/ssl-renew.log

Vous pouvez également utiliser la ligne suivante dans votre crontab afin de demander un renouvellement tous les 89 jours, soit la veille de l’expiration de votre certificat. (Merci à Max pour cette astuce)

0 1 * * * bash -c ‘[ $(expr $(date +\%s) / 86400 \% 89) == 30 ] && /snap/bin/certbot renew >> /home/pi/ssl-renew.log 2>&1′

3 Enregistrez et quittez, voilà à présent votre certificat se renouvellera automatiquement tous les 30 du mois !

Renouvellement manuel

Pour effectuer un renouvellement manuel, chose que je vous recommande pour être certain du bon déroulement, il faut commencer par réactiver l’ouverture du port 80 pour votre Jeedom sur votre routeur (box internet). C’est pourquoi je préfère effectuer cette opération manuellement sur mon installation. Cela me permet de n’ouvrir le port 80 que quelques secondes, le temps de l’opération.

Si toutefois vous préférez gérer ce renouvellement manuellement, il faudra utiliser la commande suivante :

certbot renew

Votre renouvellement sera alors effectué sans problème. Vous pouvez ensuite refermer le port 80 de votre routeur.

Pour aller plus loin

Si vous avez des soucis, voici quelques commandes bien utiles qui m’ont permis d’identifier et corriger mon problème.

wget --header="Host: www.domaine.ovh" -O - http://localhost

1 Cette commande permet d’en savoir un peu plus sur une possible erreur Apache.

netstat -anp

2 Cette commande permet de vérifier l’utilisation des ports du raspberry.

sudo apachectl configtest

3 Cette commande permet de vérifier la bonne configuration d’Apache et le cas échéant connaitre ses erreurs.

hostname -f

4 cette commande permet de connaitre le Hostname utilisé par le raspberry.

sudo rm -rf /etc/pip.conf

5 cette commande permet de résoudre le problème du message d’erreur suivant : Had a problem while installing Python packages.

Conclusion

Voilà, votre domotique Jeedom DIY est de nouveau sécurisé pour ses accès extérieurs avec la nouvelle méthode de sécurisation. Je n’exclus pas que ce soit toujours possible de générer un certificat depuis un nom de domaine Freebox, auquel cas, il n’est pas nécessaire de disposer d’un nom de domaine chez OVH. Pour autant, je n’ai pas réussi chez moi malgré toutes mes tentatives à générer un certificat depuis la découverte de la faille par Let’s Encrypt. Y-a-t-il à présent une incompatibilité avec la Freebox? Quoi qu’il en soit, cette nouvelle méthode fonctionne très bien maintenant.

Lire aussi

installer-jeedom-raspberrypi4-guide-complet

Installer Jeedom 4.x sur Raspberry Pi 4: Le guide complet de A à Z 2023

Sur le blog, nous vous proposons de nombreux guides pour découvrir la domotique et progresser dans la pratique. Nous avons déjà abordé à de nombreuses reprises les projets Do It Yourself sur le blog. Nous aimons le fait de pouvoir…

Domo-blog a fait le choix de ne pas polluer votre lecture avec de la publicité. Vous trouverez cependant des liens affiliés vers les produits recommandés dans le contenu. Cela ne perturbe en rien votre experience de lecture et permet de financer le blog.
Vous pouvez également soutenir le blog en m'offrant un café sur Ko-Fi.


discord

Restez connecté aux nouveautés domotiques, inscrivez-vous à notre newsletter

A propos de cet auteur

Aurélien Brunet

Chef de projet informatique, anciennement informaticien spécialisé dans l'IT industrielle, le réseau et les bases de données. Un peu geek à mes heures perdues, je me suis mis à la domotique en 2012 pour sécuriser mon domicile.
Depuis, je teste, j’installe, je code, j’améliore mon installation et surtout, je partage avec vous mon expertise via ce blog et mon podcast Domotique Chronique pour améliorer votre quotidien dans la maison connectée !

10 Comments

Cliquez ici pour poster un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

  • Bonjour,

    C’est la première fois que je mets en place un certificat SSL pour mon jeedom j’ai acheté du coup un nom de domaine chez ovh tout est ok jusque-là.

    J’ai ajouté ma zone DNS avec mon ip publique et j’ai suivi toutes les étapes de page 2 du tuto, j’ai la syntax ok après la vérification du test apache.

    J’ai bien ouvert mes ports 80 et 443 sur ma box à l’époque déjà pour avoir accès à mon jeedom à distance via mon ip publique.

    A présent quand je vais sur mon navigateur sur mon domaine.ovh j’ai la page par défaut d’OVH “Félicitation Votre domaine mondomaine.ovh a bien été créé chez OVH.”

    Est-ce c’est parce que j’ai fait la configuration de ma zone DNS il y a une heure et que je dois encore attendre ?

    Merci à vous.

  • Bonjour Mr Brunet.
    Merci pour les excellents tutos que vous proposez.
    J’avais utilisé cette procédure d’accès à Jeedom en HTTPS avec certificat SSL gratuit sur un RPI 3B+ avec Debian Stretch. Ça avait très bien fonctionné.
    Je viens de passé à Jeedom V4 sur Debian Buster 10. Pensez-vous que la procédure soit encore applicable ?
    Merci beaucoup

  • Bonjour,

    Merci pour ce tuto très bien fait.
    Juste une remarque, je pense qu’il faut utiliser sudo crontab -e au lieu de sudo nano crontab -e

  • Bonjour,
    je me permet s une remarque, le dernier commentaire corrige une coquille dans le tutoriel ‘sudo crontab -e’ afin d’accéder au bon fichier de planification.

    J’ai à mon tour une question, j’ai utilisé
    sudo certbot –apache

    d’après le descriptif, c’est après cette commande
    sudo certbot certonly –webroot

    que la suite de la config se fait. A quoi sert cette seconde commande ?
    je ne comprends pas son utilité, et si après avoir inscrit en crontab le renouvellement il va effectuer la tâche seul.
    Par avance, merci de votre retour, et merci pour ce super tuto !!

  • Bonjour,

    Lorsque je lance la commande sudo apachectl configtest j’ai bien le message evoqué (could not reliably…to suppress this message).
    Toutefois j’ai une question. Quand je lance la commande sudo nano /etc/apache2/apache2.conf un long texte s’affiche m’expliquant tout un tas de choses sur Apache mais je ne sais pas où exactement entrer la ligne ServerName http://www.domaine.ovh.
    Pourriez-vous détailler ce point pour le noob que je suis !
    Merci

  • Salut, pour info :

    je viens de réinstaller jeedom sur un nouveau nuc, et donc de refaire la sécurisation via ton tuto.

    Tout se passe bien, et en fin de génération de certificat j’obtiens le message suivant “certbot has setup a scheduled task to automatically renew this certificate in the background”.
    Je comprends donc que le renouvellement est donc désormais automatisé, sans avoir fait la partie crontab , et il m’est d’ailleurs indiqué la date d’expiration pour dans 90 jours.

    On peut aussi contrôler la présence de cette tâche parmi toute celle du système avec la commande
    systemctl list-timers

energie
promos domotique
green
promos domotique

La génération du certificat

Avant de démarrer la procédure, il est important de bien effectuer la mise à jour des dépôts. Pour ce faire

Le renouvellement

Tant que nous y sommes, profitons-en pour automatiser le renouvellement du certificat tous les 90 jours.

Renouvellement manuel

Pour effectuer un renouvellement manuel, chose que je vous recommande pour être certain du bon déroulement, il faut commencer par

Pour aller plus loin

Si vous avez des soucis, voici quelques commandes bien utiles qui m’ont permis d’identifier et corriger mon problème.

Conclusion

Voilà, votre domotique Jeedom DIY est de nouveau sécurisé pour ses accès extérieurs avec la nouvelle méthode de sécurisation. Je

Lire aussi

  • La génération du certificat
  • Le renouvellement
  • Renouvellement manuel
  • Pour aller plus loin
  • Conclusion
  • Lire aussi