38 Commits

Author SHA1 Message Date
cynfo3000
fa623569f6 fix: copyToClipboard Fallback fuer HTTP-Kontext (navigator.clipboard nur HTTPS) 2026-03-07 00:26:42 +01:00
cynfo3000
73ff57eaf0 fix: Proxmox TunnelTab SSH-Copy identisch zu OPNsense (auto-copy + grüne Bestätigung + SSH-Button pro Tunnel) 2026-03-07 00:24:29 +01:00
cynfo3000
67a337ed9f feat: Web Terminal (xterm.js + PTY over WebSocket) + SSH-Copy-Karte im Tunnel-Tab 2026-03-07 00:20:03 +01:00
cynfo3000
3c83cf11de feat: PBS — Disk-Auslastung via df, laufende Tasks, Kacheln kleiner ohne Debian-Version 2026-03-07 00:08:01 +01:00
cynfo3000
7ebbdc76cb fix: React.useState -> useState in PBSTab 2026-03-06 23:37:55 +01:00
cynfo3000
1204e05d0b feat: PBS Tab — Stat-Karten (Datastores/Backups/SyncJobs/Kernel) + neues Layout 2026-03-06 23:36:48 +01:00
cynfo3000
67651a5aeb feat: PBS Datastores — Backup-Anzahl, neues Layout mit GC/Verify/Prune Buttons 2026-03-06 23:34:43 +01:00
cynfo3000
474a396589 feat: PBS-Badge neben Hostname in Proxmox-Uebersicht 2026-03-06 23:11:13 +01:00
cynfo3000
c1d1bd8a5e feat: PBS Collector — automatische Erkennung, Datastores + Tasks + GC, Frontend-Tab 'Backup Server' 2026-03-06 23:02:54 +01:00
cynfo3000
a0fb6b465f fix: Linux Installationsanleitung auf /installer/download Endpoint und install-linux.sh umgestellt 2026-03-06 22:22:26 +01:00
cynfo3000
9cb504fea1 feat: Interface-Durchsatz-Chart — Backend berechnet RX/TX-Rate (bps), Frontend zeigt Dual-Sparkline per Klick auf Interface 2026-03-06 22:00:33 +01:00
cynfo3000
eb5266f848 feat: Sparkline-Charts für CPU und RAM (8h) — generischer useMetricChart Hook 2026-03-06 21:56:03 +01:00
cynfo3000
aca013b848 feat: PF States Chart (Sparkline letzte 8h) — Backend schreibt pf_states in TimescaleDB, Frontend zeigt SVG-Sparkline 2026-03-06 21:47:47 +01:00
cynfo3000
28ebb5378d docs: FRONTEND.md vollständig (Nginx, Node, config.js, deploy) + config.js aus Repo entfernt 2026-03-06 09:30:33 +01:00
cynfo3000
48ac353d28 Initial commit — cynfo RMM (clean history, no secrets) 2026-03-06 09:18:45 +01:00
cynfo3000
d4b6ca86e5 feat: Task Health Check + customer_number in webhook payload
- Task model: CustomerNumber field (K-Nummer aus customers.number)
- DB: taskSelectCols joined c.number, scanTask scans CustomerNumber
- Hub: WaitForAgentOnline() polls until agent reconnects or timeout
- Scheduler: executeUpdateWithHealthCheck() waits for agent reconnect after update
  - health_check: {agent_online: bool, checked_at: RFC3339} in result
  - Status: completed_with_warning wenn Update OK aber Agent offline bleibt
- Frontend: Task-Tabelle zeigt Status-Badge (lauft/fehler/warnung/abgebr.)
2026-03-05 10:53:08 +01:00
cynfo3000
721fd5008f Feature: Recurring jobs with professional scheduling dialog 2026-03-05 09:39:41 +01:00
cynfo3000
f4a28463b7 Feature: PF States, HAProxy + Caddy collectors and dashboard 2026-03-05 09:29:14 +01:00
cynfo3000
31369381d0 UI: Two-level navigation in AgentPanel (DATAZONE style) 2026-03-05 09:09:54 +01:00
cynfo3000
7908ae26a0 Feature: Task Scheduler - planned tasks with webhook support 2026-03-05 08:59:53 +01:00
cynfo3000
e1a3246075 UI: Installationsanleitung Button auf Firewalls und Proxmox Seiten 2026-03-05 07:35:59 +01:00
cynfo3000
5b503e6dba Feature: System settings in DB - configurable backend URLs and API key 2026-03-04 23:57:14 +01:00
cynfo3000
a64ee3b944 Config: config.js.example with placeholders, real config.js in .gitignore 2026-03-04 23:51:14 +01:00
cynfo3000
70b10a4291 Feature: Audit-Log - tracks all user actions with timestamps 2026-03-04 23:45:01 +01:00
cynfo3000
06189a1468 Feature: Sicherheit Tab - SSH Login Audit + Session History 2026-03-04 23:16:18 +01:00
cynfo3000
7f5bb07409 Security: remove hardcoded credentials, use placeholders and config 2026-03-04 08:17:37 +01:00
cynfo3000
240cbe37fa Proxmox: feinere Tabelle, konfigurierbare Spalten (localStorage), kompaktere MiniBar+VmBadge 2026-03-04 00:11:43 +01:00
cynfo3000
5d26158b53 WAN IP fix: IPv4 bevorzugen, PPPoE-Interfaces korrekt erkennen 2026-03-04 00:04:32 +01:00
cynfo3000
983ecf390c Clipboard fix: fallback fuer HTTP (non-secure) context, SSH copy-to-clipboard 2026-03-03 23:54:56 +01:00
cynfo3000
025840e9ba Firewalls: konfigurierbare Spalten (localStorage), kurze Versionsnr, WAN/LAN IP getrennt, Spalten-Zahnrad 2026-03-03 23:41:19 +01:00
cynfo3000
25a6cc2a1a Installer-Paket System: Backend speichert/served ZIP, Frontend Upload+Download, install.sh auto-download von Backend statt Git 2026-03-03 23:37:31 +01:00
cynfo3000
eb52507c08 install.sh + frontend: use external URL dsbmueller.spdns.org:8443, configurable via RMM_BACKEND env 2026-03-03 23:17:58 +01:00
cynfo3000
5f37e28046 install.sh: auto-download from backend, InstallGuide component for frontend dialogs 2026-03-03 23:13:32 +01:00
cynfo3000
7f9fbd257f Linux/Proxmox Agent + Plattform-Updater + Proxmox Frontend
- agent-linux/: Kompletter Linux/Proxmox RMM Agent
  - Collectors: CPU, Memory, Disk, Network, Services, Updates, Proxmox (VMs, Container, Storage, ZFS), Backups
  - Backup Collector: Jobs nach Node gefiltert (Cluster-aware)
  - WebSocket: Tunnel-Support, writeMux fuer stabile Verbindungen
  - Systemd Service Template

