[[Uebersicht|← Zurück zur Homepage]] # Node-RED Energiemanagement – Systemdokumentation ## Systemumgebung | Parameter | Wert | |---|---| | Host | `node-red` (Proxmox LXC 101) | | OS | Debian Linux | | Node-RED | v5.0.0 | | Node.js | v24.16.0 | | Start-Methode | Direktprozess (nicht via systemd) | | flows.json | `/root/.node-red/flows.json` (35 KB) | | SQLite DB | `/data/energiemanagement.db` | | Disk `/data` | 3,9 GB gesamt, 1,7 GB belegt (46 %) | | HA-Server | `HAPROXMOX` (config-ID: `config_ha_server`) | --- ## Installation Node-RED LXC ```bash # Auf pve Host: bash -c "$(curl -fsSL https://community-scripts.org/scripts/node-red?id=node-red)" ``` LXC ID: 101, Port: 1880 ### Installierte Nodes - `node-red-contrib-home-assistant-websocket` - `node-red-contrib-modbus` (installiert, aktuell nicht genutzt) - `node-red-node-sqlite` - MQTT: eingebaut ### HA Long-Lived Token `Profil → Sicherheit → Langlebige Zugriffstoken → Token erstellen` --- ## FTP-Dienst (vsftpd) | Parameter | Wert | |---|---| | Paket | `vsftpd 3.0.5` | | Status | `active` (systemd, Autostart aktiviert) | | Port | 21 (Steuerung), 40000–50000 (Passiv-Daten) | | Protokoll | FTPS – explizites TLS (AUTH TLS) | | Zertifikat | Selbstsigniert, 10 Jahre, `/etc/ssl/private/vsftpd.pem` | | Zugriff | Nur lokale Linux-User, chroot ins Home-Verzeichnis | | Log | `/var/log/vsftpd.log` | | Config | `/etc/vsftpd.conf` | | Config-Backup | `/etc/vsftpd.conf.bak` | **FTP-Client-Einstellungen:** Protokoll = "FTP über explizites TLS" (nicht SFTP!), Port 21, selbstsigniertes Zertifikat beim ersten Verbindungsaufbau bestätigen. --- ## Git / GitHub | Parameter | Wert | |---|---| | Repo-Pfad | `/root/.node-red` | | Remote | `https://github.com/obecojb/nodered-energiemanagement.git` (privat) | | Branch | `master` | | Letzter Commit | `f4ad564` – "PROJEKT.md auf v14 aktualisiert (LADEN max 80%)" | | Tracked Files | `flows.json`, `PROJEKT.md`, `.gitignore` | | Credential Store | `~/.git-credentials` (chmod 600) | ### Nicht getrackte Dateien (.gitignore) ``` node_modules/ .config.runtime.json .config.users.json flows_cred.json lib/ ``` ### Workflow für Änderungen ```bash git -C /root/.node-red add flows.json git -C /root/.node-red commit -m "vXX - Beschreibung" git -C /root/.node-red push ``` ### Flow Backup ```bash cp /root/.node-red/flows.json /data/flows_backup_$(date +%Y%m%d).json ``` --- ## Dateien & Pfade | Datei / Pfad | Beschreibung | |---|---| | `/root/.node-red/flows.json` | Node-RED Flow (v14, getrackt in Git) | | `/root/.node-red/PROJEKT.md` | Projektdokumentation (getrackt in Git) | | `/root/.node-red/.gitignore` | Git-Ausschlüsse | | `/root/.node-red/settings.js` | Node-RED Konfiguration (nicht getrackt) | | `/data/energiemanagement.db` | SQLite-Datenbank mit Logging-Tabelle | | `/etc/vsftpd.conf` | vsftpd Konfiguration | | `/etc/vsftpd.conf.bak` | Backup der Original-vsftpd-Config | | `/etc/ssl/private/vsftpd.pem` | TLS-Zertifikat + Key für vsftpd | | `~/.git-credentials` | GitHub PAT (chmod 600) | --- ## Offene System-TODOs - [ ] **Node-RED via systemd starten** — Aktuell Direktprozess, kein Autostart nach Reboot. Mit `npm install -g --unsafe-perm node-red` + systemd-Unit absichern - [ ] **FTP-Benutzer einrichten** — Aktuell nur root-Login. Dedizierter User empfohlen: `adduser ftpuser --shell /usr/sbin/nologin` - [ ] **GitHub-Token rotieren** — PAT war im Chat sichtbar. Token invalidieren, neuen erstellen, `~/.git-credentials` aktualisieren --- ## Kontext-Wiederherstellung (für neuen Chat) > "Ich arbeite an einem Node-RED Energiemanagement Flow auf einem Proxmox-Linux-System (LXC, IP 192.168.2.172). Die flows.json liegt unter `/root/.node-red/flows.json`, die SQLite-DB unter `/data/energiemanagement.db`. Der Flow ist aktuell auf **TESTMODUS = false** (Echtbetrieb). Letzter Stand: **v14** vom 18.06.2026. Git-Repo: `https://github.com/obecojb/nodered-energiemanagement.git` (Branch: master). Bitte lese zuerst `/root/.node-red/PROJEKT.md` und danach `flows.json`." --- --- [[Hinweise/Impressum|Impressum]] | [[Hinweise/Datenschutzerklärung|Datenschutz]]