1. Übersicht
Für die Überwachung von Hosts und Services sowie die Kommunikation verschiedener Komponenten einer Checkmk-Installation untereinander verwendet Checkmk in vielen Fällen Datenübertragung über TCP/IP oder UDP/IP.
Dieser Artikel soll Ihnen einen Überblick geben, welche Ports für welche Funktionalität benötigt werden. Diese Ports müssen daher in der Firewall-Konfiguration freigeschaltet werden, respektive beim Einsatz von Checkmk in einem Container an diesen gebunden werden.
Die Kommunikationsrichtung ist, wenn nicht anders erwähnt, eingehend zur in der Kapitelüberschrift genannten Komponente.
Hinweis: Die Mehrheit der hier aufgeführten Portnummern sind Standardports. Diese können jederzeit manuell auf andere Ports umgestellt werden. Diejenigen Ports, die nicht standardmäßig aktiv sind, sondern stattdessen bei Bedarf freigegeben werden müssen, sind zusätzlich mit einem Vermerk gekennzeichnet.
2. Überwachung von Hosts (Agent, SNMP)
2.1. Überwachter Host
Die folgenden Ports auf überwachten Hosts müssen vom Checkmk-Server aus erreichbar sein.
Port | Protokoll | Bezeichnung | Ergänzende Informationen |
---|---|---|---|
161 |
UDP |
Via SNMP überwachte Hosts erhalten über diesen Port die Anforderung |
|
6556 |
TCP |
Via Checkmk-Agent überwachte Hosts werden über diesen Port abgefragt. Die Kommunikation erfolgt TLS verschlüsselt oder im Klartext (wie beim Linux-Agenten im Legacy-Modus). |
|
— |
ICMP |
Ping |
Checkmk überwacht die Erreichbarkeit von Hosts per Ping. Ist dies nicht möglich, muss die Ermittlung des Host-Zustands mit der Regel Host Check Command festgelegt werden. |
Aktive Checks greifen direkt auf die Ports der überwachten Dienste zu, die daher auch vom Checkmk-Server aus erreichbar sein müssen. Die Überwachung mit Spezialagenten kann erfordern, andere/weitere Ports zu öffnen. So benötigt der Spezialagent für VMware ESXi (auch NetApp und viele weitere) die Öffnung des Ports 443 auf dem ESXi Server.
2.2. Checkmk-Server
Die folgenden Ports auf dem Checkmk-Server müssen für die Hosts im Monitoring erreichbar sein.
Port | Protokoll | Bezeichnung | Ergänzende Informationen |
---|---|---|---|
80 |
TCP |
Hypertext Transfer Protocol (HTTP) |
Agent Updater (Agentenbäckerei), Discovery des Agent Controller Ports |
162 |
UDP |
Simple Network Management Protocol Trap (SNMPTRAP) EC |
Empfang von SNMP-Traps über die Event Console (optional aktivierbar) |
443 |
TCP |
Hypertext Transfer Protocol over SSL/TLS (HTTPS) |
Agent Updater (Agentenbäckerei), Discovery des Agent Controller Ports, mit Transportverschlüsselung |
514 |
TCP und UDP |
Syslog (EC) |
Empfang von Syslog-Nachrichten über die Event Console (optional aktivierbar) |
6559 |
UDP |
Empfang von UDP-Paketen für die Echtzeitprüfungen einzelner Dienste (selten verwendet, optional aktivierbar) |
|
8000 |
TCP |
Agent Controller TLS-Registrierung |
Wenn mehrere Instanzen auf dem Checkmk-Server laufen, sind eventuell weitere Ports (8001, 8002…) nötig. |
Die TLS-Registrierung von Agenten nutzt die REST-API auf Port 80/443 zur Discovery des Ports zur Registrierung (meist 8000 TCP). Sind beide nicht erreichbar, kann der Port per Kommandozeilenoption angegeben werden. Falls Port 8000 nicht erreichbar ist, kann auf anderen Hosts im Monitoring eine Registrierung im Auftrag erfolgen.
3. Verteiltes Monitoring
3.1. Remote-Instanz
Die folgenden Ports auf Remote-Instanzen müssen vom als Zentralinstanz arbeitenden Checkmk-Server erreichbar sein.
Port | Protokoll | Bezeichnung | Ergänzende Informationen |
---|---|---|---|
80 |
TCP |
HTTPS (Hypertext Transfer Protocol) |
Synchronisierung im verteilten Monitoring |
443 |
TCP |
Hypertext Transfer Protocol over SSL/TLS (HTTPS) |
Synchronisierung im verteilten Monitoring, mit Transportverschlüsselung |
6555 |
TCP |
Benachrichtigungs-Spooler (notification spooler) |
Der Benachrichtigungs-Spooler dient dem zentralen Versand von Benachrichtigungen, hier beim Verbindungsaufbau durch die Zentralinstanz (optional aktivierbar) |
6557 |
TCP |
Wenn mehrere Instanzen auf dem Checkmk-Server laufen, sind eventuell weitere Ports nötig (optional aktivierbar) |
|
6558 |
TCP |
Statusanschluss der Event Console (optional aktivierbar) |
3.2. Zentralinstanz
Prinzipiell ist verteiltes Monitoring ohne weitere Hilfsmittel wie Tunneling bereits möglich, wenn die Zentralinstanz eine Verbindung zu den Remote-Instanzen herstellen kann. Die Erreichbarkeit der Zentralinstanz durch Remote-Instanzen ist nur für optionale Funktionalitäten (z.B. Agentenbäckerei) erforderlich.
Die folgenden Ports auf dem als Zentralinstanz arbeitenden Checkmk-Server müssen durch die zugeordneten Remote-Instanzen erreichbar sein, um die beschriebene Funktionalität bereitzustellen.
Port | Protokoll | Bezeichnung | Ergänzende Informationen |
---|---|---|---|
80 |
TCP |
Hypertext Transfer Protocol (HTTP) |
|
443 |
TCP |
Hypertext Transfer Protocol over SSL/TLS (HTTPS) |
Für Agentenbäckerei und dynamische Host-Konfiguration, mit Transportverschlüsselung |
6555 |
TCP |
Benachrichtigungs-Spooler (notification spooler) |
Der Benachrichtigungs-Spooler dient dem zentralen Versand von Benachrichtigungen, hier beim Verbindungsaufbau durch eine Remote-Instanz (optional aktivierbar) |
4. Lokale Ports auf dem Checkmk-Server
Die folgenden Ports werden vom Checkmk-Server auf dem lokalen Loopback Interface genutzt. Falls Sie auf Ihrem Checkmk-Server eine sehr strenge Firewall-Konfiguration verwenden, müssen diese Ports auf der IP-Adresse 127.0.0.1 (IPv4), respektive ::1 (IPv6) eingehend und ausgehend freigeschaltet werden.
Port | Protokoll | Bezeichnung | Ergänzende Informationen |
---|---|---|---|
5000 |
TCP |
HTTP Site Apache |
Jede Checkmk-Instanz verfügt über einen eigenen Apache, auf den der extern aufrufbare Apache als Reverse Proxy zugreift. Weitere Instanzen verwenden Port 5001 usw. |
6558 |
TCP |
Statusanschluss der Event Console (optional aktivierbar) |
5. Lokaler Port auf Windows-Hosts
Der folgende Port wird auf Windows-Hosts im Monitoring zur Kommunikation der beiden Komponenten Agentenprogramm und Agent Controller genutzt. Falls Sie auf dem überwachten Host eine sehr strenge Firewall-Konfiguration verwenden, muss dieser Port auf der IP-Adresse 127.0.0.1 (IPv4), respektive ::1 (IPv6) eingehend und ausgehend freigeschaltet werden.
Port | Protokoll | Bezeichnung | Ergänzende Informationen |
---|---|---|---|
28250 |
TCP |
Checkmk-Agent |
Das Agentenprogramm öffnet den Port. Der für die verschlüsselte Kommunikation mit dem Checkmk-Server zuständige Agent Controller |
6. Checkmk Appliance Cluster
Sie können zwei Checkmk-Appliances ("Knoten") zu einem Cluster zusammenschließen. Dabei werden alle Konfigurationen und Daten zwischen den beiden Geräten abgeglichen.
Die folgenden Ports müssen von beiden Knoten aus ein- und ausgehend freigegeben sein.
Achtung! Da die Kommunikation der beiden Appliances miteinander unverschlüsselt stattfindet, müssen Sie gegebenenfalls Maßnahmen ergreifen, damit unbefugte Dritte keinen Zugriff auf den Netzwerkverkehr haben. Dies kann beispielsweise die direkte Verbindung beider Geräte in einem Rack sein oder die Nutzung eines verschlüsselten VLAN, wenn keine räumliche Nähe erwünscht ist.
Port | Protokoll | Bezeichnung | Ergänzende Informationen |
---|---|---|---|
3121 |
TCP |
Pacemaker |
Pacemaker Cluster resource manager |
4321 |
UDP |
Corosync |
Corosync Cluster Engine |
4323 |
UDP |
Corosync |
Corosync Cluster Engine |
7789 |
TCP |
DRBD |
Synchronisierung der DRBD (Distributed Replicated Block Device) |
7. Ausgehende Ports
Eventuell benötigen Sie, vom Checkmk-Server ausgehend, einige weitere Ports:
SMTP zur Versendung von Benachrichtigungen vom Checkmk-Server über E-Mail (je nach Konfiguration des Mailservers Port 25, 465 oder 587 TCP)
NTP Zeitsynchronisation (Port 123 UDP)
DNS (Port 53 UDP)
LDAP Authentifizierung (Port 389 TCP, als LDAPS auf Port 636 TCP)