Betreibe deinen eigenen Netzwerk-Monitoring-Server

Installier die Headless-Edition auf einem Linux-, Windows- oder Docker-Host, und DeviceShelf wird zum lokalen Collector für Geräteerkennung, Uptime/SLA, Infrastruktur-Gesundheit, Service-Checks, Heartbeats, Alerts, Berichte, API-Automatisierung, Prometheus und MCP. Dieselbe Lizenz wie Desktop und Mobile.

ÜberwachenGeräte, Dienste, Checks, Heartbeats und Uptime-Verlauf. InfraSNMP, Docker, Proxmox, NAS-Zustand, Syslog und eigene Sensoren. OffenREST-API, Prometheus-Metriken, Nur-Lese-Zugriff und lokales MCP.
DeviceShelf server dashboard — 43 devices with vendors, open ports and response times
Das Dashboard: dein ganzes Netzwerk auf einen Blick — jedes Gerät mit Hersteller, Typ, offenen Ports und Antwortzeit.
DeviceShelf server SLA and uptime report
SLA- und Uptime-Berichte: langfristige Verfügbarkeit, Antwortzeiten und exportierbare Nachweise.
DeviceShelf server infrastructure monitoring
Infrastruktur-Monitoring: SNMP-Zustand, Docker, Proxmox, Syslog und eigene Sensoren in einer Server-Oberfläche.

Was die Server-Edition kann

Dauerhaftes Monitoring

Läuft headless rund um die Uhr und behält die Netze im Blick, die dir wichtig sind — auch wenn dein Desktop aus ist.

Uptime- & SLA-Tracking

Tägliche Verfügbarkeit pro Gerät und Dienst, mit Wiederholungen, Abhängigkeiten und CSV-Export.

Alerts ohne Flut

E-Mail/SMTP, ntfy, Gotify und Webhooks — mit Schweregrad-Routing und Digest-Bündelung.

Öffentliche Statusseite

Eine optionale Nur-Lese-Statusseite, die jeder sehen kann — ohne Login.

Subnetz-übergreifende Erkennung

SNMP- und Multi-NIC-Unterstützung, um Netze jenseits des lokalen Segments zu erreichen.

Frag deine KI (MCP)

Öffne dein Live-Inventar für einen KI-Assistenten — streng lokal, nur lesend, standardmäßig aus.

Berichte, Status und Backup

Uptime-Prozent, tägliche Verfügbarkeitsbalken, CSV-Export, öffentliche Nur-Lese-Statusseite und Konfigurations-Import/-Export.

REST-API und Prometheus

Alles ist über die token-geschützte API skriptbar, mit `/metrics` für Grafana und Automatisierung.

Home Assistant

Veröffentlicht deine Geräte in Home Assistant über MQTT. Anwesenheit, Hersteller und Typ, plus Netzwerk-Ereignisse, auf die eine Automation reagieren kann.

Docker am einfachsten

Speicher das als docker-compose.yml und starte docker compose up -d. network_mode: host lässt es dein LAN sehen; die beiden Capabilities sind unten erklärt.

services:
  deviceshelf:
    image: ghcr.io/wealthwallet/deviceshelf-server:1.7.9
    network_mode: host
    cap_add:
      - NET_RAW              # ARP scan (raw sockets)
      - NET_BIND_SERVICE     # passive DHCP fingerprinting (UDP/67) → Fingerbank
    volumes:
      - ./data:/data         # chown 10001:10001 ./data
    restart: unless-stopped
    # optional: environment: { DEVICESHELF_FINGERBANK_KEY: "<free key from fingerbank.org>" }

Warum diese Capabilities? DeviceShelf Server identifiziert Geräte teils über ihren DHCP-Fingerprint und lauscht passiv auf UDP-Port 67. Weil der Container bewusst als nicht-privilegierter Nutzer läuft (uid 10001), braucht das Binden dieses Systemports das eng gefasste NET_BIND_SERVICE — kein root, kein NET_ADMIN, nur das Öffnen niedriger Ports. Ohne es startet der Server trotzdem normal, nur ohne DHCP-/Fingerbank-Identifikation. NET_RAW ist für den ARP-Scan.

Debian / Ubuntu (.deb)

