SMTP-Check

Perstat prüft aus bis zu 6 Regionen den SMTP-Server, von dem Ihre Passwort-Resets und Rechnungen abhängen. Der Check liest das Banner, sendet EHLO und kann das Zertifikat hinter STARTTLS bewerten, verschickt aber keine Nachricht.

Alle Checktypen smtp

Die Monitoransicht eines SMTP-Checks auf mail.datargo.com mit Uptime, Antwortzeiten je Region, dem Banner in der Detailzeile und dem Zertifikatsfeld.
Auf dieser Seite

Was er prüft

Ein SMTP-Monitor verbindet sich aus jeder seiner Regionen mit Host und Port, liest das Server-Banner und sendet EHLO datargo.monitor. Der Check besteht, wenn das Banner mit 220 beginnt und die erste Zeile der EHLO-Antwort mit 250. Jeder andere Code, eine abgewiesene Verbindung oder ein Timeout lässt ihn fehlschlagen. Mit eingeschaltetem Zertifikat-Subcheck geht ein bestandener Check weiter in TLS, über STARTTLS oder direkt auf Port 465, und bewertet Ablauf, Aussteller, Subject und Vertrauen.

Wann Sie ihn einsetzen

  • Ein Mailserver soll auf 25 oder 587 Verbindungen annehmen und als SMTP-Server antworten, nicht nur den Port offen halten.
  • Das Zertifikat hinter STARTTLS soll überwacht werden. Der TLS-Zertifikat-Check führt nur einen direkten Handshake aus, deshalb wird das Zertifikat eines Submission-Ports mit STARTTLS hier geprüft.
  • Ausgehende Mail einer Anwendung hängt an einem Relay, und ein Relay, das nicht mehr antwortet, soll einen Incident öffnen.

Der Check meldet sich nicht an, sendet keine Nachricht und führt weder MAIL FROM noch RCPT TO aus. Über die Zustellung sagt er deshalb nichts. Für SPF und DMARC der Domain nutzen Sie den DNS-Hygiene-Check. Einen Postfachserver und sein Zertifikat prüft der IMAP-Check, einen Port ohne Protokolldialog der TCP-Check.

Das Monitor-Formular mit Typ SMTP: Host mail.datargo.com, das Port-Feld und die Auswahl der IP-Familien. Der TLS-Zertifikat-Subcheck zeigt das Warnfenster und die Muster für Aussteller und Subject.
Das SMTP-Formular: Host, Port, der TLS-Zertifikat-Subcheck und die IP-Familien. Echte Produktoberfläche, Beispieldaten.

Konfiguration

Ziel. Ein Hostname oder eine IP-Adresse ohne Schema, Pfad oder Leerzeichen (Labels bis 63 Zeichen, insgesamt 253), dazu ein optionaler Port von 1 bis 65535. Ohne Port prüft die Engine Port 25, obwohl das Formular 587 vorschlägt. Jede aufgelöste Adresse wird geprüft, bevor der Prüfpunkt sie kontaktiert. Loopback-, private, Link-local- und Cloud-Metadaten-Adressen werden abgewiesen, der Monitor erreicht also kein internes Netz.

FeldPflichtWerte und VoreinstellungBedeutung
hostHostjaHostname oder IP-AdresseDer Mailserver, mit dem sich der Prüfpunkt verbindet, ohne Schema oder Pfad. IP-Literale werden angenommen.
portPortoptional1 bis 65535, ohne Angabe 25. Das Formular schlägt 587 vorDer SMTP-Port. Für den Zertifikat-Subcheck bedeutet 465 einen direkten TLS-Handshake, jeder andere Port bedeutet STARTTLS.
interval_secondsPrüfintervalloptionalSekunden, Voreinstellung 300, höchstens 24 h, Untergrenze je nach TarifWie oft jede Region den Check ausführt. Das Feld steht in der Anfrage zum Anlegen neben config, wie im Beispiel unten. Ein Wert unter der Untergrenze des Tarifs wird auf die Untergrenze angehoben, nicht abgelehnt.
regionsRegionenoptionalTeilmenge aus na, eu, as, sa, af, oce. Ohne Angabe: so viele, wie der Tarif erlaubt, in dieser ReihenfolgeWelche Kontinente den Check ausführen. Das Feld steht wie interval_seconds neben config. Mehr Regionen, als der Tarif erlaubt, werden mit 402 abgelehnt, nicht gekürzt.
address_familiesIP-FamilienoptionalListe aus ipv4, ipv6 oder beiden. Leer oder ohne Angabe gilt ["ipv4"]Jede aufgelöste Adresse wird für sich verbunden. Bei beiden Familien entscheidet family_fail_severity (degraded als Voreinstellung, oder failed), was der Ausfall einer Familie bedeutet.

