HowTo : FHEM - Accès sécurisé à l'interface de configuration

Au plus tard après avoir effectué les premières configurations dans votre interface FHEM, vous devez également vous occuper de la question de la sécurité. C'est vraiment ennuyeux de perdre les fonctions minutieusement compilées et soigneusement programmées de votre système SmartHome. Que ce soit par la perte de données ou parce que d'autres personnes ont obtenu un accès non autorisé à votre système.

L'accès potentiel par des personnes non autorisées ne doit pas être négligé. Dans le pire des cas, cet accès peut faire plus de mal que simplement allumer et éteindre une lampe.

L'article suivant explique comment vous pouvez sécuriser votre instance FHEM et la protéger contre la perte de données.


Consignes de sécurité

Je sais que les notes suivantes sont toujours un peu ennuyeuses et semblent inutiles. Malheureusement, de nombreuses personnes qui savaient "mieux" ont perdu des yeux, des doigts ou d'autres choses à cause d'une négligence ou se sont blessées. La perte de données est presque négligeable en comparaison, mais même celles-ci peuvent être vraiment ennuyeuses. Par conséquent, veuillez prendre cinq minutes pour lire les consignes de sécurité. Parce que même le projet le plus cool ne vaut pas une blessure ou d'autres problèmes.
https://www.nerdiy.de/sicherheitshinweise/

Liens d'affiliation/publicitaires

Les liens vers des boutiques en ligne répertoriés ici sont des liens dits d'affiliation. Si vous cliquez sur un tel lien d'affiliation et effectuez un achat via ce lien, Nerdiy.de recevra une commission de la boutique en ligne ou du fournisseur concerné. Le prix ne change pas pour vous. Si vous effectuez vos achats via ces liens, vous aidez Nerdiy.de à pouvoir proposer d'autres projets utiles à l'avenir. 🙂 


Conditions préalables

Avant de commencer cet article, vous devez avoir préparé le RaspberryPi pour qu'il soit accessible via le réseau et contrôlé via SSH.

Les trois articles suivants décrivent ce qu'il faut faire pour préparer le RaspberryPi :
RaspberryPi - configuration pour les nerdiys !
RaspberryPi – La première configuration !
RaspberryPi - Contrôlez le RaspberryPi via SSH
FHEM – Installation sur le RaspberryPi

Outils nécessaires :
-Non-

Les matériaux nécessaires:

Dans la liste suivante, vous trouverez toutes les pièces dont vous avez besoin pour mettre en œuvre cet article.


Modifier tous les mots de passe d'accès existants (par défaut)

Die wichtigste – weil am meisten ausgenutzte – Sicherheitsvorkehrung ist es eventuell vorhandene Standardpasswörter zu ändern. Verwendet Ihr als Host-Hardware für den FHEM-Server zum Beispiel einen RaspberryPi ist es wichtig, dass Ihr dessen Standard-Login-Daten ändert. Die Standard-Login-Daten “pi” und “raspberry” sind nämlich jeder halbwegs technikinteressierten Person bekannt. Solltet Ihr also hier gerade Eure RaspberryPi-Login-Daten gelesen haben, ist es höchste Zeit diese zu ändern.

Comment changer cela est dans l'article RaspberryPi – La première configuration ! décrites.


Créer une connexion utilisateur HTTPACCESS

La prochaine précaution de sécurité contre l'accès non autorisé à votre interface FHEM est la protection d'accès via HTACCESS. Une fois celui-ci configuré, vous serez invité à saisir les données de connexion associées à chaque tentative d'accès à votre instance FHEM.

Pour mettre en place cette protection d'accès, vous devez d'abord encoder votre combinaison identifiant/mot de passe en base64. Cela fonctionne sous Linux avec une commande intégrée. Pour encoder votre combinaison nom d'utilisateur et mot de passe, il vous suffit de saisir la commande suivante dans la console. Bien sûr, vous devez avant cela grand nom d'utilisateur avec votre nom d'utilisateur et excellent mot de passe remplacez-le par votre mot de passe.

Entrez la commande suivante dans la console de votre RaspberryPi pour encoder vos données de connexion.
echo -n grandnom d'utilisateur:grandmotdepasse | base64
Vous recevrez alors une chaîne encodée en base64 de vos données de connexion. Vous devriez le copier pour pouvoir l'utiliser plus tard.