Über das Terminal installieren — nicht doppelklicken. Unter Ubuntu 24.04 öffnet ein doppelgeklicktes .deb das App Center, das bei Drittanbieter-Paketen still fehlschlagen kann. Das Terminal löst Abhängigkeiten auf und startet den Dienst deviceshelf-server:

Download .deb — amd64 (Intel/AMD) Download .deb — arm64 (Raspberry Pi)

sudo apt install ./DeviceShelf-Server-*.deb

Auf ARM (Raspberry Pi, ARM-Server) nimm die -arm64.deb-Datei.

macOS Server (.pkg)

Lade das universelle Paket und öffne es. Es installiert den Server als Hintergrund-LaunchDaemon und hält ihn nach dem Login am Laufen. Das Dashboard ist auf Port 8088 erreichbar; Updates bewahren die Serverdaten und legen zuerst ein verifiziertes Backup an.

Für macOS laden (universal)

Windows Server / Windows 11

Lade die Zip-Datei, entpack sie und doppelklick install.bat — bestätige die Windows-Admin-Abfrage (UAC). Das installiert und startet den 24/7-Dienst, zeigt dann die Dashboard-URL und das Zugriffstoken und öffnet das Dashboard. Deinstallieren mit uninstall.bat.

Für Windows laden (amd64)

Der Windows-Build ist noch nicht code-signiert, daher warnt Windows womöglich: Bei SmartScreen klick Weitere Informationen → Trotzdem ausführen; wenn Smart App Control an ist, blockiert es unsignierte Apps komplett, bis wir einen signierten Build liefern. Vor dem Entpacken kannst du die Zip rechtsklicken → Eigenschaften → Zulassen ankreuzen. Alle Details stehen in der README in der Zip (7 Sprachen). Passives DHCP-Fingerprinting gibt es auf Windows nicht; alles andere — Scannen, Monitoring, SNMP, Alerts, Dashboard, API — ist dabei.

Erster Start: das Zugriffstoken

Beim ersten Start druckt der Server ein automatisch erzeugtes API-Token in sein Log. Schnapp es dir, öffne dann die Web-Oberfläche auf Port 8088 und füg es ein:

# .deb / systemd:
journalctl -u deviceshelf-server | grep -iA1 auto-generated

# Docker:
docker logs deviceshelf-server | grep -iA1 auto-generated

Öffne dann http://<host>:8088 im Browser und füg das Token ein.

E-Mail-Benachrichtigungen (SMTP)

Füg in den Alert-Einstellungen des Dashboards dein eigenes Mail-Konto als Absender hinzu. Für gängige Anbieter — Gmail, Yahoo, Outlook/Hotmail, iCloud, GMX und andere — lass das SMTP-Server-Feld leer; DeviceShelf erkennt den richtigen Server automatisch. Wegen der Zwei-Faktor-Anmeldung brauchen Gmail, Yahoo und Outlook ein App-Passwort (in den Sicherheitseinstellungen deines Mail-Kontos erzeugt), nicht dein normales Passwort. Für jeden anderen oder selbstgehosteten Anbieter trägst du SMTP-Server, Port und Sicherheit ein. Alerts werden dann über dein Konto an die Empfänger gesendet, die du angibst.

Externer Wächter

Jeder Alarm von DeviceShelf läuft auf deinem eigenen Rechner — deshalb erreicht dich keiner davon, wenn genau dieser Rechner das Problem ist: Stromausfall, Absturz, tote Leitung. Der Wächter deckt diesen Fall ab. Unter Einstellungen → Externer Wächter trägst du die Heartbeat-URL eines Überwachungsdienstes ein; DeviceShelf pingt sie alle 60 Sekunden an, und wenn die Pings ausbleiben, meldet sich der Dienst bei dir. Nimm Healthchecks.io, UptimeRobot (Heartbeat-Monitor), Better Stack, Cronitor oder einen eigenen Empfänger — alle haben einen kostenlosen Tarif, der für ein Heimnetz reicht. Stell die Karenzzeit dort auf etwa das Dreifache des Ping-Intervalls und drück einmal auf Test-Ping senden, um die Verbindung zu bestätigen.

Diesen Dienst betreiben wir bewusst nicht selbst. Ein Wächter muss verfügbarer sein als das, was er überwacht, und er muss außerhalb deines Netzes stehen — das Gegenteil dessen, wofür DeviceShelf gebaut ist.

Frag deine KI über dein Netzwerk MCP