- updater/: Plattform-unabhaengiger Updater (FreeBSD + Linux)
  - runtime.GOOS erkennt Plattform automatisch
  - FreeBSD: /usr/local/rmm/, service rmm_agent
  - Linux: /usr/local/bin/, /etc/rmm/, systemctl rmm-agent
  - Firmware-Download mit ?platform= Parameter

- frontend/: Proxmox-Bereich
  - ProxmoxServers.jsx: Eigene Seite fuer PVE Server mit VM/CT Counts
  - ProxmoxPanel.jsx: Detail-Panel mit Uebersicht, VMs, Container, Storage, ZFS, Tunnel, Dienste, Updates, Backups
  - Agents.jsx: Filtert Linux-Agents raus (nur OPNsense)
  - Sidebar: Proxmox Navigationspunkt
  - Installationsanleitung mit rmm-agent-linux + rmm-updater-linux

- backend: Platform-Feld fuer Agents, Firmware multi-platform
2026-03-01 22:03:18 +01:00
cynfo3000
c114df215a Fix: SettingsController in install.sh aktualisiert (rmmagent[general] Parsing) 2026-03-01 01:37:35 +01:00
cynfo3000
e74cdce0ba Agent-Updater, Multi-Plattform Firmware, Frontend Firmware-Seite, Agent-Tab, Zertifikate-Redesign
Updater:
- Separater Go-Daemon (rmm-updater) als eigener rc.d Service
- Pollt alle 60s: Firmware vorhanden + Hash unterschiedlich + Flag gesetzt
- Download -> SHA256 Verify -> Agent Stop -> Replace -> Agent Start
- Automatisches Rollback bei Fehler
- Deployed und getestet auf allen 3 Firewalls (.1, .19, .33)

Backend:
- Firmware-DB multi-plattform (freebsd/linux/windows)
- update_requested Flag pro Agent in agents Tabelle
- Heartbeat-Response liefert update_available wenn Flag gesetzt
- Neue Endpoints: request-update, request-update-all, firmware/download
- Auth: JWT + CombinedAuth Middleware (API-Key OR JWT)
- Customers CRUD + Agent-Zuordnung
- Users CRUD + Passwort-Aenderung

Frontend:
- Firmware-Seite: Multi-Plattform Upload, Agent-Liste mit Update-Trigger
- Agent-Tab im AgentPanel: Update-Button, nuetzliche Befehle, Agent-Info
- Zertifikate-Tab redesigned: Karten-Layout mit Restlaufzeit und Farbbalken
- Sidebar: Firmware-Eintrag hinzugefuegt

Plugin:
- install.sh erweitert: Installiert Agent + Updater + rc.d Services
- rmm_updater rc.d Service

README:
- Architektur-Diagramm erweitert (Frontend + Updater)
- Auth, Customers, Users, Firmware API dokumentiert
- Updater-Flow dokumentiert
- Frontend-Seiten und Deploy beschrieben
- DB-Schema aktualisiert (neue Tabellen)
- Dateistruktur erweitert (updater/, frontend/, firmware.go, auth.go)
2026-02-28 22:43:03 +01:00
cynfo3000
616a0cb6ac Frontend: Firewall-Tabelle mit CPU/RAM/Disk/Uptime/Gateways, sortierbar, Slide-in Detail-Panel mit Tabs (Uebersicht, Interfaces, Dienste, VPN, Routen, DHCP, Zertifikate, Backups) 2026-02-28 16:03:02 +01:00
cynfo3000
c56fded7d7 Frontend: React+Vite+Tailwind, Login, Dashboard, Agents, Customers, Settings, Dark Theme, Nginx auf .20 2026-02-28 15:40:07 +01:00