Handbuch

Alarme

Ein Incident statt einer Mail je Prüfung, eine Entwarnung statt zehn, Änderungen mit Vorher und Nachher: Dieses Kapitel beschreibt, welche Meldungen DomainWarn erzeugt, wohin sie gehen und wie du Schwellen, Ruhezeit und Digest einstellst.

Auf dieser Seite

Kanäle

Kanäle richtest du unter Einstellungen → Benachrichtigungen ein (Owner und Admins). Sie gelten für die ganze Organisation: Jede Meldung geht an alle aktiven Kanäle, deren Mindestschwere sie erreicht. Die Mindestschwere je Kanal (Hinweis, Warnung, kritisch; Standard Warnung) ist der Filter; SMS gehen immer nur bei kritisch. Zwanzig Kanaltypen stehen bereit, in drei Gruppen:

  • Empfohlen: E-Mail (alle Mitglieder mit Rolle Owner, Admin oder Mitglied plus bis zu 20 feste Adressen), Slack, Microsoft Teams, Discord und Webhook mit Signatur.
  • Bereitschaft: PagerDuty und Opsgenie (Alarm beim Öffnen, automatisches Schließen bei der Entwarnung), Pushover, ntfy, SMS und Web Push (je Mitglied und Gerät).
  • Weitere: Telegram, Google Chat, Mattermost, Rocket.Chat, Zulip, Matrix, Gotify, ein privater Atom-Feed mit den letzten 50 Ereignissen und ein eigener SMTP-Server für Mails mit deiner Absenderadresse.
  • Testversand ist Pflicht: Ein Kanal gilt erst als bestätigt, wenn ein Test angekommen ist; nach jeder Änderung der Konfiguration wird die Bestätigung zurückgesetzt. Scheitert die Zustellung dreimal hintereinander, gilt der Kanal als defekt, wird nicht mehr beliefert, und die Mitglieder erfahren es per E-Mail.
  • Webhook: HTTPS-Adresse, Geheimnis wird einmal angezeigt. Jede Zustellung trägt X-DomainWarn-Signature: sha256=<HMAC-SHA256(secret, timestamp + "." + body)>, X-DomainWarn-Timestamp und X-DomainWarn-Event; der JSON-Body enthält kind, severity, title, message, url und data mit Incident-ID, Domain, Typ und bei Änderungen Vorher/Nachher.
  • SMS: Nummer per Code bestätigen (10 Minuten gültig, fünf Versuche), 160 Zeichen mit Titel, Domain und Link. Kontingent je Monat nach Tarif (Freelancer 20, Agency 100, Agency Pro 300); ist es erschöpft, gibt es einmal eine Hinweis-Mail, weitere SMS entfallen.
  • Limits: 2 Kanäle im Free-Tarif, 5 bei Freelancer, 10 bei Agency, 25 bei Agency Pro. Höchstens 30 Zustellungen je Minute und Kanal.

Incidents

Ein Incident ist ein Zustand mit Lebensdauer: Er entsteht, wenn ein Zustandsbefund seine Schwelle erreicht, bleibt offen, solange der Befund bei jedem Lauf bestätigt wird, und schließt sich, wenn die Erholung bestätigt ist. Je Monitor und Incident-Typ gibt es höchstens einen offenen Incident, deshalb erzeugt ein Ausfall über Stunden eine Meldung und nicht hundert.

  • Schwellen: Verfügbarkeitschecks (Website, IPv6) nach der Fehlerdauer aus den Regeln (Standard 5 Minuten, je Domain überschreibbar), umgerechnet in aufeinanderfolgende Läufe; Konfigurationschecks nach fester Zahl von Läufen, meist 1 oder 2, „langsam“ nach 3. Welche Schwelle für welchen Befund gilt, steht im Kapitel Checks.
  • Meldefenster: Eröffnungen werden 60 Sekunden gesammelt. Ein oder zwei Incidents werden einzeln gemeldet; ab drei gleichzeitig entsteht eine Sammelmeldung („N Incidents gleichzeitig eröffnet“), etwa wenn ein Hoster ausfällt.
  • Eskalation: Steigt die Schwere innerhalb eines offenen Incidents (Warnung wird kritisch), wird der Incident aktualisiert und genau einmal erneut gemeldet.
  • Quittieren: Ein quittierter Incident bleibt offen, bekommt aber keine Erinnerungen mehr. Quittieren dürfen Owner, Admins und Mitglieder; der Name steht am Incident, für Kundenzugänge nicht sichtbar.
  • Erholung: Nach der Erholungsdauer (Standard 2 Minuten, bei Verfügbarkeitschecks mindestens zwei fehlerfreie Läufe, sonst mindestens einer) wird der Incident geschlossen und genau eine Entwarnung mit der Dauer geschickt, unabhängig von der Mindestschwere des Kanals. Wird ein Monitor abgeschaltet oder pausiert, schließt der Incident ohne Entwarnung.
  • Zustand der Domain: die höchste Schwere ihrer offenen Incidents. Incidents werden nicht gelöscht; Ereignisse bleiben 12 Monate, Rohergebnisse je nach Tarif 7 bis 90 Tage.

