9 Website-Zertifikate mit Zabbix Agent 2 (passiv) überwachen

Einführung

Diese Anleitung bietet einen umfassenden Überblick darüber, wie SSL/TLS-Zertifikate mit dem Schlüssel web.certificate.get in Zabbix Agent 2 eingerichtet und überwacht werden. Sie wurde entwickelt, um die Überwachung von Zertifikaten für einzelne oder mehrere Websites zu vereinfachen, sodass Administratoren potenzielle Probleme wie abgelaufene oder ungültige Zertifikate schnell erkennen können.

Für wen diese Anleitung gedacht ist

Diese Anleitung richtet sich an neue Zabbix-Benutzer und enthält die minimale Anzahl an Schritten, die erforderlich sind, um die grundlegende Überwachung von Website-Zertifikaten zu aktivieren. Wenn Sie nach umfassenden Anpassungsoptionen suchen oder eine erweiterte Konfiguration benötigen, lesen Sie den Abschnitt Configuration im Zabbix-Handbuch.

Voraussetzungen

Bevor Sie mit dieser Anleitung fortfahren, müssen Sie den Zabbix Server, das Zabbix Frontend und den Zabbix Agent 2 gemäß den Anweisungen für Ihr Betriebssystem herunterladen und installieren. Dieses Tutorial setzt voraus, dass sowohl der Zabbix Server als auch der Agent auf derselben Maschine installiert sind; daher wird 127.0.0.1 in der Konfiguration verwendet.

Zabbix Agent 2 konfigurieren

1. Öffnen Sie die Zabbix-Agent-Konfigurationsdatei (Standardpfad: /etc/zabbix/zabbix_agent2.conf):

sudo vi /etc/zabbix/zabbix_agent2.conf

2. Setzen Sie den Parameter Server auf 127.0.0.1, da Agent und Server auf derselben Maschine ausgeführt werden:

Server=127.0.0.1

3. Speichern Sie die Datei und starten Sie den Dienst Zabbix agent 2 neu:

sudo systemctl restart zabbix-agent2

4. Testen Sie nach der Einrichtung und Konfiguration von Zabbix agent 2 seine Verfügbarkeit mit:

zabbix_get -s 127.0.0.1 -k web.certificate.get[<website_DNS_name>]

Zabbix agent 2 enthält standardmäßig das Plugin WebCertificate, daher ist keine separate Installation oder Konfiguration erforderlich.

Zabbix Frontend konfigurieren

1. Melden Sie sich im Zabbix Frontend an.

2. Navigieren Sie zu Monitoring > Hosts.

3. Klicken Sie auf einen vorhandenen Host, den Sie zur Überwachung von Website-Zertifikaten verwenden möchten, oder erstellen Sie einen Host, falls erforderlich:

  • Geben Sie im Feld Host name einen Hostnamen ein (z. B. "Certificate Monitoring").
  • Geben Sie im Feld Templates die Vorlage "Website certificate by Zabbix agent 2" ein oder wählen Sie sie aus, die mit dem Host verknüpft werden soll.
  • Geben Sie im Feld Host groups eine Hostgruppe ein oder wählen Sie sie aus (z. B. "SSL/TLS Monitoring").
  • Fügen Sie im Feld Interfaces eine Schnittstelle vom Typ "Agent" hinzu und geben Sie eine IP-Adresse an. Für dieses Beispiel wird "127.0.0.1" verwendet.

  • Wechseln Sie auf der Registerkarte Macros zu Inherited and host macros, suchen Sie nach den folgenden Makros und klicken Sie neben dem Makrowert auf Change, um ihn zu aktualisieren:
    • {$CERT.WEBSITE.HOSTNAME} - geben Sie den gewünschten DNS-Namen der Website als Wert ein.

4. Klicken Sie auf Add, um den Host hinzuzufügen.

Um mehrere Websites zu überwachen, können Sie im Makro {$CERT.WEBSITE.HOSTNAME} eine durch Kommas getrennte Liste ihrer Hostnamen angeben. Optional können Sie auch im Makro {$CERT.WEBSITE.PORT} eine durch Kommas getrennte Liste von Ports angeben, wobei jeder Port dem jeweiligen Hostnamen in derselben Reihenfolge entspricht. Um beispielsweise example.com und example.org auf Port 8443 zu überwachen:

  • {$CERT.WEBSITE.HOSTNAME}: example.com,example.org
  • {$CERT.WEBSITE.PORT}: 443,8443

Für jede im Makro {$CERT.WEBSITE.HOSTNAME} angegebene Website erstellt Zabbix einen entsprechenden Satz von Datenpunkten und Auslösern. Dadurch ist eine individuelle Überwachung und Alarmierung für jedes SSL-Zertifikat einer Website möglich.

Erfasste Metriken anzeigen

Glückwunsch! Zu diesem Zeitpunkt überwacht Zabbix bereits das gewünschte Web-Zertifikat.

Um die erfassten Metriken anzuzeigen, navigieren Sie zum Menübereich Monitoring > Hosts und klicken Sie neben dem Host auf Latest data, um alle zuletzt erfassten Metriken in einer Liste anzuzeigen, z. B. Ablaufdatum, Aussteller und Betreff.

Problembenachrichtigungen einrichten

Zabbix kann Sie über Probleme in der Infrastruktur benachrichtigen. Diese Anleitung enthält grundlegende Konfigurationsschritte zum Senden von E-Mail-Benachrichtigungen.

1. Navigieren Sie zu Benutzereinstellungen > Profil, wechseln Sie zur Registerkarte Medien und fügen Sie Ihre E-Mail-Adresse hinzu.

2. Folgen Sie der Anleitung für Empfangen einer Problembenachrichtigung.

Wenn Zabbix das nächste Mal ein Problem erkennt, sollten Sie eine Benachrichtigung per E-Mail erhalten.

Testen Sie Ihre Konfiguration

Um Ihre Konfiguration zu testen, können wir ein echtes Problem simulieren, indem wir die Host-Konfiguration im Zabbix Frontend aktualisieren.

1. Öffnen Sie die Host-Konfiguration Ihres "Certificate Monitoring"-Hosts in Zabbix.

2. Wechseln Sie zur Registerkarte Macros und wählen Sie Inherited and host macros aus.

3. Klicken Sie neben dem zuvor konfigurierten Wert des Makros {$CERT.EXPIRY.WARN} auf Change und setzen Sie eine sehr hohe Anzahl von Tagen (mehr als 365 Tage sollte ausreichen), um eine Warnung zu erhalten, bevor das Zertifikat abläuft.

4. Klicken Sie auf Update, um die Host-Konfiguration zu aktualisieren.

5. Nach einigen Augenblicken erkennt Zabbix das Problem "SSL certificate expires soon" mit der Anzahl der Tage bis zum Ablauf. Das Problem wird unter Monitoring > Problems angezeigt.

Wenn Benachrichtigungen konfiguriert sind, erhalten Sie außerdem die Problembenachrichtigung.

6. Setzen Sie den Makrowert wieder auf den vorherigen Wert zurück, um das Problem zu beheben und die Überwachung der Zertifikatswerte fortzusetzen.

Siehe auch