TLS-Zertifikat

Ein bestandener Check kann in TLS weitergehen und das Zertifikat bewerten. Auf Port 465 nutzt er einen direkten Handshake, auf jedem anderen Port den STARTTLS-Dialog (Banner, EHLO bis zur letzten Zeile, STARTTLS, 220). Ohne den Subcheck zeigt der Monitor weiterhin das Zertifikat, das er gesehen hat, aber es gelten weder Regel noch Warnfenster.

FeldPflichtWerte und VoreinstellungBedeutung
tls_cert.enabledoptionaltrue oder false, Voreinstellung falseSchaltet den Subcheck ein. In der Voreinstellung ist er aus, und das Formular trägt den Schalter.
tls_cert.portoptionalPort, Voreinstellung: der Port des MonitorsDer Port für den TLS-Handshake.
tls_cert.warn_daysoptionalTage, Voreinstellung 14Unterhalb dieser Restlaufzeit trägt der Check einen Zertifikatshinweis, und Eigentümer und Admins erhalten stündlich eine E-Mail und einen In-App-Hinweis. Der Zustand bleibt bestanden. Ein abgelaufenes Zertifikat lässt den Check fehlschlagen.
tls_cert.issuer_regexoptionalRegulärer AusdruckDer Aussteller muss passen, zum Beispiel Let's Encrypt.
tls_cert.subject_regexoptionalRegulärer AusdruckDer Common Name des Subjects muss passen.
tls_cert.allow_self_signedoptionalfalse (Voreinstellung) oder trueÜberspringt im Handshake die Prüfung von Vertrauenskette, Hostname und Gültigkeitszeitraum. Ablauf und die Regex-Bedingungen gelten weiter, und das Formular fragt nach einer Bestätigung. Nutzen Sie es nur für interne Relays mit eigener CA.

So läuft ein Check ab

  1. Jede Region, deren Intervall fällig ist, löst den Host über den eigenen Resolver des Knotens auf.
  2. Jede aufgelöste Adresse der gewählten Familie wird gegen die gesperrten Bereiche geprüft und dann für sich verbunden.
  3. Je Adresse liest der Prüfpunkt die Banner-Zeile, sendet EHLO datargo.monitor und liest die erste Zeile der Antwort. Der ganze Dialog muss innerhalb des Limits von 10 s abgeschlossen sein.
  4. Ein Banner, das mit 220 beginnt, und eine EHLO-Antwort, die mit 250 beginnt, bestehen. Jeder andere Code, ein I/O-Fehler oder ein Timeout schlägt fehl.
  5. Nur ein bestandener Check mit tls_cert.enabled führt die Zertifikatsregel aus, einmal je Check. Er nutzt auf 465 einen direkten Handshake und auf jedem anderen Port den STARTTLS-Dialog.
  6. Unabhängig vom Subcheck liest jeder Check das Zertifikat, das der Server vorzeigt, für die Anzeige aus. Dieses Lesen ändert das Urteil nie.
  7. Das Ergebnis der Region geht an die Control Plane. Die Alarmregel entscheidet, wann ausgefallene Regionen einen Incident öffnen, in der Voreinstellung, sobald 2 Regionen über 2 aufeinanderfolgende Checks übereinstimmen.
Die Monitoransicht eines SMTP-Checks auf mail.datargo.com mit Uptime, Antwortzeiten je Region, dem Banner in der Detailzeile und dem Zertifikatsfeld.
Die Monitoransicht mit Uptime, Antwortzeit und p95, dazu die Banner-Zeile und das Zertifikat, das der Server vorgezeigt hat. Echte Produktoberfläche, Beispieldaten.

Was ein Ergebnis enthält