Siehe auch: Schwellen je Check-Typ

Erinnerungen und Ruhezeit

Offene, nicht quittierte Incidents werden nach 1 Stunde, 6 Stunden, 24 Stunden und dann täglich in Erinnerung gerufen, höchstens siebenmal; die Zahl stellst du in den Regeln ein, Erinnerungen lassen sich auch ganz abschalten. Per API ist ein eigener Zeitplan möglich (reminder_schedule, etwa 30m,2h,daily). Erinnerungen gehen an dieselben Kanäle wie die Eröffnung.

Die Ruhezeit (von/bis in der Zeitzone der Organisation, auch über Mitternacht) hält Warnungen und Hinweise zurück. Kritische Meldungen gehen immer durch, ebenso Meldungen für Domains mit „Ruhezeit ignorieren“. Eine in der Ruhezeit eröffnete Warnung wird nach dem Ende nachgeliefert, sofern der Incident dann noch offen und nicht quittiert ist; Erinnerungen aus der Ruhezeit entfallen. Digest und Testversand kennen keine Ruhezeit.

Änderungsmeldungen

Jeder Lauf vergleicht den kanonisierten Zustand (ohne TTL, Reihenfolge und Groß-/Kleinschreibung) mit dem vorigen. Ein Unterschied wird nach 45 Sekunden an einem zweiten autoritativen Nameserver bestätigt und dann als Ereignis mit Vorher und Nachher gespeichert und einmal gemeldet; ein Incident entsteht daraus nicht. Beim ersten Lauf einer Domain wird nur der Ausgangszustand erfasst.

  • Gruppen in den Regeln: MX, Nameserver, SPF, DMARC, Zertifikat, DNS-Records, Website, Registrierung, DKIM, DNSSEC, MTA-STS, Blacklist und CT-Logs. Standardmäßig sind alle an außer „DNS-Records“ (einzelne A-, AAAA-, CNAME- und TXT-Änderungen), die nur in der Zeitleiste landen.
  • Kritische Änderungen: SPF-Record entfernt, DMARC-Policy abgeschwächt, STARTTLS verschwunden, MX entfernt (zusätzlich Incident „kein MX“), Blacklist-Listung, Zertifikat für einen unbekannten Hostnamen kurz nach einem DNS-Wechsel.
  • Anti-Flapping: Wechselt der DNS-Zustand einer Domain öfter als sechsmal am Tag (Round-Robin, Geo-DNS), gelten A- und AAAA-Änderungen als flüchtig und werden nur protokolliert.

Regeln je Organisation und je Domain

Die Regeln unter Einstellungen → Benachrichtigungen gelten für alle Domains: Fehlerdauer und Erholungsdauer (1 bis 1440 Minuten), Mindestschwere, Erinnerungen, Änderungsgruppen, Ruhezeit und Digest. Je Domain lassen sich Fehlerdauer, Mindestschwere und „Ruhezeit ignorieren“ in den Einstellungen der Domain überschreiben, etwa eine Minute Fehlerdauer für den Shop und 30 Minuten für die Staging-Seite. Kanäle sind nicht je Domain oder Kunde zuweisbar; jede Meldung nennt Kunde und Domain, damit sie sich im Chat filtern lässt.

Digest täglich oder wöchentlich

Der Digest fasst je Organisation zusammen, was offen ist und was sich geändert hat: täglich, wöchentlich an einem Wochentag oder aus, zu einer Uhrzeit in der Zeitzone der Organisation (Standard 08:00). Er enthält die Zahl der überwachten Domains mit fehlerfrei/Warnung/kritisch, „Handlungsbedarf“ mit den offenen Incidents (kritisch zuerst, darunter ablaufende Zertifikate und Domains, bis zu 25), die Änderungen des Zeitraums (bis zu 40, ohne Wartungsfenster) und beim Weekly die Zahl der behobenen Incidents. Er geht als Hinweis an alle aktiven Kanäle unabhängig von deren Mindestschwere; SMS und Atom-Feed erhalten ihn nicht. Ob er auch kommt, wenn nichts zu berichten ist, stellst du ein.

