cynfo3000
be7cd32d45
docs: API-Key-Henne-Ei-Problem erklaert
...
Der api_key wird vom Nutzer selbst in config.yaml festgelegt und
gleichzeitig in frontend/.env eingetragen — kein laufendes System
noetig. Hinweis auf zusaetzliche Keys ueber die Settings-UI.
2026-03-08 19:33:09 +01:00
cynfo3000
65c0e6145b
docs: vollstaendige Installationsanleitung im Schnellstart
...
- Schritt-fuer-Schritt: Voraussetzungen, Konfiguration, DB-Setup,
Bauen, Backend-Deploy, Frontend-Deploy, Agent-Installation
- .env-basierte Konfiguration dokumentiert (kein config.js mehr)
- 2FA-Einrichtung als empfohlener erster Schritt nach Login erwaehnt
- Troubleshooting-Tabelle fuer haeufige Probleme
- Standardpasswort Start!123 entfernt (wird beim ersten Start generiert)
2026-03-08 19:29:57 +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
e01fd7698c
docs: 10 weitere Screenshots hinzugefügt (Login, Dashboard, Netzwerk, Sicherheit)
2026-03-06 18:54:12 +01:00
cynfo3000
225332f519
docs: 5 neue Screenshots hinzugefügt (Backups, Aufgaben, Tunnel, Updates, Agent)
2026-03-06 18:53:13 +01:00
cynfo3000
fccf5b823a
docs: Screenshots hinzugefügt (Firewalls, System, Netzwerk, HAProxy)
2026-03-06 12:47:21 +01:00
cynfo3000
3060516080
docs: Donate-Link hinzugefügt
2026-03-06 12:33:56 +01:00
cynfo3000
138a43e69b
docs: updater/README.md erstellt (cross-platform, FreeBSD+Linux), Komponenten-Tabelle ergänzt
2026-03-06 10:07:15 +01:00
cynfo3000
0698c26a29
docs: README Komponenten-Tabelle aktualisiert — AGENT.md/FIRMWARE.md entfernt, agent-bsd/agent-linux README verlinkt
2026-03-06 10:04:42 +01:00
cynfo3000
f3b052e2c7
refactor: agent/ → agent-bsd/, README.md für BSD-Agent erstellt, Referenzen aktualisiert
2026-03-06 09:48:05 +01:00
cynfo3000
d096922479
docs: echte Agent-IDs und Hostnamen aus README entfernt
2026-03-06 09:42:08 +01:00
cynfo3000
7f5bb07409
Security: remove hardcoded credentials, use placeholders and config
2026-03-04 08:17:37 +01:00
christian
77ec200b42
Docs aufgesplittet: README + docs/BACKEND + AGENT + FRONTEND + API + FIRMWARE
2026-03-01 01:23:21 +01:00
christian
fb5930051e
Plugin WebGUI fix, Pre-Registration, Service-Filter, Business-Lizenz, Firmware-Mgmt
2026-03-01 01:18:47 +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
5daf81b9de
README: Agent-Installation als OPNsense-Plugin mit WebGUI-Konfiguration
2026-02-28 14:15:40 +01:00
cynfo3000
d8bc99873f
README: Vollstaendige Installationsanleitung Backend+Agent, alle SQLite-Referenzen durch PostgreSQL+TimescaleDB ersetzt
2026-02-28 13:36:59 +01:00
cynfo3000
3f3d555658
Cron-Jobs Collector: System-Crontab + OPNsense config.xml Jobs
...
- Neuer Collector: agent/collector/cron.go
- Zwei Quellen: crontab -l (System) + config.xml OPNsense-Jobs
- Daten im Heartbeat unter 'cron_jobs'
- Pro Job: source, schedule, enabled, command, description, uuid, origin
- Backend Model CronJob in models/system.go
- Getestet: 18 Jobs auf Produktion (8 System + 10 OPNsense)
- README + Dateistruktur aktualisiert
- Agent auf allen 3 Firewalls deployed
2026-02-28 13:19:09 +01:00
cynfo3000
c72b791796
Agent-Status und Inaktivitaets-Erkennung implementiert
...
- Status wird aus last_heartbeat berechnet (online/stale/offline/unknown)
- GET /agents und GET /agents/{id} liefern status Feld
- agent_events Tabelle fuer Event-Tracking (Migration automatisch)
- Inaktivitaets-Monitor als Goroutine (prueft alle 60s, schreibt Events bei Statuswechsel)
- WebSocket Connect/Disconnect Events werden automatisch geschrieben
- API-Endpoints: GET /agents/events und GET /agents/{id}/events (?limit=N&type=X)
- DB-Methoden: InsertAgentEvent, GetAgentEvents, GetAllAgentEvents, GetAgentStatus
- README aktualisiert (Status-Doku, Events API, Dateistruktur)
2026-02-28 13:13:13 +01:00
cynfo3000
5d7a3cbcc1
SQLite durch PostgreSQL + TimescaleDB ersetzt
...
- Backend DB komplett auf PostgreSQL 17 + TimescaleDB 2.25.1 umgestellt
- pgx pure-Go Driver (kein CGO), modernc/sqlite entfernt
- Hypertable 'metrics' fuer Time-Series Daten
- Automatische Metrik-Extraktion bei jedem Heartbeat:
CPU, RAM, Uptime, Disk, Network-Traffic, Gateway RTT/Loss
- Retention Policy: 90 Tage, Compression nach 7 Tagen
- Neue API-Endpoints: GET /metrics (raw) + GET /metrics/summary (aggregiert)
- time_bucket() Aggregation (5min, 1h, etc.)
- config.yaml: database-Block statt db_path
- docs/POSTGRES_SETUP.md: Installationsanleitung
- README aktualisiert
2026-02-28 12:48:14 +01:00
cynfo3000
62eeaf79e2
README: Alle Beispiele mit echten Zugangsdaten, alle 3 Agent-IDs dokumentiert
2026-02-28 11:28:22 +01:00
cynfo3000
c10c311424
WireGuard Peer Management: Add/List/Delete Peers via API
...
- Agent: wg_add_peer, wg_delete_peer, wg_list_peers Commands
- Keypair-Generierung auf der Firewall (wg genkey/pubkey)
- Automatische IP-Vergabe aus dem Tunnel-Subnetz
- WAN-IP Auto-Detection via Default-Route Interface
- Endpoint als Parameter uebergebbar (fuer DynDNS etc.)
- Config-Aenderungen direkt in config.xml (Go-basiert, kein PHP)
- configctl wireguard configure fuer Live-Reload
- Client-Config in Response (ready for import)
- Server-Name default: ALWAYSON_VPN
- Backend: 3 neue API-Endpoints (POST/GET/DELETE)
- README mit vollstaendiger Dokumentation
2026-02-28 11:22:18 +01:00
cynfo3000
b895d08f15
README: Agent-Faehigkeiten Uebersicht (Collectors, Commands, registrierte Agents)
2026-02-28 10:52:43 +01:00
cynfo3000
e7beada405
Config-Backup Feature: Agent liest config.xml, Backend speichert versioniert mit Deduplizierung
...
- Agent: neuer 'backup' Command (SHA256 Hash, Base64 Transfer)
- Backend: config_backups Tabelle in SQLite
- API: trigger, list, download (JSON/XML), delete, diff
- Deduplizierung: gleicher Hash = kein neuer Eintrag
- WebSocket ReadLimit auf 4MB erhoeht (grosse config.xml)
- README aktualisiert mit Backup-Docs
2026-02-28 10:44:09 +01:00
cynfo3000
23c8f2cd66
Major-Update Ablauf korrigiert und getestet
...
Agent:
- major_update: opnsense-update -r <ver> -bkp + pkg-static update -f + pkg-static upgrade -y
- Reboot ist bei Major-Updates default true (immer noetig)
- update_check: reboot_required Flag hinzugefuegt
- update: reboot_required korrekt aus opnsense-update -c Exit-Code
- Alle Steps liefern strukturierte Ergebnisse fuer Frontend-Workflow
Getestet auf 192.168.85.19:
- Normales Update: 25.7 → 25.7.11_9 (93 Pakete) erfolgreich
- Major-Upgrade: 25.7.11_9 → 26.1.2_5 erfolgreich (Base+Kernel+Packages+Reboot)
README: Update-Ablauf dokumentiert (Normal vs Major)
2026-02-28 09:35:33 +01:00
cynfo3000
f55536623e
README: Alle Beispiele mit echten Zugangsdaten (Backend, API-Key, Agent-ID)
2026-02-28 09:08:58 +01:00
cynfo3000
33c3b84d0f
README: Agent-API-Beispiele ergaenzt (list, get, system, delete, hub, exec)
2026-02-28 09:04:38 +01:00
cynfo3000
ebc70f17eb
Update-Commands: update, major_update, update_check, reboot
...
Agent:
- update: opnsense-update + pkg upgrade -y, optionaler Reboot
- major_update: opnsense-update -r <version>, optionaler Reboot
- update_check: Prueft Core- und Paket-Updates, liefert Details
- reboot: Shutdown mit konfigurierbarer Verzoegerung
Backend:
- Synchrone API-Endpoints (warten auf Agent-Response)
- Response-Waiter-System im Hub (Command-ID basiert)
- Konfigurierbare Timeouts pro Command-Typ
- POST /agents/{id}/update[-check] und /major-update und /reboot
README mit Update-Beispielen und API-Doku aktualisiert
2026-02-28 09:01:04 +01:00
cynfo3000
68e712b3a3
Meilenstein 2: Session-basierte TCP-Tunnel
...
- Tunnel unterstuetzen mehrere gleichzeitige TCP-Verbindungen
- Jede Proxy-Verbindung bekommt eigene Session-ID
- Agent: Lazy-Connect (Ziel-Verbindung erst bei Datentransfer)
- Backend: Ready-Handshake (wartet auf Agent-Bestaetigung)
- Binary WebSocket Messages mit Session-ID statt Tunnel-ID
- Connection.Close() Race-Condition behoben (sync.Once)
- SendToAgent/SendBinaryToAgent mit Timeout statt Blocking
- Hub verarbeitet Agent-Responses (Session-Confirm)
- README komplett aktualisiert
2026-02-28 08:53:10 +01:00
cynfo3000
f47154787d
WebSocket-Infrastruktur: bidirektionaler Command-Kanal + TCP-Tunnel
...
- Agent: WS-Client mit Reconnect, Command-Handler (exec, tunnel_open/close/data)
- Backend: WS-Hub, Tunnel-Manager mit dynamischen Proxy-Ports (10000-20000)
- API: /agents/{id}/exec, /tunnel, /tunnels, /proxy/{tunnel_id}
- Binary WebSocket Messages fuer effiziente Tunnel-Daten
- gorilla/websocket (pure Go, kein CGO)
- README aktualisiert
2026-02-28 07:42:33 +01:00
cynfo3000
6120d0cffa
Initial commit: RMM Agent + Backend
...
- Go Agent (FreeBSD/amd64) fuer OPNsense
- Go Backend (Linux/amd64) mit REST API + SQLite
- Collector: Hardware, CPU, Memory, Disks, Network, Services,
WireGuard, DHCP (KEA/ISC/dnsmasq), Routes, Gateways,
Certificates, Plugins, Updates
- Persistente Agent-ID
- TLS + API-Key Auth
- WebSocket-Infrastruktur (WIP): bidirektionaler Command-Kanal,
TCP-Tunnel fuer Remote-Zugriff auf Firewall-WebUI
- Lastenheft und README
2026-02-28 07:38:14 +01:00