Der Server kann dein Live-Inventar für einen KI-Assistenten über das Model Context Protocol öffnen — so kannst du fragen „was ist gerade online?“, „welche Zertifikate laufen bald ab?“ oder „was ist verwundbar?“ und bekommst Antworten aus deinen eigenen Daten. Es ist streng lokal: Der Endpoint läuft in deinem Server, hinter demselben Token, nur im LAN erreichbar — es gibt keinen DeviceShelf-Cloud-Connector. Standardmäßig aus, nur lesend, und in deiner Lizenz enthalten (funktioniert auch im Trial).

# enable in /etc/deviceshelf/server.env (or your Docker env):
DEVICESHELF_MCP_ENABLE=true

# then point Claude Desktop at it via the mcp-remote bridge:
#   http://<host>:8088/mcp   (Authorization: Bearer <your-token>)

Die volle Tool-Liste und Einrichtung stehen in der Ankündigung. Schreib-Aktionen (Gerät umbenennen, Alarm quittieren, Scan auslösen) bleiben aus, sofern du sie nicht ausdrücklich einschaltest.

Verbinde deinen KI-Agenten MCP

Aktivier zuerst MCP (oben), richte dann deinen KI-Client auf den /mcp-Endpoint des Servers mit deinem API-Token. Ersetz unten <host> und <token>. Die meisten Clients sprechen Streamable HTTP nativ:

Claude Code

claude mcp add --transport http deviceshelf http://<host>:8088/mcp \
  --header "Authorization: Bearer <token>"

Cursor~/.cursor/mcp.json

{ "mcpServers": { "deviceshelf": {
  "url": "http://<host>:8088/mcp",
  "headers": { "Authorization": "Bearer <token>" }
} } }

VS Code (Copilot agent) — .vscode/mcp.json

{ "servers": { "deviceshelf": {
  "type": "http",
  "url": "http://<host>:8088/mcp",
  "headers": { "Authorization": "Bearer <token>" }
} } }

Windsurf~/.codeium/windsurf/mcp_config.json (note: serverUrl)

{ "mcpServers": { "deviceshelf": {
  "serverUrl": "http://<host>:8088/mcp",
  "headers": { "Authorization": "Bearer <token>" }
} } }

Clinecline_mcp_settings.json ("type": "streamableHttp" is required, else it falls back to SSE and fails)

{ "mcpServers": { "deviceshelf": {
  "type": "streamableHttp",
  "url": "http://<host>:8088/mcp",
  "headers": { "Authorization": "Bearer <token>" }
} } }

Gemini CLI~/.gemini/settings.json (note: httpUrl)

{ "mcpServers": { "deviceshelf": {
  "httpUrl": "http://<host>:8088/mcp",
  "headers": { "Authorization": "Bearer <token>" }
} } }

Claude Desktopclaude_desktop_config.json. It has no native static-token remote support, so bridge it with mcp-remote (keep --allow-http for plain http; the token goes in an env var to avoid a Windows arg-quoting bug). Fully quit and relaunch after saving.

{ "mcpServers": { "deviceshelf": {
  "command": "npx",
  "args": ["-y", "mcp-remote", "http://<host>:8088/mcp",
           "--transport", "http-only", "--allow-http",
           "--header", "Authorization:${AUTH}"],
  "env": { "AUTH": "Bearer <token>" }
} } }

ChatGPT-Connectors laufen in OpenAIs Cloud und können einen LAN-Server nicht direkt erreichen. Um sie zu nutzen, stell den Server hinter einen öffentlichen HTTPS-Tunnel (OpenAIs Secure MCP Tunnel, ngrok oder Cloudflare Tunnel), damit er eine https://…/mcp-Adresse hat. Für ein streng lokales Setup nimm lieber einen der Clients oben.

Bereit für den Dauerbetrieb

Die Server-Edition ist jetzt Teil der regulären DeviceShelf-Produktlinie. Sie bewegt sich noch schnell, aber die Positionierung ist einfach: durchgehend betreiben, deine Daten lokal halten und denselben Lizenzschlüssel wie die Desktop- und Mobile-Apps nutzen. Was sich in diesem Build geändert hat, steht in den Release-Notes.

Für den größeren Zusammenhang: Selbst gehostetes Netzwerk-Monitoring zeigt, was dir die Überwachung auf eigener Hardware gegenüber einem Cloud-Dashboard bringt.