Freitag, 21:37. Du kommst von der Arbeit, sitzt noch im Auto vor dem Haus, und Telegram macht bzz. Grafana-Alarm: Server im Keller 78°C, Lüfter PWM 100%, Level 7. In drei Stunden ruft dein Kunde aus Berlin-Wedding an, weil sein HA seit 18:00 Uhr aus ist und nichts wieder hochkommt. Du könntest jetzt das Dashboard öffnen, schauen ob es ernst ist - vielleicht stirbt die SSD, vielleicht ist nur der Lüfter seit der letzten Reinigung mit Staub vollgesetzt - oder einfach achseln und schlafen gehen. Du kannst sinnvoll keines von beidem. Weil Grafana hinter einem Router auf einer öffentlichen IP sitzt, die du nicht hast, und WireGuard um 21:30 Uhr vom Laptop deiner Frau aufzubauen ist kein Plan.
Du gehst mit Bauchschmerzen ins Bett. Bis zum Morgen war die CPU sechs Stunden lang auf 99%, der Kunde hat dreimal geschrieben, das Lüfterlager ist hin. Monitoring ohne Fernzugriff ist Theater. Die Dashboards sehen toll auf dem Wohnzimmer-TV aus, aber beim ersten Vorfall weißt du genau so viel, wie in eine Push-Notification passt. Also nichts.
Warum Grafana speziell ist - 3 typische Use Cases#
Grafana hat diese Eigenart: Alle sagen, dass sie es nutzen, aber realistisch öffnen es nur 30% häufiger als einmal im Monat. Der Rest hat es aufgesetzt, vier YouTube-Dashboards kopiert und vergessen. Das ist kein Vorwurf, es ist eine Beobachtung. Denn Grafana bedient drei sehr verschiedene Menschen, und jeder nutzt es anders.
Der Home-Assistant-Hobbyist. Ich zu Hause. Dashboard mit Zimmertemperaturen, Stromverbrauch (HA + Shelly EM), Kamerastatus, Wärmepumpen-Laufzeit. Du öffnest es einmal die Woche, meist um es einem Kollegen zu zeigen oder der Frau zu beweisen, dass du wirklich benutzt, was du gekauft hast. SSH-Tunnel = mehr als genug. Keiner schaut hin, wenn du nicht hinschaust.
Der Self-Hosting-Maniac. Proxmox + 6 LXCs, InfluxDB 2.7, node_exporter auf jeder Maschine, mqtt_exporter, smart_exporter auf dem NAS. Du öffnest es jeden Morgen beim Kaffee und prüfst, ob nachts nichts hochgegangen ist. Plus Telegram-Alarme bei Disk > 85% oder OOM-Kill. Hier ist Grafana keine Deko - es ist die erste Diagnoselinie. Wenn etwas kaputt ist, öffnest du die Panels bevor du SSH startest.
Der Installateur/Freelancer (B2B). Der härteste Fall. 30 Installationen bei Kunden, jede mit eigenem Pi 4 / Mini-PC, lokales Prometheus scraped Metriken, zentrales Grafana in deinem Büro (oder VPS) aggregiert alles. SLA: 99% Uptime, 100€/h Strafe bei Ausfällen darüber. Hier ist Grafana Brot, Butter und Rente. Ohne Fernzugriff existierst du in dieser Branche nicht.
Für die ersten zwei ist ein SSH-Tunnel Overkill, der sich durch Komfort rechnet. Für den Freelancer sind Tunnel + Auto-Failover + Multi-Channel-Alerts das Minimum, kein Luxus.
4 Wege zum Grafana-Fernzugriff - Ranking#
1. Port-Forwarding 3000 → öffentliche IP#
Verdikt: NEIN. Und das ist keine Meinung.
Grafanas Default-Credentials sind admin/admin. Du änderst sie beim ersten Login - aber Grafana startet bevor du dich einloggst, also gibt es ein Fenster (Sekunden, Minuten), in dem es mit Defaults exponiert ist. Shodans Bot scant Port 3000 ununterbrochen. Durchschnittliche Zeit von Veröffentlichung bis zum ersten Bot-Login-Versuch: 2 Stunden.
Plus: CVE-2023-3128 (Auth-Bypass über Azure AD OAuth - relevant wenn du Auth-Proxy aktiviert hast, und viele lesen die 9.x → 10.x Changelogs nicht), CVE-2024-1442 (Info-Disclosure), CVE-2022-31097 (XSS in Alerts). Grafana ist ein aktives, plugin-lastiges Projekt, also ist die Angriffsfläche riesig. Port 3000 öffentlich = dem Internet Admin-Zugang zu deinen Datenquellen geben, und von da oft zur Passwort-DB, MQTT-Broker, HA-API.
2. Grafana Cloud#
Verdikt: bequem, teuer, Daten gehen in die USA.
Free Tier: 10k Series, 50 GB Logs. Klingt okay, bis du merkst, dass ein HA mit 200 Sensoren allein 8k Series produziert. Mit zwei Kunden bist du im Paid Tier. Pro: 49$/Monat für 100k Series - etwa 12 HA-Installationen. Freelancer mit 30 Kunden: 150$/Monat minimum.
Zweites Problem: Schrems II. Temperatur-Metriken aus der Wohnung der Kundin in München fliegen nach AWS us-east. Außerhalb der EU nicht ruhend verschlüsselt. DSGVO-Compliance: grau. Für manche Kunden (Kanzleien, Kliniken) - rot.
3. Cloudflare Tunnel#
Verdikt: kostenlos, aber schlecht für Grafana geeignet.
Cloudflare Tunnel (cloudflared) baust du in 10 Minuten auf. Funktioniert. Bis:
- Cloudflare WAF blockiert Grafana-API-Endpoints (
/api/datasources/proxy/*- False Positive auf "SQL Injection" in Flux/PromQL-Queries, zweimal pro Woche) - Dashboard-Sharing über
share=truegibt 502 zurück (Long-Lived-Render-Request > 100s Timeout) - Plugin-Marketplace lädt nicht (braucht WebSocket ohne Proxy-Interferenz)
- Im Free-Plan max Body 100MB - Export eines 30-Panel-Dashboards als PDF bricht ab
Für statische Seiten - perfekt. Für Grafana - wöchentliche Frustration.
4. Reverse-SSH-Tunnel (SmartHomeEntry)#
Verdikt: für die meisten am besten.
Deine Grafana bleibt bei dir. Der Tunnel ist nur TCP-Transport - keine Inspektion, keine WAF, die Queries blockiert, keine Timeouts bei Long Polling. Die Subdomain meinegrafana.smarthomeentry.com mappt auf lokalen Port 3000 via Reverse-SSH. Preis: pauschal, unabhängig von der Series-Anzahl. Metriken verlassen dein Netzwerk nie über den Tunnel zum Browser hinaus.
| Methode | Setup | Kosten/Monat | Sicherheit | Plugins/WS funktionieren | DSGVO |
|---|---|---|---|---|---|
| Port-Forward 3000 | 5 min | 0€ | Tragisch (Shodan in 2h) | Ja | OK (lokal) |
| Grafana Cloud | 30 min | 49-150$+ | Gut | Ja | Problem (USA) |
| Cloudflare Tunnel | 10 min | 0€ | Gut | Teilweise (WAF blockiert) | OK |
| SmartHomeEntry | 60 sec | Pauschale | Gut (SSH 127.0.0.1) | Ja | OK (lokal) |
Wenn du das liest und Grafana per Port-Forwarding exponiert hast - schließe diesen Port jetzt, bevor du den Artikel zu Ende liest. Prüfe /var/log/grafana/grafana.log auf Login-Versuche von komischen IPs. Wenn du "Invalid username or password" alle paar Sekunden siehst - gratuliere, du bist im Botnetz-Sweep. Passwort ändern, prüfen wer erfolgreich eingeloggt ist (Spalte aus USA, Russland, China = rote Flagge), Default-Admin-Account deaktivieren.
Grafana + SSH-Tunnel-Setup in 60 Sekunden#
Ich nehme an, Grafana 10.x läuft schon auf einem Raspberry Pi 4 / Mini-PC / Proxmox-LXC. Wenn nicht - apt install grafana, systemctl enable --now grafana-server, Port 3000 lokal und dann zurück hier.
Schritt 1. Konto bei SmartHomeEntry anlegen, Subdomain meinegrafana.smarthomeentry.com wählen (oder kunde-x.smarthomeentry.com bei Kundeninstallation).
Schritt 2. Install-Command aus dem Panel kopieren, im Terminal auf der Grafana-Maschine einfügen. Agent verbindet sich per Reverse-SSH zum Relay, lokaler Port 3000 wird auf deine öffentliche Subdomain gemappt.
Schritt 3. /etc/grafana/grafana.ini editieren (kritisch - ohne das brechen absolute Links, iframe-Embeds und Auth-Callbacks):
[server]
protocol = http
http_port = 3000
domain = meinegrafana.smarthomeentry.com
root_url = https://meinegrafana.smarthomeentry.com
serve_from_sub_path = false
[security]
cookie_secure = true
cookie_samesite = lax
allow_embedding = true
Schritt 4. systemctl restart grafana-server
Schritt 5. https://meinegrafana.smarthomeentry.com im Browser öffnen. Grafana-Login sollte erscheinen. Fertig.
Wenn du Grafana in Docker Compose laufen lässt (typische Proxmox- oder NAS-Konfiguration):
services:
grafana:
image: grafana/grafana:10.4.2
container_name: grafana
ports:
- "127.0.0.1:3000:3000"
environment:
- GF_SERVER_ROOT_URL=https://meinegrafana.smarthomeentry.com
- GF_SERVER_DOMAIN=meinegrafana.smarthomeentry.com
- GF_SECURITY_COOKIE_SECURE=true
- GF_SECURITY_ALLOW_EMBEDDING=true
- GF_SECURITY_ADMIN_PASSWORD__FILE=/run/secrets/grafana_admin
volumes:
- grafana-data:/var/lib/grafana
restart: unless-stopped
volumes:
grafana-data:
Achtung: Bind auf 127.0.0.1:3000, nicht 0.0.0.0. Grafana soll nur über den Tunnel erreichbar sein, nicht aus dem LAN oder öffentlich.
Ein Pi 4 mit Grafana + InfluxDB + node_exporter zieht 3,5W idle, ~5W bei aktiven Dashboards. Jährliche Stromkosten 2026 (0,32€/kWh): rund 14€. Grafana Cloud Paid: 588$/Jahr Minimum. Die Mathematik ist brutal.
Best Practices: Smart-Home-Monitoring durch den Tunnel#
Default admin/admin - JETZT ändern. Nicht "gleich", nicht "wenn ich Zeit habe". Nach dem ersten systemctl start grafana-server sofort einloggen und Profile → Change Password. Oder besser: GF_SECURITY_ADMIN_PASSWORD vor dem ersten Start setzen (Env-Variable oder Secret-File, nicht Plaintext in grafana.ini im Git).
2FA per Auth Proxy. Grafana 10+ unterstützt nativ OAuth (Google, GitHub, Authentik). Authentik in Docker aufsetzen, [auth.generic_oauth] aktivieren, MFA auf Authentik-Ebene erzwingen. Für Freelancer mit Kunden ist das nicht verhandelbar - denn jeder Kunde sieht nur seinen Dashboard-Ordner.
API-Key statt Passwort für Integrationen. HA schreibt in eine Grafana-Datenquelle? Proxmox pusht Metriken? Service Account anlegen (Grafana 10 ersetzt Legacy-API-Keys), Editor-Rolle auf einem konkreten Folder vergeben, niemals Admin. Der generierte Token hat TTL - auf 90 Tage setzen und rotieren.
Dashboards per YAML provisionieren - nicht von Hand. Glaub mir, wenn du 30 Dashboards per Klick gebaut hast und die SD-Karte stirbt, wird dich kein Backup trösten. Dashboards landen in /etc/grafana/provisioning/dashboards/ als JSON, Datenquellen als YAML. Alles im Git.
Minimales provisioning/dashboards/main.yaml:
apiVersion: 1
providers:
- name: 'default'
orgId: 1
folder: ''
type: file
disableDeletion: true
updateIntervalSeconds: 30
options:
path: /var/lib/grafana/dashboards
Dashboard-JSONs in /var/lib/grafana/dashboards/ legen, Restart, fertig. Komplettes Setup aus Git in 5 Minuten reproduzierbar.
Backup /var/lib/grafana/grafana.db täglich - cron + rsync zum NAS oder S3-kompatibel (Backblaze B2, Wasabi). Die Datei ist selten über 50 MB, also kostet 90-Tage-Retention Centbeträge. Zusätzlich: /etc/grafana/grafana.ini und den ganzen Provisioning-Ordner sichern.
Alerting → Telegram oder E-Mail, nicht nur UI. Auf die UI schaut keiner. Ein Dashboard, das 3 Tage in einem Chrome-Tab gepinnt ist, warnt dich vor nichts. Notification Channel: Telegram-Bot (15 Minuten Setup, gratis), zweiter Kanal E-Mail-Backup (falls Telegram stirbt). Für Freelancer einen dritten: SMS via Twilio (0,05€/SMS, aber wenn ein Kunde 100€/h SLA zahlt - rechnet es sich).
FAQ#
| Frage | Antwort |
|---|---|
| Funktionieren WebSocket-Alerts (Live-Tail Loki-Logs) durch den Tunnel? | Ja. SSH tunnelt WebSocket transparent. |
| Funktioniert der Plugin-Marketplace? | Ja. Plugins werden serverseitig von grafana.com geladen, nicht über den Browser. |
| Dashboard im iframe auf externer Seite einbetten (z.B. für Kunde)? | Ja, allow_embedding = true setzen + cookie_samesite = none bei Cross-Domain. auth.anonymous für Public View nicht vergessen. |
| Dashboard-Größe / Data-Scraping-Limits? | Keine vom Tunnel her. Limit ist deine Hardware - ein Pi 4 schafft 50-80 Panels pro Dashboard flüssig. |
| Was wenn ich Prometheus statt InfluxDB nutze? | Kein Unterschied. Der Tunnel weiß nicht, was Grafana ausliefert - es ist nur TCP-Transport. Prometheus, InfluxDB, Loki, Tempo, Mimir, Postgres als Datenquelle - alles funktioniert identisch. |
| Kann ich mehrere Grafanas verschiedener Kunden über ein Konto fahren? | Im Agency Tier - ja, jeder Kunde = eigene Subdomain, eine Verwaltungsoberfläche. |
| Funktioniert PDF-Render eines Dashboards? | Ja, braucht aber das grafana-image-renderer-Plugin auf der Grafana-Seite. Tunnelseitig nichts Extra. |
Verdikt - wann SmartHomeEntry, wann Grafana Cloud#
Ehrlich: für den HA-Hobbyisten oder Proxmox-Self-Hoster schlägt der SSH-Tunnel Grafana Cloud locker. Du zahlst eine kleine Pauschale statt skalierender 49$+, Daten bleiben bei dir, DSGVO ist erledigt, alle Plugins und WebSocket funktionieren ohne Klagen. 60-Sekunden-Setup.
Für den Freelancer mit 50 Kunden und hartem SLA verschiebt sich die Mathematik. Grafana Cloud gibt dir Managed HA, Replikate, 13 Monate Retention out-of-the-box. SSH-Tunnel verlangt, dass deine zentrale Grafana läuft - also entweder HA-VPS-Setup (~30$/Monat für vernünftige Konfig) oder SmartHomeEntry Agency Tier mit Multi-Tenant. Wähle danach, ob du Infrastruktur betreiben oder nur konsumieren willst.
Für 95% der Leser dieses Artikels: starte mit dem Tunnel. Schau dir /grafana an, in 60 Sekunden aufgesetzt, prüfe ob es für dich funktioniert. Wenn du in einem Jahr auf 50 Kunden wächst - sprechen wir über Agency Tier.
Siehe auch: Home Assistant Fernzugriff - kompletter Leitfaden 2026, Smart-Home-Installateur: 50 Kunden ohne Anfahrten, Cloudflare Tunnel - Self-Hosting-Alternative, Panel für Installateure.



