TCP-Port-Monitoring
Überwacht die Erreichbarkeit und Antwortzeit von TCP-Ports. Perfekt für Nicht-HTTP-Dienste wie Datenbanken, Mailserver, Message Broker oder jede Anwendung, die auf einem TCP-Port lauscht.
So funktioniert es
Hoppla öffnet eine TCP-Verbindung zum angegebenen Host und Port. Kommt die Verbindung innerhalb des Timeouts zustande, gilt der Port als erreichbar. Die Antwortzeit misst, wie lange der TCP-Handshake dauert.
Standardmäßig sendet TCP-Monitoring keine Daten auf Anwendungsebene -- es prüft einzig und allein, ob der Port offen ist und Verbindungen annimmt. Optional kannst du nach dem Verbindungsaufbau einen Probe-String senden und die Antwort prüfen (siehe send_string / expected_response weiter unten).
Konfiguration
| Einstellung | Beschreibung | Standard |
|---|---|---|
| Host | Hostname oder IP-Adresse | Host der Monitor-URL |
| Port | TCP-Portnummer (1-65535) | Port der Monitor-URL, sonst 80 |
| Timeout | Maximale Wartezeit für die Verbindung (Sekunden) | 10 |
| Send-String | Optionaler Probe-String, der nach dem Verbinden gesendet wird (max. 1000 Zeichen; CR/LF werden entfernt) | (keiner) |
| Erwartete Antwort | Optionaler Teilstring, der (Groß-/Kleinschreibung egal) gegen die Antwort/das Banner geprüft wird -- passt nichts, schlägt der Check fehl | (keine) |
| Check-Intervall | Wie oft Hoppla den Port prüft | 60 Sekunden |
Lässt du den Port weg, nimmt Hoppla den Port aus der Monitor-URL oder fällt auf 80 zurück. Das Timeout wird zur Ausführungszeit auf maximal 30 Sekunden begrenzt, auch wenn bei der Konfiguration größere Werte akzeptiert werden.
Ergebnisse
| Feld | Beschreibung |
|---|---|
| Status | Ob die Verbindung geklappt hat oder fehlgeschlagen ist |
| Antwortzeit | Dauer des TCP-Handshakes (ms) |
| Willkommensnachricht | Das Banner, das der Dienst beim Verbinden zurückgibt, falls vorhanden (bereinigt und gekürzt) |
| Fehler | Details zum Verbindungsfehler, falls der Check fehlschlägt (Timeout, abgelehnt, nicht erreichbar oder erwartete Antwort nicht gefunden) |
Beispielergebnis -- Erfolg
TCP check: mail.example.com:587
Status: Connected
Response time: 12msBeispielergebnis -- Fehler
TCP check: mail.example.com:587
Status: Failed
Error: Connection refused
Response time: --Alarme
| Ereignis | Auslöser | Schweregrad |
|---|---|---|
incident.created | TCP-Verbindung schlägt fehl (abgelehnt, Timeout oder nicht erreichbar) | Incident |
Ein Incident wird eröffnet, wenn der Port nicht mehr erreichbar ist, und automatisch geschlossen, sobald die Verbindung wieder steht. Wie bei Uptime-Checks nutzt TCP-Monitoring die Dual-Check-Verifizierung -- ein einzelner Fehler wird erst von einem zweiten Standort gegengeprüft, bevor ein Alarm rausgeht.
Typische Anwendungsfälle
| Dienst | Standard-Port | Hinweise |
|---|---|---|
| SMTP (Submission) | 587 | Ausgehender Mailserver |
| IMAP | 993 (TLS) | Eingehender Mailserver |
| POP3 | 995 (TLS) | Eingehender Mailserver |
| RabbitMQ | 5672 | Message Broker |
| Elasticsearch | 9200 | Suchmaschine |
| HTTPS | 443 | Webserver-Socket |
| Eigene Anwendung | Beliebig | Deine eigenen Dienste |
Blockierte Ports
Damit die Plattform nicht für Port-Scanning missbraucht werden kann, sind folgende Ports blockiert und können nicht für einen TCP-Check konfiguriert werden: 22 (SSH), 23 (Telnet), 25 (SMTP), 110 (POP3 unverschlüsselt), 143 (IMAP unverschlüsselt), 3306 (MySQL), 5432 (PostgreSQL), 6379 (Redis), 11211 (Memcached), 27017 (MongoDB). Um eine Datenbank oder einen Cache zu überwachen, prüfe stattdessen einen Port, den deine Anwendung selbst bereitstellt, oder nutze einen HTTP-Uptime- oder Application-Health-Check gegen einen vorgelagerten Dienst.
Wann TCP statt Uptime verwenden
- TCP-Monitoring wenn der Dienst kein HTTP spricht (Datenbanken, Mailserver, SSH, eigene Protokolle)
- Uptime-Monitoring wenn der Dienst einen HTTP/HTTPS-Endpunkt hat, den du prüfen willst
- Beides wenn du den Port auf Netzwerkebene und die HTTP-Anwendung getrennt überwachen möchtest
Sicherheitshinweis
TCP-Monitoring prüft, ob ein Port Verbindungen annimmt, und sendet optional einen Probe-String, dessen Antwort es prüft. Es authentifiziert sich nicht und sendet keine Zugangsdaten. Um Missbrauch für Port-Scanning zu verhindern, kann eine Reihe sensibler Dienst-Ports (SSH, Telnet, SMTP, unverschlüsseltes POP3/IMAP sowie gängige Datenbank-/Cache-Ports -- siehe Blockierte Ports) nicht überwacht werden.