Technitium DNS Smart-Home-Integration, kostenlos und Open Source

Technitium DNS Server: Blockierpause, Statistiken, DHCP-Leases, Update-Hinweise.
Verfolge und steuere deinen Technitium DNS Server aus Gladys, über dein lokales Netzwerk: Pausiere seine Blockierung vom Dashboard aus für fünf Minuten, wenn eine Website nicht lädt, sieh seine Anfragen der letzten Stunde und des letzten Tages, zähle seine DHCP-Leases und erfahre, wann er nicht mehr antwortet oder ein Update erscheint.
Getestet mit einem echten Technitium DNS Server 15 (dem offiziellen Docker-Image), noch nicht mit einer echten Gladys-Installation: Rückmeldungen sind willkommen. Wenn etwas nicht wie beschrieben funktioniert, melde es im Gladys-Forum oder in den Issues.
Was du brauchst
- Gladys Assistant 5.1.0 oder neuer (5.2.0 oder neuer für die Taste Pause… des Widgets).
- Technitium DNS Server 15 oder neuer, seine Weboberfläche von Gladys aus erreichbar (standardmäßig Port 5380).
- Ein API-Token. Öffne in der Weboberfläche das Benutzermenü (oben rechts)
→ Create API Token, gib dein Passwort und einen Namen ein (zum Beispiel
gladys) und kopiere das angezeigte Token. Das Token läuft nicht ab; lösche es unter Administration → Sessions, um es zu widerrufen.
Das Token handelt im Namen seines Benutzers. Der Benutzer admin darf alles.
Um es einzuschränken, lege unter Administration → Users einen eigenen
Benutzer an und gib seiner Gruppe diese Berechtigungen: Dashboard (Lesen),
Settings (Lesen; Ändern, um die Blockierung zu pausieren), Cache
(Löschen, für die Cache-Aktion), DHCP Server (Lesen, optional: ohne sie
keine DHCP-Leases).
Einrichtung
- Installiere die Integration aus dem Gladys-Katalog.
- Gib in der Konfiguration die Adresse deines Servers ein (zum
Beispiel
192.168.1.2: Port 5380 wird ergänzt; oder die vollständige Adresse seiner Weboberfläche, etwahttps://dns.example.net), sein API-Token und optional einen Namen. Zwei oder drei Server? Fülle auch die Abschnitte Zweiter Server und Dritter Server aus. - Speichere und klicke dann auf Verbindung testen: Die Meldung unter der Taste zeigt für jeden Server, ob er antwortet, seine Version und den Status seiner Blockierung.
- Öffne den Tab Entdecken: ein Gerät pro Server. Klicke auf Hinzufügen, wähle einen Raum und speichere.
Optionen:
- Selbstsignierte Zertifikate akzeptieren: für eine
https://-Adresse, deren Zertifikat der Server selbst signiert hat. Lass sie fürhttp://-Adressen aus. - Aktualisierungsintervall: wie oft die Server gelesen werden, von 30 Sekunden bis 5 Minuten (standardmäßig 1 Minute).
- Blockierschalter ausschalten: was der Schalter des Geräts beim Ausschalten tut: die Blockierung 5 Minuten (Standard), 15, 30 oder 60 Minuten pausieren, oder sie deaktivieren, bis du ihn wieder einschaltest.
- Sprache der Funktionsnamen: Englisch, Französisch, Deutsch oder Spanisch. Die Namen werden beim Hinzufügen eines Geräts vergeben (standardmäßig Französisch).
Das Gerät jedes Servers
| Funktion | Was es ist |
|---|---|
| Blockierung | Schalter: an, der Server blockiert die gelisteten Domains; aus, alles geht durch |
| DNS-Anfragen (letzte Stunde) | Anfragen der letzten 60 Minuten |
| DNS-Anfragen (24 h) | Anfragen des letzten Tages |
| Blockierte Anfragen (24 h) | Blockierte Anfragen des letzten Tages |
| Anteil blockiert (24 h) | Anteil der blockierten Anfragen, in %, gerundet |
| Clients (24 h) | Geräte, die den Server am letzten Tag genutzt haben |
| Zonen | Zonen, die der Server hostet (deine eigenen Domains) |
| Blockierte Domains | Domains der Sperrlisten, plus die von Hand blockierten |
| Update verfügbar | 1, wenn eine neuere Technitium-Version erschienen ist, sonst 0 |
| Version | Die installierte Version |
| DHCP-Leases | Leases der aktiven DHCP-Bereiche (nur wenn der DHCP-Server genutzt wird) |
Der Tag ist der des Technitium-Dashboards (Last Day): die 24 vollen Stunden vor der aktuellen, er hinkt also bis zu einer Stunde hinterher. Das Abzeichen des Geräts zeigt Lokal, wenn der Server antwortet, sonst Nicht erreichbar. Das Aktivieren oder Deaktivieren eines DHCP-Bereichs fügt die Funktion DHCP-Leases hinzu oder entfernt sie: Gladys bietet dann im Tab Entdecken an, das Gerät zu aktualisieren.
Dashboard
Füge das Widget Technitium DNS zu einem Dashboard hinzu. Standardmäßig zeigt es alle deine Server zusammen; wähle in seinen Einstellungen einen aus, um nur diesen zu zeigen. Einen Server von zweien zu pausieren ändert nichts: Deine Geräte fragen dann den anderen.
Das Widget zeigt die Anfragen, die blockierten Anfragen und den blockierten Anteil des letzten Tages, den Status jedes Servers (blockiert, pausiert mit den verbleibenden Minuten, deaktiviert, nicht erreichbar), die Anfragen der letzten Stunde, die Clients, die blockierten Domains, die DHCP-Leases und das verfügbare Update. Seine Tasten:
- Pause 5 min und Pause 30 min: pausieren die Blockierung sofort;
- Pause…: öffnet ein kleines Formular, um die Dauer in Minuten einzugeben (Gladys 5.2.0 oder neuer; ein älteres Gladys antwortet, dass es ein Update braucht);
- Fortsetzen: schaltet die Blockierung wieder ein. Die Taste zeigt einen Haken, solange die Blockierung überall aktiv ist.
Szenen
Auslöser
- Technitium-Blockierung pausiert: Die Blockierung wurde ausgeschaltet,
über Gladys oder anderswo (die Weboberfläche, ein anderes Werkzeug). Filtere
nach Server und nach Ursprung (Von Gladys oder Außerhalb von Gladys). Die
Aktionen können den Namen des Servers und die Dauer der Pause in Minuten
lesen (
duration_minutes, 0 ohne Ende). - Technitium-Blockierung fortgesetzt: Die Blockierung ist wieder aktiv. Der
Ursprung sagt, ob die Pause von selbst endete (Ende der Pause), über Gladys
oder anderswo;
paused_minutessagt, wie lange sie dauerte. - Technitium-Update verfügbar: Eine neue Version von Technitium DNS Server
ist erschienen. Einmal pro Version gemeldet, auch nach einem Neustart.
versionist die neue Version,current_versiondie installierte. - Technitium antwortet nicht mehr: Ein Server hat zwei Abfragen in Folge
nicht beantwortet (die zweite 15 Sekunden nach der ersten). Das DNS des
Hauses ist vielleicht ausgefallen.
errorsagt warum, in der Sprache der Konfiguration. - Technitium antwortet wieder: Er ist zurück;
down_minutessagt, nach wie langer Zeit.
Ein abgelehntes Token zählt nicht als „antwortet nicht mehr“: Die Konfiguration meldet es.
Aktionen
- Technitium-Blockierung pausieren: pausiert die Blockierung auf einem Server oder, wenn das Feld leer bleibt, auf allen, für einige Minuten (standardmäßig 5, 0 bis zum Fortsetzen, höchstens ein Tag). Die folgenden Aktionen können lesen, wie viele Server pausiert wurden.
- Technitium-Blockierung fortsetzen: schaltet die Blockierung wieder ein, auf einem oder allen Servern.
- DNS-Cache von Technitium leeren: leert den DNS-Cache, zum Beispiel nach dem Ändern eines Eintrags, damit die nächsten Anfragen neu aufgelöst werden.
- Technitium-Statistiken lesen: liest die Anfragen des letzten Tages in
einen Satz, etwa „In den letzten 24 Stunden 12.345 DNS-Anfragen, davon 1.234
blockiert (10 %). Letzte Stunde: 456 Anfragen.“, in der Sprache der
Konfiguration. Die folgenden Aktionen können ihn senden (
sentence) oder die Zahlen verwenden (queries_last_day,blocked_last_day,blocked_percent,queries_last_hour,blocking_enabled).
Der Schalter Blockierung lässt sich auch mit der Standardaktion von Gladys verwenden, die ein Gerät steuert.
Szenen-Ideen
- Morgenbericht: jeden Tag um 8:00 Technitium-Statistiken lesen, dann die
Ausgabe
sentencein einer Nachricht senden. - DNS-Alarm: Technitium antwortet nicht mehr → eine Nachricht senden „Technitium {{triggerEvent.data.server}} antwortet nicht: {{triggerEvent.data.error}}“. Und Technitium antwortet wieder → „zurück nach {{triggerEvent.data.down_minutes}} min“.
- Sicherheitsnetz: jeden Abend um 20:00 eine Szene mit Technitium-Blockierung fortsetzen, damit ein „bis zum Wiedereinschalten“ ausgeschalteter Schalter nie die ganze Nacht aus bleibt.
Fehlerbehebung
- „API-Token abgelehnt“: Das Token wurde gelöscht oder falsch kopiert. Erstelle ein neues und füge es in Gladys ein.
- „Zugriff verweigert“: Dem Benutzer des Tokens fehlt eine Berechtigung (siehe Was du brauchst). Lesen braucht Dashboard und Settings (Lesen); Pausieren braucht Settings (Ändern).
- „kein Technitium-Server unter dieser Adresse“: Dort antwortet etwas
anderes. Die Weboberfläche lauscht standardmäßig auf Port 5380: Gib
192.168.1.2oderhttp://192.168.1.2:5380ein. - „Zertifikat abgelehnt“: Du hast eine
https://-Adresse eingegeben; aktiviere Selbstsignierte Zertifikate akzeptieren oder verwende diehttp://-Adresse. - „die Adresse leitet um“: Die Weboberfläche leitet HTTP-Besucher auf HTTPS
um; gib die
https://-Adresse ein. - „antwortet nicht“: Prüfe, ob sich die Weboberfläche von einem Computer im
Netzwerk von Gladys öffnen lässt. Namen mit
.localfunktionieren in der Integration meist nicht: Verwende die IP-Adresse. - Protokolle: auf der Seite der Integration in Gladys oder mit
docker logsauf dem Host. Darin stehen der Start, jeder verlorene und wiedergefundene Server, die Probleme (jeweils einmal, nicht bei jeder Abfrage) und deine Befehle. Starte den Container mitLOG_LEVEL=debug, um jede Abfrage und jeden neuen Versuch zu sehen. Dein Token erscheint nie in den Protokollen.
Grenzen
- Eine Integration verwaltet bis zu drei Server. Ein Technitium-Cluster wird Server für Server gesehen; die Pause gilt für den gewählten Server (Technitium überträgt sie auf die anderen Knoten des Clusters).
- Die Integration liest jeden Server einmal pro Aktualisierungsintervall (fünf kleine Anfragen) und lässt ihn alle sechs Stunden nach Updates suchen: Keine Quote ist in Gefahr.
- Der blockierte Anteil wird im Gerät gerundet (Gladys hat keinen Sensor für Dezimalprozente); das Widget zeigt eine Nachkommastelle.
- Keine Anwesenheitserkennung über die DHCP-Leases: Gladys hat dafür andere Wege.
- Die Integration verwaltet weder die Zonen noch die Sperrlisten, die erlaubten oder blockierten Domains oder die DHCP-Bereiche: Nutze dafür die Weboberfläche.
Diese Integration ist nicht mit Technitium verbunden.
Konfigurationseinstellungen
Diese Einstellungen fragt Technitium DNS in seinem Konfigurationsbildschirm in Gladys ab.
| Einstellung | Typ | Pflichtfeld | Beschreibung |
|---|---|---|---|
| Dein Technitium-Server | section | Nein | Technitium DNS Server 15 oder neuer. Erstelle in seiner Weboberfläche ein API-Token: Benutzermenü, Create API Token. Bis zu drei Server. |
| Adresse | string | Ja | IP-Adresse oder Name des Servers (standardmäßig Port 5380) oder die vollständige URL seiner Weboberfläche. |
| API-Token | secret | Nein | In der Weboberfläche erstellt: Benutzermenü (oben rechts), Create API Token. |
| Name | string | Nein | Name des Geräts in Gladys. Leer: „Technitium“ gefolgt von der Adresse. |
| Zweiter Server (optional) | section | Nein | Dieselben Felder, für einen weiteren Technitium-Server in deinem Netzwerk. |
| Adresse | string | Nein | IP-Adresse oder Name des Servers (standardmäßig Port 5380) oder die vollständige URL seiner Weboberfläche. |
| API-Token | secret | Nein | In der Weboberfläche erstellt: Benutzermenü (oben rechts), Create API Token. |
| Name | string | Nein | Name des Geräts in Gladys. Leer: „Technitium“ gefolgt von der Adresse. |
| Dritter Server (optional) | section | Nein | Dieselben Felder, für einen weiteren Technitium-Server in deinem Netzwerk. |
| Adresse | string | Nein | IP-Adresse oder Name des Servers (standardmäßig Port 5380) oder die vollständige URL seiner Weboberfläche. |
| API-Token | secret | Nein | In der Weboberfläche erstellt: Benutzermenü (oben rechts), Create API Token. |
| Name | string | Nein | Name des Geräts in Gladys. Leer: „Technitium“ gefolgt von der Adresse. |
| Optionen | section | Nein | |
| Selbstsignierte Zertifikate akzeptieren | boolean | Nein | Für https://-Adressen mit selbstsigniertem Zertifikat. Nur für deine eigenen Server aktivieren. |
| Aktualisierungsintervall | select | Nein | Wie oft die Technitium-Server gelesen werden. |
| Blockierschalter ausschalten | select | Nein | Pausiert die Blockierung so lange oder bis der Schalter wieder eingeschaltet wird. |
| Sprache der Funktionsnamen | select | Nein | Namen der Funktionen beim Hinzufügen eines Geräts und Texte der Szenen-Ereignisse. |
So installierst du Technitium DNS in Gladys
- Öffne in Gladys Integrationen: Technitium DNS erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
- Klicke auf Installieren. Gladys lädt das Docker-Image (
ghcr.io/guim31/gladys-technitium:1.0.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/guim31/gladys-technitium.
Technitium DNS 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
Technitium DNS 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 guim31 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