TCP-Port-Check

Ein Monitor bestätigt, dass ein Port Verbindungen annimmt, für Dienste ohne HTTP wie eine Datenbank, einen Message-Broker oder einen SSH- oder LDAP-Port. Auf einem TLS-Port kann derselbe Monitor auch das Zertifikat prüfen.

Alle Checktypen tcp

Die Monitoransicht eines TCP-Port-Checks mit Uptime, mittlerer Antwortzeit, P95 und Check-Zahl. Sie zeigt außerdem das Zertifikatsfeld, das Alarmquorum und das Antwortzeit-Diagramm je Region.
Auf dieser Seite

Was er prüft

Ein TCP-Port-Monitor verbindet sich in seinem Intervall aus jeder seiner Regionen mit Host und Port, einmal je aufgelöster Adresse. Er bewertet nur, ob die Verbindung angenommen oder abgewiesen wurde oder in den Timeout lief, und zeichnet auf, wie lange der Connect dauerte. Er sendet keine Nutzdaten und liest kein Banner.

Wann Sie ihn einsetzen

  • Ein Dienst lauscht auf einem Port, hat aber keinen HTTP-Endpunkt, zum Beispiel eine Datenbank, eine Message-Queue oder ein SSH-, LDAP- oder Redis-Port.
  • Sie wollen wissen, ob der Port erreichbar ist, nicht, welches Protokoll dahinter läuft.
  • Sie wollen das Zertifikat eines TLS-Ports ohne HTTP überwachen, ohne einen zweiten Monitor anzulegen.

Er spricht das Protokoll hinter dem Port nicht: kein Banner, keine Anmeldung und keine Abfrage. Für einen Mailserver nutzen Sie den SMTP- oder IMAP-Check, für einen HTTP-Endpunkt den HTTP(S)-Check. Wechselt ein Port erst nach einem Klartext-Dialog auf TLS (STARTTLS), überwachen Sie sein Zertifikat mit dem SMTP- oder IMAP-Check.

Das Monitor-Formular mit Typ TCP-Port: Host, Port und der Schalter für den TLS-Zertifikat-Subcheck mit Warnfenster und den Regeln für Aussteller und Subject.
Das TCP-Port-Formular mit Host, Port und dem TLS-Zertifikat-Schalter. 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 Port von 1 bis 65535. Der Prüfpunkt löst den Host zur Prüfzeit über seinen eigenen Resolver auf.

FeldPflichtWerte und VoreinstellungBedeutung
hostHostjaHostname oder IP-Adresse, kein Schema, kein PfadDas Ziel. Der Prüfpunkt verbindet sich mit jeder aufgelösten Adresse der gewählten Familie für sich, und jede Adresse erhält ein eigenes Teilergebnis.
portPortja1 bis 65535Der Port für die Verbindung. Er hat keine Voreinstellung, und ein ohne Port gespeicherter Monitor beendet jeden Check als Fehler. Setzen Sie ihn deshalb immer. Das Formular sendet den Port nur, wenn Sie einen eingeben.
interval_secondsPrüfintervalloptionalSekunden, Voreinstellung 300, höchstens 24 h, Minimum je nach TarifWie oft jede Region den Check ausführt. Einen Wert unter der Untergrenze des Tarifs hebt Perstat auf die Untergrenze an, statt ihn abzulehnen. Setzen Sie ihn auf der obersten Ebene der Anfrage neben type und config, denn innerhalb von config ignoriert ihn die API.
regionsRegionenoptionalTeilmenge aus na, eu, as, sa, af, oce. Fehlend oder leer: die ersten n Schlüssel in dieser Reihenfolge, n ist das Regionslimit des TarifsWelche Kontinente den Check ausführen. Setzen Sie die Angabe auf der obersten Ebene der Anfrage neben type und config, denn innerhalb von config ignoriert die API sie.
address_familiesIP-FamilienoptionalListe aus ipv4, ipv6 oder beiden. Fehlend oder leer bedeutet ["ipv4"]Bei beiden Familien legt family_fail_severity (degraded als Voreinstellung, oder failed) den Zustand fest, wenn eine Familie ausfällt. Das Formular bietet ipv6 nur an, wenn der Host einen AAAA-Record hat oder ein IPv6-Literal ist.

TLS-Zertifikat

Ist der Schalter an, folgt auf einen bestandenen Connect ein direkter TLS-Handshake, einmal je Check statt je Adresse. Er läuft auf dem Port des Monitors, sofern tls_cert.port keinen anderen nennt. Der Prüfpunkt bewertet das Zertifikat gegen Ihre Regeln zu Ablauf, Aussteller und Subject. Ohne den Schalter liest der Check gar kein Zertifikat, und die Monitoransicht zeigt keines.

