README.md aktualisiert

This commit is contained in:
2025-08-03 16:48:14 +02:00
parent 143de73e14
commit cc188037f1
+39
View File
@@ -1,2 +1,41 @@
# Univention_Cert_check # Univention_Cert_check
# UCS Zertifikatsüberwachung für Checkmk
Dieses Python-Skript überwacht SSL/TLS-Zertifikate, die in Univention Corporate Server (UCS) über die Let's Encrypt App verwaltet werden. Es prüft die Ablaufdaten der Zertifikate von Apache, Dovecot und Postfix und gibt Statusmeldungen im Checkmk Local Check Format aus.
---
## 1. Funktion des Skripts
Das Skript liest die Pfade der Zertifikate für Apache, Dovecot und Postfix aus den Univention Configuration Registry (UCR) Variablen aus, prüft die Ablaufdaten der Zertifikate mit `openssl` und gibt für jedes Zertifikat einen Status zurück:
- **OK (0)**: Zertifikat ist länger als 30 Tage gültig
- **WARNING (1)**: Zertifikat läuft in 3115 Tagen ab
- **CRITICAL (2)**: Zertifikat läuft in 15 oder weniger Tagen ab oder ist abgelaufen
- **UNKNOWN (3)**: Kein Zertifikatspfad gefunden oder Fehler
### Details zu den Funktionen
- `get_expiry(cert_path)`
Liest mit `openssl` das Ablaufdatum eines Zertifikats aus und gibt ein `datetime`-Objekt zurück.
- `check_cert(name, path, warn_days=30, crit_days=15)`
Bewertet das Ablaufdatum und gibt eine Checkmk-konforme Statusmeldung mit Statuscode zurück.
- `main()`
Holt die Zertifikatspfad-Konfigurationen aus UCR, ruft `check_cert` für jeden Pfad auf, gibt Statusmeldungen aus und beendet das Skript mit dem höchsten Statuscode.
---
## 2. Beispiel-Test
Du kannst das Skript auf dem UCS-System direkt ausführen:
```bash
/usr/lib/check_mk_agent/local/cert_check.py
0 UCS_CERT_Apache - OK - Gültig für 45 Tage (bis 2025-09-17 12:00:00)
1 UCS_CERT_Dovecot - WARNING - Läuft in 10 Tagen ab (2025-08-13 12:00:00)
2 UCS_CERT_Dostfix - CRITICAL - Läuft in 5 Tagen ab (2025-08-08 12:00:00)