Sans Linux, un encodeur Base64 en ligne comme www.base64online.com . Entrez simplement votre combinaison de nom d'utilisateur et de mot de passe selon le modèle Identifiant Mot de passe et cliquez sur encoder (DECODE).

Pour activer la connexion avec les données de connexion définies, vous devez procéder comme suit.

Zunächst müsst Ihr das Modul “allowedWEB” mit folgendem Befehl erstellen.
définir autoriséWEB autorisé

Vous devez maintenant lier vos données de connexion copiées à ce module en définissant un attribut approprié. Cela peut être fait avec la commande suivante.

attr autoriséWEB basicAuth dG9sbGVyQmVudXR6ZXJuYW1lOnRvbGxlc1Bhc3N3b3J0
Im letzten Schritt müsst Ihr noch konfigurieren auf welchen Login-Oberflächen der Login abgefragt werden soll. In diesem Fall aktivieren wir die Login-Abfrage für “WEB”, “WEBPhone” und “WEBtablet” mit folgendem Befehl. Habt Ihr für die Login-Oberflächen andere Namen vergeben, muss dieser natürlich entsprechend angepasst werden.
attr autoriséWEB validePour WEB,WEBphone,WEBtablette

C'est déjà ça. Maintenant, redémarrez FHEM en entrant la commande suivante

arrêt redémarrage
Vous pouvez maintenant tester la connexion. Pour cela, accédez à nouveau à l'URL de votre instance FHEM. Cette fois, une fenêtre de connexion devrait apparaître vous invitant à entrer les informations de connexion correctes.
Entrez maintenant le nom d'utilisateur et le mot de passe que vous avez spécifiés précédemment.
Si vous avez entré les bonnes données de connexion, vous devriez être redirigé vers la page d'accueil de votre instance FHEM. Votre interface de configuration est désormais protégée en accès par nom d'utilisateur et mot de passe.

Chiffrer la connexion avec un certificat SSL

Maintenant que vous avez un accès sécurisé à votre interface FHEM, la prochaine précaution de sécurité consiste à vous assurer que votre communication avec elle ne peut être interceptée ou manipulée. A cet effet, un cryptage SSL des données de communication est désormais mis en place. Pour ce faire, un certificat SSL doit d'abord être créé puis connecté à FHEM.

