cynfo3000
1f8fda6a83
fix: Windows-Seite identisches Format wie Firewalls (Spaltenwahl, Sort, MiniBar)
2026-03-10 02:06:39 +01:00
cynfo3000
4e21fe3c4e
feat: Windows-Seite in Navigation + Agents-Filter excludes Windows
2026-03-10 02:03:40 +01:00
cynfo3000
0e6154a0dd
fix: system_data als RawJSON durchreichen — Windows-Daten nicht mehr weggeworfen
2026-03-10 01:56:09 +01:00
cynfo3000
e94fea3e91
feat: Windows Agent OTA-Updater
...
- PowerShell-Script-Methode: Binary herunterladen, detached PS1 tauscht Binary nach Dienst-Stop
- SHA256-Verifikation vor Update
- v1.0.1 im Firmware-Store
2026-03-10 01:52:16 +01:00
cynfo3000
2fe83e261a
fix: heartbeat system_data als RawMessage — Windows/beliebige Plattformen ohne Datenverlust
2026-03-10 01:49:24 +01:00
cynfo3000
f7bbe3e4b1
fix: firmware/installer Windows support (label, badge, install cmd)
2026-03-10 01:39:51 +01:00
cynfo3000
fabc518bb8
fix: agent permission erlaubt installer/download
2026-03-10 01:34:50 +01:00
cynfo3000
346aea73b9
fix: installer endpoint erlaubt platform=windows
2026-03-10 01:32:52 +01:00
cynfo3000
4f71bd1520
feat: Windows Agent Frontend Panel
...
- WindowsPanel.jsx: Uebersicht (CPU/RAM/Disk), Software (winget), System
- Dashboard: Windows-Agents mit WIN-Badge, oeffnet WindowsPanel
- Gleiche Navigation wie OPNsense/Proxmox (Sidebar-Menue)
2026-03-10 01:28:30 +01:00
cynfo3000
8116b71b48
feat: Windows Agent v1.0.0
...
- Windows-Dienst (golang.org/x/sys/windows/svc)
- Collector: CPU (GetSystemTimes), RAM (GlobalMemoryStatusEx), Disks (GetDiskFreeSpaceEx)
- WS-Client: gleiche Verbindungslogik wie Linux/BSD Agent
- Commands: exec, winget list/install/upgrade/upgrade-all, Windows Updates check/install, reboot
- install.ps1: automatische Service-Installation mit Parametern
- make agent-windows VERSION=x.x.x
2026-03-10 01:22:19 +01:00
cynfo3000
1c7c82dfac
fix: agent permission erlaubt firmware + agents endpoints fuer rmm-updater OTA
2026-03-10 01:08:14 +01:00
cynfo3000
1923b28fa2
refactor: Firmware Agent-Liste kompakt und nach Kunde gruppiert
2026-03-10 01:02:34 +01:00
cynfo3000
16a7cd3f87
fix: ProxmoxPanel Sub-Navigation als linkes Sidebar-Menü wie AgentPanel
2026-03-10 00:58:21 +01:00
cynfo3000
67e15040fb
feat: ProxmoxPanel mit verschachtelter Navigation wie AgentPanel
...
Haupt-Tabs: Uebersicht / Virtualisierung / Speicher / System
Sub-Tabs: VMs+Container | Storage+ZFS+Backups+PBS | Dienste+Updates+Aufgaben+Tunnel+Agent
2026-03-10 00:53:37 +01:00
cynfo3000
81669c59a5
feat: kein automatischer read-Key mehr bei Kundenerstellung
2026-03-10 00:42:32 +01:00
cynfo3000
56cb19d052
feat: API-Keys in Einstellungen gruppiert nach Kunde
2026-03-10 00:36:31 +01:00
cynfo3000
cdb2443d8f
refactor: API-Keys in Einstellungen kompakter (gleicher Stil wie Kunden-Panel)
2026-03-10 00:34:42 +01:00
cynfo3000
4023a14fe1
feat: Agent zeigt Warnung wenn er nicht den Kunden-Key nutzt
...
- last_api_key Spalte in agents, wird bei Heartbeat gesetzt
- GetAgentsByCustomer liefert last_api_key mit
- Frontend: rot + Warnsymbol wenn Key abweicht vom Kunden-Agent-Key
- Grau wenn noch kein Heartbeat mit Key-Info
2026-03-10 00:23:59 +01:00
cynfo3000
20a976767b
fix: getCustomerAgents liefert status + agent_version
2026-03-10 00:21:58 +01:00
cynfo3000
4a79305eee
feat: Kunden-Panel zeigt Agents + API-Keys nebeneinander
2026-03-10 00:20:56 +01:00
cynfo3000
ebd8f1ebb8
fix: agent permission erlaubt /api/v1/agent/register (BSD Agent braucht das zum Start)
2026-03-10 00:15:17 +01:00
cynfo3000
97eefcde5d
fix: Kopieren auf HTTP nutzt execCommand-Fallback (clipboard API braucht HTTPS)
2026-03-10 00:07:47 +01:00
cynfo3000
5cc3476479
feat: Kunden-Seite zeigt API-Keys beim Aufklappen
...
- Klick auf Kundenzeile klappt Key-Panel auf
- Zeigt Agent + Read-only Keys mit Permission-Badge
- Key teilweise maskiert, Kopier-Button vorhanden
- Backend: GET /api/v1/customers/{id}/apikeys
- DB: ListCustomerAPIKeys() nach customer_id gefiltert
2026-03-10 00:06:16 +01:00
cynfo3000
fba824da8b
fix: Agent-Key braucht 'agent' Permission, nicht 'read'
...
- Auto-Erstellung bei neuem Kunden: jetzt agent-Key + read-Key
- agent: fuer OPNsense/Linux Agents (WS + Heartbeat)
- read: fuer externe Lesezugriffe / Dashboards
- Agent-Keys fuer alle 4 Kunden nachtraglich erstellt
2026-03-10 00:03:19 +01:00
cynfo3000
15ad9be8e7
feat: Auto Read-only API-Key bei Kunden-Erstellung
...
- createCustomer erstellt automatisch einen customer-scoped Read-only Key
- Response gibt Customer + neuen API-Key zurueck
- Bestehende 4 Kunden Keys nachtraglich erstellt
2026-03-09 23:56:47 +01:00
cynfo3000
f658f3c4db
fix: deleteAPIKey this.del statt this.delete (JS-Fehler)
2026-03-09 23:55:45 +01:00
cynfo3000
ec30be7246
security: API-Key Permissions + Customer-Scoping
...
- DB Migration: api_keys bekommt 'permissions' + 'customer_id' Spalten
- Permissions: agent | read | write | admin
- agent: nur /api/v1/agent/ws + /api/v1/agent/heartbeat
- read: GET-Endpoints (optional customer-scoped)
- write: alles ausser Terminal
- admin: voll (Terminal bleibt JWT-only)
- Bestehende Keys werden auf 'admin' migriert (Abwaertskompatibilitaet)
- Frontend: API-Key Verwaltung zeigt Permissions-Badge + Kunden-Scope
- API-Client: createAPIKey nimmt jetzt permissions + customer_id
2026-03-09 23:52:26 +01:00
cynfo3000
91385b42d1
security: Terminal-Endpoint JWT-only (kein API-Key Zugriff)
...
- Neue JWTOnlyAuth Middleware: akzeptiert nur JWT, kein API-Key
- Terminal-Route aus allgemeinem CombinedAuth raus, eigener Mount
- API-Keys für Monitoring/Automation erlaubt, aber Terminal braucht
echten Login mit User/Pass + 2FA
- ?token= Query-Param weiterhin erlaubt (Browser-WS kann kein Header setzen)
2026-03-09 23:44:12 +01:00
cynfo3000
e9a47bee26
fix: Terminal Auth per JWT-Token statt leerem API-Key
...
- TerminalModal nutzt jetzt JWT aus localStorage (api.getToken()) fuer WS-Auth
- Backend Middleware: ?token= Query-Parameter fuer WebSocket JWT-Auth
- Behebt: api_key= leer -> 401 -> Terminal nicht erreichbar
2026-03-09 23:39:38 +01:00
cynfo3000
358682e5f3
fix: Backend platform-aware Agent-Update (nicht mehr hardcoded freebsd)
2026-03-09 20:31:26 +01:00
cynfo3000
291d2e3c17
feat: VM/CT Start/Stop im Frontend + Agent proxmox_action Handler
...
- Agent: neuer 'proxmox_action' Command (start/stop/shutdown fuer VMs und LXC)
- Backend: POST /api/v1/agents/{id}/proxmox/action Endpoint
- Frontend: Start/Stop/Shutdown Buttons in VMs- und Container-Tab
- Play (gruen) = starten (nur wenn gestoppt)
- Power (gelb) = Graceful Shutdown (nur VMs, nur wenn running)
- Stop (rot) = Hard Stop (wenn running)
- api/client.js: proxmoxAction() Methode
2026-03-09 20:22:45 +01:00
cynfo3000
4cd9764cec
docs: config.example.js auf aktuelles Runtime-Config-Pattern gebracht
2026-03-09 19:11:58 +01:00
cynfo3000
682dd4183e
docs: Debian 13 PostgreSQL-Versionskonflikt mit TimescaleDB dokumentiert
...
Debian 13 (Trixie) liefert PostgreSQL 17.8, TimescaleDB benoetigt >= 17.9.
Loesung: offizielles PostgreSQL-Apt-Repo (apt.postgresql.org/bookworm-pgdg)
statt Debian-eigene Pakete verwenden.
Fehlerbehebung fuer bestehende Installationen ebenfalls dokumentiert.
2026-03-08 21:14:18 +01:00
cynfo3000
e76f39e9f4
chore: linux binary zu .gitignore
2026-03-08 19:17:53 +01:00
cynfo3000
10684dfc0a
feat: TOTP 2FA + diverse Verbesserungen
...
2FA (TOTP):
- backend/api/auth.go: zweistufiger Login-Flow mit Pending-Token (5min),
Endpunkte /2fa/validate, /2fa/setup, /2fa/confirm, /2fa/disable
- backend/db/users.go: GetUserByID, SetTOTPSecret, EnableTOTP, DisableTOTP
- backend/db/postgres.go: Migration totp_secret + totp_enabled Spalten
- backend/models/user.go: TOTPEnabled/TOTPSecret Felder, neue Request-Typen
- backend/main.go: neue Routen registriert (/2fa/validate ohne Auth, rest geschuetzt)
- backend/go.mod+sum: github.com/pquerna/otp hinzugefuegt
- frontend/src/pages/Login.jsx: zweistufiger Login (Passwort -> TOTP)
- frontend/src/pages/SettingsPage.jsx: TwoFactorSection mit Setup/Deaktivieren
- frontend/src/stores/auth.js: validateTOTP Action
- frontend/src/api/client.js: setupTOTP, confirmTOTP, disableTOTP, validateTOTP
Weitere Aenderungen (unstaged -> jetzt committed):
- frontend/src/components/ScriptModal.jsx: neu
- frontend/src/components/AgentPanel.jsx: Erweiterungen
- frontend/src/components/ProxmoxPanel.jsx: Erweiterungen
- agent-linux/ws/handler.go: Erweiterungen
- backend/api/scheduler.go + tasks.go: Erweiterungen
- backend/db/tasks.go + models/task.go: Erweiterungen
2026-03-08 19:17:43 +01:00
cynfo3000
c76868e806
feat: Updates-Tab, Aufgaben-Tab ProxmoxPanel, security_only Tasks, 3x Netzwerk-Charts, Updates-Spalte Übersicht, dist-upgrade, DeleteAgent cascades metrics
2026-03-07 14:30:12 +01:00
cynfo3000
a51d1bb02f
docs: Linux-Agent vollständige Command-Referenz (exec, reboot, tunnel, pty_start/stop/resize, agent_update, OTA-Prozess)
2026-03-07 00:43:33 +01:00
cynfo3000
879cf5cd28
feat: Web Terminal fuer FreeBSD/OPNsense-Agent (PTY Manager + pty_start/stop/resize Commands)
2026-03-07 00:40:17 +01:00
cynfo3000
b4caf498a0
feat: Web Terminal in OPNsense TunnelTab; README auf Multi-Platform aktualisiert (OPNsense + Linux/Proxmox)
2026-03-07 00:36:54 +01:00
cynfo3000
cb5922714c
docs: Nginx-Config mit API-Proxy + WebSocket-Support, vite ws:true
2026-03-07 00:33:38 +01:00
cynfo3000
e44bd314e8
fix: Terminal WS ueber Nginx-Proxy statt direkt zum Backend (kein self-signed Cert Problem)
2026-03-07 00:30:59 +01:00
cynfo3000
257eee0c83
fix: HTTP/2 deaktivieren fuer WebSocket-Kompatibilitaet (Terminal WSS)
2026-03-07 00:29:07 +01:00
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
6487c2cf59
fix: PBS Backup-Count robusteres find-Pattern fuer alle Namespace-Strukturen
2026-03-06 23:58:16 +01:00
cynfo3000
5995f2e9cc
fix: PBS Backup-Anzahl via find statt snapshot-Befehl (existiert nicht in dieser PBS-Version)
2026-03-06 23:56:22 +01:00
cynfo3000
e565039743
fix: Linux-Agent Update — platform im Heartbeat mitschicken, Backend nutzt plattformspezifische Firmware statt hardcoded freebsd
2026-03-06 23:41:22 +01:00
cynfo3000
7ebbdc76cb
fix: React.useState -> useState in PBSTab
2026-03-06 23:37:55 +01:00