Wartungsfenster

Unter Einstellungen → Wartungsfenster legst du einmalige (von/bis) oder wöchentliche Fenster (Wochentage, Uhrzeit von/bis, Zeitzone) an, für alle Domains, einen Kunden oder eine Domain. Während eines Fensters laufen die Prüfungen weiter, aber es werden keine Incidents eröffnet, keine Eskalationen und keine Änderungen gemeldet; Änderungen landen markiert in der Zeitleiste und fehlen im Digest, im Feed und im Monatsbericht. Die Erholung offener Incidents wird weiterhin erkannt. Anlegen dürfen Owner, Admins und Mitglieder; die Domainseite zeigt ein aktives Fenster als Hinweis.

Davon zu unterscheiden ist das Pausieren einer Domain bis zu einem Zeitpunkt: Dann laufen keine Prüfungen, und die Status-Seite zeigt „Wartung“.

Slack- und Teams-Befehle

Unter Einstellungen → Benachrichtigungen → Chat-Befehle legst du bis zu zehn Befehle an (Owner und Admins): Anbieter Slack oder Teams, Name und Geheimnis; die Karte zeigt die Callback-Adresse, den Aufrufzähler und die letzte Nutzung.

  • /domainwarn kunde.de: Zustand mit Ampel, Zertifikat „noch N Tage“, Domainablauf, bis zu fünf offene Incidents mit „seit“, letzte Prüfung und Dashboard-Link; sichtbar für den Kanal.
  • /domainwarn check kunde.de (auch prüfen): stößt alle aktiven Monitore an, höchstens dreimal je Domain in fünf Minuten; es gelten die Kontingente von „Jetzt prüfen“.
  • /domainwarn list (auch status): „Handlungsbedarf (N von M Domains)“ mit bis zu 15 Domains, kritisch zuerst, nur für dich sichtbar.
  • /domainwarn help: Übersicht der Befehle.
  • Rechte gelten je Workspace, nicht je Nutzer: Wer den Befehl ausführen darf, sieht alle Domains der Organisation. Ungültige Signaturen bekommen 404; 30 Aufrufe je Minute und Befehl.
  1. Slack: Unter api.slack.com/apps eine App anlegen, Slash Command /domainwarn mit der Callback-Adresse als Request URL, das Signing Secret der App als Geheimnis in DomainWarn eintragen. Anfragen werden mit der Slack-Signatur und einem höchstens fünf Minuten alten Zeitstempel geprüft.
  2. Teams: Befehl zunächst mit einem Platzhalter-Geheimnis anlegen, die Adresse kopieren, im Team unter „Apps verwalten“ einen Outgoing Webhook „DomainWarn“ mit dieser Callback-Adresse erstellen und das angezeigte Sicherheitstoken nachträglich als Geheimnis eintragen. Aufruf durch Erwähnung: @DomainWarn kunde.de.

Befehle und Antworten in der Sprache der Organisation:

Wenn DomainWarn selbst ein Problem hat

DomainWarn prüft minütlich Referenzziele. Fallen mehr als die Hälfte davon aus, gilt der Prüfdienst selbst als gestört: Eröffnungen werden ausgesetzt, Erinnerungen und Eskalationen zurückgestellt und nach dem Ende nachgeholt, sofern der Incident dann noch offen ist. So erzeugt ein Netzproblem im Rechenzentrum keine Welle falscher Ausfallmeldungen.

Häufige Fragen

Bekomme ich für jede Prüfung eine Mail?
Nein. Es gibt eine Meldung beim Öffnen eines Incidents, Erinnerungen nach Zeitplan, solange er nicht quittiert ist, und genau eine Entwarnung. Gleichzeitige Eröffnungen werden zu einer Sammelmeldung zusammengefasst.
Kann ein Kunde seinen eigenen Slack-Kanal bekommen?
Kanäle gelten für die ganze Organisation und lassen sich nicht auf einen Kunden einschränken. Für Kunden gibt es die öffentliche Status-Seite, den Kundenzugang und den Monatsbericht; jede Meldung nennt den Kunden, sodass sie sich im Chat filtern lässt.
Warum kam eine Meldung trotz Ruhezeit?
Kritische Meldungen und Entwarnungen unterliegen nicht der Ruhezeit, ebenso wenig Domains mit „Ruhezeit ignorieren“ und der Digest.
Kann ich einen Incident von Hand schließen?
Nein, Incidents schließen sich, wenn die Prüfung die Erholung bestätigt, oder wenn der Monitor abgeschaltet wird. Quittieren unterdrückt die Erinnerungen, bis es wieder gut ist.