Pour créer le certificat SSL, vous devez d'abord installer deux packages. Pour ce faire, exécutez la commande suivante.
sudo apt-get install libio-socket-ssl-perl && sudo apt-get install libwww-perl
Während der Installation der Pakete werdet Ihr eventuell gefragt ob Ihr damit einverstanden seid, dass durch die Installation zusätzlicher Arbeitsspeicher belegt wird. Bestätigt dies mit einem “J” und “Enter”.
Après avoir installé les packages, utilisez la commande suivante pour basculer vers le dossier de votre installation FHEM.
cd /opt/fhem
Dort wird mit folgendem Befehl der Ordner “certs” erstellt, in welchem dann die Zertifikate erstellt/gespeichert werden.
certificats sudo mkdir
Wechselt nun in den soeben erstellten Ordner “certs”.
cd /opt/fhem/certs
Pour créer le certificat SSL, vous devez exécuter la commande suivante.
sudo openssl req -new -x509 -nodes -out server-cert.pem -days 3650 -keyout server-key.pem
Au fur et à mesure que le certificat est généré, il vous sera demandé des détails sur ce certificat. Vous devez d'abord entrer le code du pays ici, par exemple. Ces entrées ne doivent pas nécessairement être vraies. Ainsi, vous pouvez donner les informations correctes ou...
... utilisez trois traits d'union ou d'autres caractères comme espaces réservés, comme indiqué.
La commande suivante obtient le certificat et...
sudo chmod 644 /opt/fhem/certs/*.pem
... le dossier du certificat a toujours les droits de fichier corrects.
sudo chmod 711 /opt/fhem/certs
Dans les deux dernières étapes, vous devez maintenant activer HTTPS pour le module WEB...
attribut WEB HTTPS
...et redémarrez FHEM pour que les modifications prennent effet.
arrêt redémarrage

Si vous avez redémarré votre serveur FHEM, vous pouvez y accéder presque comme d'habitude. La seule différence est que vous devez maintenant préfixer l'adresse de votre serveur FHEM avec HTTPS.

Da Ihr dabei ein selbstsigniertes Zertifikat nutzt, werdet Ihr von fast allen Browser nun gewarnt und darauf hingewiesen. Im “normalen” Internet könnte dies nämlich ein Hinweis auf ein Datenleck sein. In diesem Fall müsst Ihr euch darüber aber keine Sorgen machen. Die Warnung könnt Ihr also umgehen. Klickt dazu auf “Erweitert”…
…klickt dann auf “Weiter zu ….(unsicher)” um die Warnung zu umgehen und auf Euren FHEM-Server zu zugreifen.
Si vous avez activé la connexion utilisateur, les données de connexion vous seront maintenant demandées.
Sans login utilisateur ou si vous avez correctement saisi les données de connexion, vous arriverez alors comme d'habitude sur votre page d'accueil FHEM.

Définir la sauvegarde automatique avant chaque mise à jour

Vous êtes maintenant généralement bien protégé contre les dangers des personnes et des machines malveillantes. Un autre paramètre utile sont les sauvegardes automatiques avant chaque mise à jour de l'environnement FHEM. De cette façon, vous êtes également protégé en cas de mise à jour défectueuse et vous n'avez pas à restaurer manuellement l'ensemble de la configuration.

Pour ce faire, entrez les commandes suivantes dans la ligne de commande de votre instance FHEM.
attr global updateInBackground 1
attr global backup_before_update 1

Accès Telnet sécurisé

FHEM offre, entre autres, la possibilité d'exécuter des commandes via une connexion Telnet. Ceci n'est pas installé/activé par défaut. Cependant, si vous l'utilisez, il est important que vous protégiez également l'accès ici avec un mot de passe. Cela peut être fait avec la commande suivante. Bien sûr, vous devez encore faire la partie excellent mot de passe durch das von Euch gewählte Passwort ersetzen. Ggf. müsst Ihr hier auch den Teil “telnetPort” anpassen. Dies ist der Name Eures konfigurierten Telnet-Moduls und sollte mit dem von Euch genutzten Namen übereinstimmen.

attr telnetPort mot de passe excellent mot de passe


Fusible FHEM

Vous êtes maintenant généralement bien protégé contre les dangers des personnes et des machines malveillantes. Mais maintenant, vous devez vous armer contre le plus grand ennemi : votre propre stupidité. Surtout en l'essayant et en l'essayant, il peut arriver rapidement que vous configuriez de manière incorrecte le système, qui fonctionnait bien jusqu'à présent. Cependant, si le pire devait arriver, un système qui ne démarre plus peut être restauré rapidement. A condition de disposer d'une sauvegarde à jour, de préférence sur un support de données externe. Ainsi, vous pouvez restaurer le dernier état de fonctionnement sans aucun problème.

définir la sauvegarde régulière à * 03: 00: 00 sauvegarde

Avec ce paramètre, une sauvegarde est créée tous les jours à 03h00 et stockée dans le dossier /opt/fhem/backup. Les fichiers stockés ici doivent bien sûr également être synchronisés avec un autre lecteur. C'est le seul moyen de les sécuriser également en cas d'erreur avec le lecteur ou la carte SD.


Informations Complémentaires

https://de.wikipedia.org/wiki/Base64

https://wiki.fhem.de/wiki/Telnet


Amusez-vous avec le projet

J'espère que tout a fonctionné comme décrit. Si ce n'est pas le cas ou si vous avez des questions ou des suggestions, faites-le moi savoir dans les commentaires. Je les ajouterai à l'article si nécessaire.
Les idées de nouveaux projets sont toujours les bienvenues. 🙂

PS Beaucoup de ces projets - en particulier les projets matériels - coûtent beaucoup de temps et d'argent. Bien sûr, je le fais parce que j'aime ça, mais si vous pensez que c'est cool que je partage l'information avec vous, je serais heureux d'un petit don au fonds du café. 🙂

Achetez-moi un café sur ko-fi.com       

Un commentaire

Kommentar hinterlassen

Votre adresse e-mail ne sera pas publiée. Erforderliche Felder sind mit * markiert


La période de vérification reCAPTCHA a expiré. Veuillez recharger la page.