meta data for this page
  •  

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
guide:itt11:installation_von_node-red [2022/09/26 21:54] – angelegt juergenhaasguide:itt11:installation_von_node-red [2024/09/12 13:53] (aktuell) juergenhaas
Zeile 1: Zeile 1:
 ====== Installation von Node-RED ====== ====== Installation von Node-RED ======
  
-Für die Installation von Node-RED steht jeder Schülerin und jedem Schüler eine virtuelle Maschine mit einem aktuellen Ubuntu Linux zur Verfügung. Diese Maschine kann per SSH oder über die Proxmox-Weboberfläche administriert werden.+Für die Installation von Node-RED steht jeder Schülerin und jedem Schüler eine virtuelle Maschine mit einem aktuellen Ubuntu Linux zur Verfügung. Diese Maschine kann per SSH (**Anleitung siehe unten**) oder über die Proxmox-Weboberfläche administriert werden.
  
 ===== Installation ===== ===== Installation =====
  
-Die Installation von Node-RED kann auf verschiedene Arten erfolgen. Empfohlen wird die Installation als Snap.+Die Installation von Node-RED kann auf verschiedene Arten erfolgen. 
  
-Eine Installationsanleitung ist unter [[https://nodered.org/docs/getting-started/local]] zu findenDort gibt es einen eigenen Abschnitt **Installing with snap**.+Empfehlenswert ist vorher eine Aktualisierung mit ''apt update''
 + 
 +Am einfachsten ist dies auf unserem System mittels Snap. Damit dies funktioniert, müssen zuerst die Pakete //squashfuse// und //snapd// installiert werdenDas geht mit dem Befehl 
 + 
 +''apt -y install squashfuse snapd'' 
 + 
 +Danach solltest du das System rebooten. 
 + 
 +''reboot'' 
 + 
 +Nach erfolgreichem Reboot kannst du Node-RED mittels Snap installieren: 
 + 
 +''snap install node-red'' 
 + 
 +Falls die Installation fehlschlägt, versuche es noch einmal. 
 + 
 +Snap startet Node-RED zukünftig automatisch bei jedem Systemstart mit. Du brauchst dich darum nicht mehr zu kümmern.
  
  
Zeile 14: Zeile 30:
 Da diese Node-RED-Installation aus dem gesamten Schulnetz erreichbar ist, muss die Web-GUI gegen unbefugte Benutzung abgesichert werden. Einen Grundlegenden Schutz bietet eine Passwortsicherung für den Admin-Zugriff. Im Produktivbetrieb wäre es unabdingbar zusätzlich auch für eine verschlüsselte Übertragung mittels TLS zu sorgen. Da diese Node-RED-Installation aus dem gesamten Schulnetz erreichbar ist, muss die Web-GUI gegen unbefugte Benutzung abgesichert werden. Einen Grundlegenden Schutz bietet eine Passwortsicherung für den Admin-Zugriff. Im Produktivbetrieb wäre es unabdingbar zusätzlich auch für eine verschlüsselte Übertragung mittels TLS zu sorgen.
  
-Der Passwortschutz wird aktiviert, indem in der Konfigurationsdatei die Kommentarzeichen vor dem entsprechenden Block entfernt werden und der bcrypt-Hash-Wert durch einen selbst erzeugten ausgetauscht wird.+Der Passwortschutz wird aktiviert, indem in der Konfigurationsdatei die Kommentarzeichen vor dem **entsprechenden Block** ''adminAuth'' entfernt werden und der bcrypt-Hash-Wert durch einen selbst erzeugten ausgetauscht wird. Die Datei kann wieder mit **nano** oder einem beliebigen anderen Editor bearbeitet werden.
  
-Der Pfad zur Konfigurationsdatei lautet: /root/.node-red/settings.js+Der Pfad zur Konfigurationsdatei lautet bei einer Installation via Snap''/var/snap/node-red/current/settings.js''
  
 <code plain> <code plain>
-// hier Code einfügen+ 
 +/******************************************************************************* 
 + * Security 
 +  - https 
 +  - httpsRefreshInterval 
 +  - requireHttps 
 +  - httpNodeAuth 
 +  - httpStaticAuth 
 + ******************************************************************************/ 
 + 
 +    /** To password protect the Node-RED editor and admin API, the following 
 +     * property can be used. See http://nodered.org/docs/security.html for details. 
 +     */ 
 +    //adminAuth:
 +    //    type: "credentials", 
 +    //    users: [{ 
 +    //        username: "admin", 
 +    //        password: "$2a$08$zZWtXTja0fB1pzD4sHCMyOCMYz2Z6dNbM6tl8sJogENOMcxWV9DN.", 
 +    //        permissions: "*" 
 +    //    }] 
 +    //}, 
 </code> </code>
  
-Ein Hash-Wert für ein neues Kennwort lässt sich mit dem folgenden Befehl erzeugen:+Ein Hash-Wert für ein neues Kennwort lässt sich z. B. online auf[[https://bcrypt-generator.com/]] erzeugen. Das ist aus Sicherheitsgesichtspunkten bei einem Produktivsystem nicht optimal aber für unseren Anwendungsfall in Ordnung. Auf diese Weise brauchen wir nicht noch zusätzliche Software zu installieren.
  
-''node-red admin hash-pw''+Danach sollte das Snap neu gestartet werden:
  
-Danach sollte ein Neustart erfolgen um die Einstellungen wirksam werden zu lassen.+''snap restart node-red''
  
-''reboot''+Anschließend ist die Anmeldeseite unter der URL ''http://ip-des-servers:1880'' erreichbar. 
 + 
 +===== SSH-Login mit Passwort für root aktivieren ===== 
 + 
 +Das Vorgehen um die Anmeldung als ''root'' mit Kennwort zu erlauben ist auf [[:ssh_root_login|dieser Seite]] beschrieben. 
 + 
 + 
 +===== IPv6-Listener für Node-RED aktivieren ===== 
 + 
 +Standardmäßig hört Node-RED nur über IPv4 auf den Port 1880/tcp. Wenn der Zugriff auf Node-RED auch über IPv6 möglich sein soll, muss ebenfalls die Datei ''/var/snap/node-red/current/settings.js'' angepasst werden. Die Konfigurationszeile ''uiHost'' muss entkommentiert werden und auf ''uiHost: "::",'' gesetzt werden. Danach ''snap restart node-red'' nicht vergessen.