OPNsense Smart-Home-Integration, kostenlos und Open Source

OPNsense-Firewall: Zustand, Gateways, Verkehr, Anwesenheit im Netz, Regeln, WireGuard, Szenen.
Überblick
Diese Integration bringt Ihre OPNsense-Firewall in Gladys, über die API von OPNsense in Ihrem lokalen Netzwerk:
- ein Firewall-Gerät: CPU-, Speicher- und Festplattenauslastung, Temperatur, Betriebszeit, ausstehende Updates, Version und verbundene WireGuard-Peers;
- ein Gerät pro Gateway (Status, Latenz, Paketverlust) und pro Schnittstelle (empfangene und gesendete Datenrate, Verbindung, IPv4-Adresse);
- die Firewall-Regeln einer Kategorie Ihrer Wahl als Schalter: Schalten Sie eine Regel über ein Dashboard oder eine Szene ein oder aus;
- die Geräte in Ihrem Netzwerk (Telefone, Computer…) als Anwesenheitssensoren, aus der ARP-Tabelle und den DHCP-Leases;
- Szenen: Gateway ausgefallen, jemand ist nach Hause gekommen, neues Gerät im Netzwerk, VPN-Verbindung, Dienst gestoppt, Update verfügbar; und Aktionen, um einen Computer zu wecken, ein Gerät zu sperren, einen Dienst neu zu starten, nach Updates zu suchen oder neu zu starten;
- vier Dashboard-Widgets.

