Benutzer-Werkzeuge

Webseiten-Werkzeuge


thoschwiki:anwendungen:node-red

Node-RED

Node-RED ist ein von IBM entwickeltes grafisches Entwicklungswerkzeug. Die Software ermöglicht es, Anwendungsfälle im Bereich des Internets der Dinge mit einem einfachen Baukastenprinzip umzusetzen. Die einzelnen Funktionsbausteine werden durch Ziehen von Verbindungen verbunden. (aus Node-RED) Node-Red ist in der Heimautomatisierungsszene sehr beliebt.

Software
Produkthomepage Node-Red
GitHub node-red
Plattformen Linux, macOS, Windows, Android (experimentell), Docker, AWS, Azure, IBM Cloud
Linux-Paketierung NPN, Snap, RPM
Lizenz Apache License
Preis kostenlos
weitere Informationen im Wiki
Node-RED (Docker)

Installation

In der Dokumentation werden die Installationswege für die verschiedenen Plattformen beschrieben. In Kern wird eine aktuelle Node.js-Umgebung vorausgesetzt, in der dann mit sudo npm install -g –unsafe-perm node-red das Node-Red installiert wird. Auf diesem Weg soll auch die offiziell nicht dokumentierte Installation unter macOS möglich sein.

Für Linux-Systeme gibt es Installer-Scripte sowie ein Snap-Paket.

Konfiguration

Absicherung

In der Standardkonfiguration sind der Editor und die Admin-API nicht passwortgeschützt. Es sollten daher entsprechende Sicherungsmaßnahmen geprüft werden.

Es können u.a. die folgenden Maßnahme zur Absicherung von Node-Red ergriffen werden:

  1. Zugriff auf Editor und Admin-API mit Passwort schützen.
  2. Zugriff auf Editor auf https umstellen

Diese und weitere Maßnahmen sind in der Node-RED-Dokumentation beschrieben.

Zugriff auf Editor und Admin-API mit Passwort schützen

Als erste Maßnahme solte man den Zugriff auf den Editor und die Admin-API passwortgeschützt einrichten. Hierfür können in der settings.js Kombinationen von Benutzernamen und zugehörigen Passworten vorgegeben werden:

adminAuth: {
    type: "credentials",
    users: [
        {
            username: "admin",
            password: "$2a$08$zZWtXTja0fB1pzD4sHCMyOCMYz2Z6dNbM6tl8sJogENOMcxWV9DN.",
            permissions: "*"
        },
        {
            username: "george",
            password: "$2b$08$wuAqPiKJlVN27eF5qJp.RuQYuy6ZYONW7a/UWYxDTtwKFCdB8F19y",
            permissions: "read"
        }
    ]
}

Die entsprechende Passage sollte in der settings.js enthalten und mit führenden // auskommentiert sein.

Der Passwort-Hash wird wie folgt erstellt werden:

node-red admin hash-pw
Wenn Node-RED in einem Docker-Container läuft, kann mit docker exec -it <Name des Container> bash eine Shell im Container aufgerufen werden, um den obigen Befehl aufzurufen.

Zugriff auf Editor auf https umstellen

Abschnitt wird noch ergänzt.

Quellen

thoschwiki/anwendungen/node-red.txt · Zuletzt geändert: 28.02.2022 12:45 von thosch