Banner
Die Detailzeile trägt das Banner, das der Server gesendet hat. Bei einem Fehlschlag trägt sie SMTP error: ... mit der Antwort des Servers oder Timeout.
Antwortzeit
Zeit vom Verbindungsaufbau bis zur EHLO-Antwort, je Region und je Adresse. Bei mehreren Adressen wird das Minimum gemeldet.
Ursachenschicht
Ob der Fehler beim DNS des Ziels lag (NXDOMAIN oder NODATA) oder bei seiner Anwendung, nachdem der Name aufgelöst war. Andere Ursachen werden als unbekannt gemeldet.
Zertifikat
Das Zertifikat wird über STARTTLS oder auf Port 465 gelesen. Das Ergebnis behält Common Name, alternative Namen, Aussteller und Gültigkeitsdaten, dazu, ob es selbstsigniert und vertrauenswürdig ist. Mit eingeschaltetem Subcheck trägt es den Zertifikatshinweis, sobald das Zertifikat sein Warnfenster erreicht.
Region, Familie, Adresse
Jedes Ergebnis trägt die Region, die es gemessen hat, und ein Teilergebnis je IP-Familie und je Adresse.

Zustände und Schwere

  • okDas Banner beginnt mit 220 und die EHLO-Antwort mit 250. Mit eingeschaltetem Subcheck hält auch die Zertifikatsregel, und ein Zertifikat innerhalb seines Warnfensters behält diesen Zustand.
  • eingeschränktEine IP-Familie fällt aus, während die andere antwortet, oder einige von mehreren aufgelösten Adressen fallen aus, jeweils bei voreingestellter family_fail_severity.
  • ausgefallenDie Verbindung wird abgewiesen, läuft in den Timeout oder wird blockiert, oder der Host löst nicht auf. Der Check ist auch ausgefallen, wenn Banner oder EHLO-Antwort einen anderen Code tragen. Dasselbe gilt, wenn die Zertifikatsregel fehlschlägt, weil das Zertifikat abgelaufen ist, der Handshake abgewiesen wird oder Aussteller oder Subject nicht passen.
  • FehlerDie Konfiguration ist nicht ausführbar. Das zählt als Ausfall mit Schwere critical.

Per Quorum bestätigt: Standardmäßig müssen 2 Regionen den Fehler melden, bevor Perstat einen Incident öffnet. Die Voreinstellung der Organisation verlangt 2 Regionen und 2 aufeinanderfolgende Checks. Ein Monitor kann eine eigene Regel tragen, mit Anzahl oder Prozent, aufeinanderfolgenden Checks und einer Mindestdauer.

Tarife und Grenzen

Kürzestes Intervall
300 s in Free, 60 s in Pulse, 30 s in Sentinel, 15 s in Command und 10 s in Enterprise. Das Webformular bietet 30 s, 1 min, 5 min, 15 min und 1 h an. Die Untergrenzen von 15 s und 10 s erreichen Sie nur über MCP.
Regionen
2 von 6 in Free, 3 von 6 in Pulse und alle 6 ab Sentinel.
Monitore
10 in Free, 50 in Pulse, 150 in Sentinel, 500 in Command und ein individuelles Kontingent in Enterprise. Die elf regionalen Checktypen teilen sich dieses Kontingent. Heartbeat- und Agent-Monitore nutzen eigene Kontingente.

Alle Tarifgrenzen vergleichen

Aus der Pipeline oder von einem Agenten

Dieselbe config gilt im Deploy-Schritt, in einem MCP-Client wie Claude Code und im Formular oben. create_monitor braucht einen API-Schlüssel für die ganze Organisation. Wenn Sie regions weglassen, wählt der Tarif seine Voreinstellung.

{
  "name": "Mail relay",
  "type": "smtp",
  "interval_seconds": 60,
  "config": {
    "host": "mail.example.com",
    "port": 587,
    "tls_cert": { "enabled": true, "warn_days": 21 }
  }
}

Jede Schnittstelle mit ihrer Grenze

Grenzen

  • Keine Authentifizierung, kein Nachrichtenversand, kein MAIL FROM und kein RCPT TO. Der Check belegt, dass der Server antwortet, nicht, dass er zustellt.
  • Die Erreichbarkeitsprüfung liest nur die erste Zeile der EHLO-Antwort. Die Erweiterungen, die der Server ankündigt, wertet sie nicht aus.
  • Ein ohne Port angelegter Monitor prüft Port 25, nicht 587.
  • SPF und DMARC der Domain werden hier nicht gelesen. Das deckt der DNS-Hygiene-Check ab.
  • Ziele auf privaten, Loopback-, Link-local- und Cloud-Metadaten-Adressen werden abgewiesen.
  • Nicht jede Region prüft IPv6, deshalb schränkt die Auswahl von ipv6 die nutzbaren Regionen ein. Das Formular bietet IPv6 nur an, wenn der Host auf einen AAAA-Record auflöst oder ein IPv6-Literal ist.

Alle Checktypen