Alles bleibt in Ihrem Netzwerk: Die Integration spricht nur mit OPNsense, nie mit einer Cloud.
Voraussetzungen
- Gladys Assistant 5.1.0 oder neuer.
- OPNsense 25.1 oder neuer (geschrieben anhand der API von OPNsense 26.7), vom Gladys-Rechner aus erreichbar.
- Ein eigener OPNsense-Benutzer für Gladys, mit einem API-Schlüssel. Legen Sie ihn unter System > Zugang > Benutzer an und geben Sie ihm die Rechte der gewünschten Funktionen (Feld Berechtigungen):
| Funktion | OPNsense-Recht |
|---|---|
| Firewall (CPU, Speicher, Festplatte) | Lobby: Dashboard |
| Gateways | System: Gateways |
| Schnittstellen | Status: Interfaces, Reporting: Traffic |
| Netzwerkgeräte | Diagnostics: ARP Table, und Services: Dnsmasq DNS/DHCP oder DHCP: Kea(v4) |
| WireGuard | VPN: WireGuard: Status |
| Dienste (Auslöser, Neustart) | Status: Services |
| Updates (Prüfung) | System: Firmware |
| Regel-Schalter | Firewall: Rules [new], Firewall: Categories |
| Alias-Aktion | Diagnostics: PF Table IP addresses |
| Neustart | Diagnostics: Reboot System |
| Wake-on-LAN (Plugin os-wol) | Services: Wake on LAN |
Ein nicht erteiltes Recht schaltet einfach seine Funktion ab. „System: Firmware" erlaubt auch, Updates über die API zu installieren: Erteilen Sie es nur, wenn Sie die Update-Prüfung wollen. Die Namen der Rechte sind die der englischen Oberfläche von OPNsense.
Klicken Sie auf der Benutzerseite unter API-Schlüssel auf +: Eine Datei key.txt wird heruntergeladen, mit einer Zeile key= und einer Zeile secret=.
Konfiguration
Öffnen Sie in Gladys Integrationen > OPNsense, installieren Sie sie und füllen Sie aus:
| Feld | Was eingeben |
|---|---|
| Adresse von OPNsense | Die Adresse der Weboberfläche, zum Beispiel https://192.168.1.1 (mit Port, wenn er nicht 443 ist). |
| API-Schlüssel | Die Zeile key= von key.txt. |
| API-Geheimnis | Die Zeile secret= von key.txt. Es wird nie wieder angezeigt und nie in die Logs geschrieben. |
| Zertifikat prüfen | Mit dem selbstsignierten Zertifikat von OPNsense nicht ankreuzen; mit einem gültigen ankreuzen. |
| Leseintervall | 10 bis 300 Sekunden, standardmäßig 30. |
| Angebotene Netzwerkgeräte | Die im Erkennungsbildschirm angebotenen Geräte: die mit einem Namen (Standard), alle oder keine. |
| Abwesenheitsverzögerung | Minuten ohne Antwort, bevor ein Gerät abwesend ist, standardmäßig 5. |
| Kategorie der Regeln | Die Firewall-Regeln dieser Kategorie werden zu Schaltern (gladys standardmäßig; leer: keine). |
| Sprache der Texte | Sprache der Namen, Zustände und Szenen-Zusammenfassungen; automatisch folgt Ihrem Dashboard. |
Klicken Sie auf Verbindung testen: Gladys zeigt den Namen und die Version Ihrer OPNsense.
Verwendung
Geräte
Öffnen Sie Integrationen > OPNsense > Erkennung und fügen Sie die gewünschten Geräte hinzu. Nichts wird ohne Sie angelegt.
| Gerät | Funktionen |
|---|---|
| OPNsense (Firewall) | CPU-, Speicher- und Festplattenauslastung (%), Temperatur, Betriebszeit (Tage), ausstehende Updates, Version, VPN-Peers |
| Gateway | Status (online, offline, beeinträchtigt, ausstehend), Latenz (ms), Paketverlust (%) |
| Schnittstelle | Empfangene und gesendete Datenrate (Mbit/s, aus Sicht der Schnittstelle: am WAN ist empfangen der Download), Verbindung, IPv4-Adresse |
| Regel | Aktiviert: ein Schalter |
| Netzwerkgerät | Anwesenheit |
Anwesenheit der Geräte
Ein Gerät Ihres Netzwerks ist anwesend, sobald es in der ARP-Tabelle von OPNsense antwortet, und abwesend, wenn es seit der Abwesenheitsverzögerung weg ist. Der Anwesenheitssensor sendet jede Minute 1, solange das Gerät da ist, wie die Bluetooth-Anwesenheit von Gladys: Verwenden Sie ihn in der Szenen-Aktion Anwesenheit von Benutzern überprüfen, um zu wissen, ob jemand zu Hause ist. Ein Telefon mit privater (zufälliger) WLAN-Adresse behält in Ihrem Netzwerk nur dann dieselbe Adresse, wenn die Option pro Netzwerk eingestellt ist: Prüfen Sie es am Telefon.
Firewall-Regeln
Öffnen Sie in OPNsense Firewall > Regeln, bearbeiten Sie eine Regel (zum Beispiel „Tablet der Kinder sperren") und geben Sie ihr die Kategorie gladys (anzulegen unter Firewall > Kategorien). Nach einer Erkennung erscheint die Regel als Schalter: ein aktiviert die Regel, aus deaktiviert sie, und OPNsense wendet die Änderung sofort an. Nur die Regeln des neuen Regel-Editors lassen sich schalten, nicht die automatischen Regeln.
Dashboard-Widgets
- OPNsense-Firewall: Anzeigen für CPU, Speicher und Festplatte, Temperatur, Gateways, Betriebszeit, Updates und zwei Schaltflächen: Updates prüfen und neu starten (mit Bestätigung).
- Internetverbindung: Latenz, Paketverlust, Download und Upload eines Gateways und einer Schnittstelle (standardmäßig das WAN), mit dem Verkehrsdiagramm, sobald das Gerät der Schnittstelle hinzugefügt ist.
- Netzwerkgeräte: die jetzt verbundenen Geräte, die gegangenen oder alle.
- WireGuard-VPN: die Peers, verbunden oder nicht, und ihr letzter Handshake.
Szenen
Auslöser:
- Gateway-Status geändert: online, beeinträchtigt (Latenz, Verlust) oder offline, gefiltert nach Gateway und Status.
- Gerät gekommen oder gegangen: für ein in Gladys hinzugefügtes Netzwerkgerät.
- Neues Gerät im Netzwerk: eine nie gesehene MAC-Adresse, einmal pro Adresse.
- VPN-Peer verbunden oder nicht: ein WireGuard-Peer.
- Dienst gestartet oder beendet: Unbound, Dnsmasq, WireGuard…
- Update verfügbar: eine Update-Prüfung hat neue Updates gefunden.
Aktionen: Status lesen (CPU, Gateways, anwesende Geräte… für eine Nachricht), ein Gerät wecken (Wake-on-LAN, Plugin os-wol, über VLANs hinweg), eine Adresse in einem Alias hinzufügen oder entfernen, einen Dienst neu starten, nach Updates suchen, neu starten.
Beispiele:
- Wenn das Gateway
WAN_DHCPoffline geht → eine Nachricht senden „Internet ist ausgefallen, 4G übernimmt". - Wenn ein neues Gerät im Netzwerk erscheint → seinen Namen, Hersteller und seine IP-Adresse an den Administrator senden.
- Jeden Abend um 21 Uhr → die IP des Tablets der Kinder zum Alias
kids_blockhinzufügen, den eine Sperrregel nutzt; um 7 Uhr wieder entfernen.
Transport
Nur lokal: Die Integration spricht per HTTPS in Ihrem Netzwerk mit der API von OPNsense, mit dem API-Schlüssel. Keine Daten verlassen Ihr Netzwerk (OPNsense selbst kontaktiert bei einer Update-Prüfung seinen Mirror).
Fehlerbehebung
- „OPNsense lehnt den API-Schlüssel ab": Kopieren Sie Schlüssel und Geheimnis erneut aus
key.txt, ohne Leerzeichen. - „Das HTTPS-Zertifikat wird abgelehnt": Deaktivieren Sie „Zertifikat prüfen" oder installieren Sie ein für die eingegebene Adresse gültiges Zertifikat.
- „fehlt ein Recht": Fügen Sie dem OPNsense-Benutzer des Schlüssels die oben genannten Rechte hinzu.
- Kein Netzwerkgerät: Prüfen Sie das Recht „Diagnostics: ARP Table" und die Option „Angebotene Netzwerkgeräte".
- Eine Regel fehlt: Sie muss die Kategorie tragen und aus dem neuen Regel-Editor stammen.
- Wake-on-LAN schlägt fehl: Installieren Sie das Plugin
os-wolunter System > Firmware > Plugins und geben Sie für ein nie gesehenes Gerät die Schnittstelle ein (lan,opt1…). - Logs: Fügen Sie die Umgebungsvariable
DEBUG=gladys-integration-sdkhinzu und eröffnen Sie ein Issue auf GitHub mit den Versionen von Gladys, der Integration und OPNsense sowie den Logs (API-Schlüssel und Geheimnis erscheinen nie darin).
Konfigurationseinstellungen
Diese Einstellungen fragt OPNsense in seinem Konfigurationsbildschirm in Gladys ab.
| Einstellung | Typ | Pflichtfeld | Beschreibung |
|---|---|---|---|
| OPNsense-API-Schlüssel | section | Nein | Legen Sie in OPNsense einen eigenen Benutzer an (System > Zugang > Benutzer), geben Sie ihm die in der Dokumentation genannten Rechte und fügen Sie einen API-Schlüssel hinzu: Eine Datei key.txt mit Schlüssel und Geheimnis wird heruntergeladen. Alles bleibt in Ihrem Netzwerk. |
| Adresse von OPNsense | string | Ja | Die Adresse seiner Weboberfläche, mit dem Port, wenn er nicht 443 ist. |
| API-Schlüssel | string | Ja | Die Zeile „key=“ von key.txt. |
| API-Geheimnis | secret | Ja | Die Zeile „secret=“ von key.txt. |
| Zertifikat prüfen | boolean | Nein | Mit dem selbstsignierten Zertifikat von OPNsense nicht ankreuzen. Mit einem gültigen Zertifikat (Let’s Encrypt, interne Stelle) ankreuzen. |
| Optionen | section | Nein | Firewall-Regeln werden zu Schaltern, wenn sie die unten stehende Kategorie tragen. Geräte im Netzwerk werden zu Anwesenheitssensoren, sobald Sie sie im Erkennungsbildschirm hinzufügen. |
| Leseintervall (s) | number | Nein | 10 bis 300 Sekunden, standardmäßig 30. |
| Angebotene Netzwerkgeräte | select | Nein | Welche Geräte aus ARP-Tabelle und DHCP-Leases im Erkennungsbildschirm erscheinen. |
| Abwesenheitsverzögerung (Min.) | number | Nein | Ein Gerät gilt nach dieser Zeit ohne Antwort als abwesend. 1 bis 60, standardmäßig 5: Ein schlafendes Telefon verlässt das Netz eine Weile. |
| Kategorie der Regeln | string | Nein | Firewall-Regeln dieser Kategorie (Firewall > Regeln) werden zu Schaltern. Leer: keine. |
| Sprache der Texte | select | Nein | Namen, Zustände und Szenen-Zusammenfassungen. Automatisch: die Sprache Ihres Dashboards, sobald ein OPNsense-Widget angezeigt wurde. |
So installierst du OPNsense in Gladys
- Öffne in Gladys Integrationen: OPNsense erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
- Klicke auf Installieren. Gladys lädt das Docker-Image (
ghcr.io/william-de71/gladys-opnsense:0.1.0) herunter, startet es in einer vom Kern isolierten Sandbox und erzeugt die Oberfläche der Integration (Geräte, Erkennung und Konfiguration). - Öffne den Bildschirm Konfiguration der Integration, fülle die Einstellungen aus und speichere.
- Du kannst sie auch direkt über die URL ihres Repositorys installieren: https://github.com/William-De71/gladys-opnsense.
OPNsense benötigt Gladys >=5.1.0. Der Katalog in Gladys wird stündlich aktualisiert, eine neue Version ist also spätestens eine Stunde nach ihrer Veröffentlichung verfügbar.
Du nutzt Gladys noch nicht? Es ist kostenlos und Open Source: folge der Installationsanleitung, um loszulegen.
Über externe Integrationen
OPNsense ist eine externe Integration: eine Community-Integration, die als Docker-Container verpackt und auf GitHub veröffentlicht wird. Gladys installiert sie mit einem Klick und führt sie in einer vom Kern isolierten Sandbox aus. Sie wird von William-De71 veröffentlicht und gepflegt, nicht vom Gladys-Kernteam.
- Alle Integrationen durchsuchen, native und aus der Community
- Deine eigene externe Integration bauen und veröffentlichen
- Quellcode auf GitHub — Quelle dieser Dokumentation