FeldPflichtWerte und VoreinstellungBedeutung
tls_cert.enabledjatrueSchaltet den Subcheck ein.
tls_cert.portoptionalPort, Voreinstellung: der Port des MonitorsDer Port für den TLS-Handshake, falls er vom geprüften Port abweicht.
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 Hinweis ändert den Zustand nie, ein abgelaufenes Zertifikat lässt den Check aber 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. Nutzen Sie das nur für interne Dienste mit eigener CA. Ablauf und Regex-Bedingungen gelten weiter, und das Formular fragt nach einer Bestätigung.

So läuft ein Check ab

  1. Der Prüfpunkt liest die Konfiguration. Ein fehlender Port beendet den Check als Fehler, bevor der Prüfpunkt das Netz berührt.
  2. Ist ein Check fällig, löst jede Region den Host über den eigenen Resolver des Knotens auf. Sie prüft jede Adresse der gewählten Familie gegen die gesperrten Bereiche.
  3. Jede Adresse erhält einen TCP-Connect mit einem Timeout von 10 s. Die Zeit bis zur angenommenen Verbindung ist die Antwortzeit dieser Adresse.
  4. Nur ein bestandener Check mit eingeschaltetem TLS-Zertifikat-Subcheck führt die Zertifikatsregel aus. Sie läuft einmal je Check, als direkter TLS-Handshake auf dem Port des Monitors oder auf tls_cert.port.
  5. Die Region sendet ihr Ergebnis an die Control Plane. Sobald das Quorum der Alarmregel aus Regionen und aufeinanderfolgenden Checks einig ist, öffnet sich ein Incident.
Die Monitoransicht eines TCP-Port-Checks mit Uptime, mittlerer Antwortzeit, P95 und Check-Zahl. Sie zeigt außerdem das Zertifikatsfeld, das Alarmquorum und das Antwortzeit-Diagramm je Region.
Die Monitoransicht mit Uptime, mittlerer Antwortzeit und P95, dazu das Zertifikatsfeld und die Antwortzeit je Region. Echte Produktoberfläche, Beispieldaten.

Was ein Ergebnis enthält

Verbindungszeit
Zeit vom Connect-Aufruf bis zur angenommenen Verbindung, je Region und je Adresse (latency_ms).
Detailzeile
Eine Zeile, die sagt, was passiert ist: Der Port ist offen, die Verbindung wurde mit Grund abgewiesen, oder der Connect lief in den Timeout.
Zertifikat
Mit eingeschaltetem Subcheck: Common Name und alternative Namen, Aussteller, Gültigkeitsdaten sowie Selbstsignatur- und Vertrauensstatus. Ist das Warnfenster erreicht, trägt das Ergebnis auch den Ablaufhinweis.
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

  • okDie Verbindung wurde auf jeder geprüften Adresse angenommen. Ein Zertifikat innerhalb seines Warnfensters behält diesen Zustand.
  • eingeschränktEine IP-Familie oder eine von mehreren aufgelösten Adressen fällt aus, während die anderen antworten, bei voreingestellter family_fail_severity. Ein einzelner Connect kennt kein eingeschränktes Ergebnis.
  • ausgefallenDie Verbindung wird abgewiesen oder läuft in den Timeout, oder der Host lässt sich nicht auflösen oder löst auf eine gesperrte Adresse auf. Mit eingeschaltetem Subcheck zählt auch eine fehlschlagende Zertifikatsregel: abgelaufen, abgewiesener Handshake oder Aussteller oder Subject passen nicht. Mit family_fail_severity: failed zählt hier auch eine ausgefallene Familie.
  • FehlerDie Konfiguration ist nicht ausführbar, weil der Port fehlt. 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. 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. Mehr Regionen, als der Tarif erlaubt, lehnt Perstat ab, statt die Liste zu kürzen.
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, Host-Agenten und Heartbeats haben ein eigenes.

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": "Postgres primary",
  "type": "tcp",
  "interval_seconds": 60,
  "config": {
    "host": "db.example.com",
    "port": 5432
  }
}

Jede Schnittstelle mit ihrer Grenze

Grenzen

  • Der Check liest kein Banner, führt keinen Protokolldialog und sendet keine Nutzdaten. Er endet, sobald die Verbindung angenommen ist.
  • Port 0 wird abgelehnt. Ein ohne Port gespeicherter Monitor beendet jeden Check als Fehler.
  • Der TLS-Subcheck ist ein direkter Handshake auf dem Port des Monitors, sofern tls_cert.port keinen anderen nennt. Wechselt ein Port erst nach einem Klartext-Dialog auf TLS (STARTTLS), nutzen Sie den SMTP- oder IMAP-Check.
  • Der Prüfpunkt verbindet sich nicht mit Zielen, die auf Loopback-, private, Link-local-, Cloud-Metadaten- oder ähnliche Adressen auflösen. Der Check schlägt dann mit dem Detail internal or private, blocked fehl. Speichern lässt sich ein solcher Monitor trotzdem.
  • Nicht jede Region prüft IPv6, deshalb schränkt die Auswahl von ipv6 die nutzbaren Regionen ein.

Alle Checktypen