Speicherung von Geheimnissen
Übersicht
Zabbix kann so konfiguriert werden, dass sensible Informationen aus einem sicheren Vault abgerufen werden. Die folgenden Secret-Management-Dienste werden unterstützt: HashiCorp Vault KV Secrets Engine - Version 2, CyberArk Vault CV12.
Secrets können zum Abrufen folgender Informationen verwendet werden:
- Benutzer-Makro-Werte
- Datenbankzugangsdaten
Zabbix bietet schreibgeschützten Zugriff auf die Secrets in einem Vault, wobei davon ausgegangen wird, dass die Secrets von einer anderen Person verwaltet werden.
Für Informationen zur Konfiguration eines bestimmten Vault-Anbieters siehe:
Caching von geheimen Werten
Standardmäßig werden die Werte von Vault-Geheimnismakros bei jeder Aktualisierung der Konfigurationsdaten vom Zabbix Server abgerufen und anschließend im Konfigurations-Cache gespeichert. Der Zabbix Proxy empfängt die Werte von Vault-Geheimnismakros bei jeder Konfigurationssynchronisierung vom Zabbix Server und speichert sie in seinem eigenen Konfigurations-Cache.
Die Verschlüsselung zwischen Zabbix Server und Proxy muss aktiviert sein, andernfalls wird eine Warnmeldung auf dem Server protokolliert.
Es ist auch möglich, zu konfigurieren, dass die Makrowerte unabhängig voneinander vom Zabbix Server und Zabbix Proxy abgerufen werden.
Um die Aktualisierung zwischengespeicherter geheimer Werte aus einem Vault manuell auszulösen, verwenden Sie die Befehlszeilen-Option secrets_reload.
Für die Anmeldedaten der Zabbix-Frontend-Datenbank ist das Caching standardmäßig deaktiviert, kann jedoch aktiviert werden, indem die Option $DB['VAULT_CACHE'] = true in der Frontend-Konfigurationsdatei gesetzt wird.
Die Anmeldedaten werden in einem lokalen Cache im temporären Dateiverzeichnis des Dateisystems gespeichert.
Der Webserver muss das Schreiben in einen privaten temporären Ordner erlauben (bei Apache muss beispielsweise die Konfigurationsoption PrivateTmp=True gesetzt sein).
Um festzulegen, wie oft der Daten-Cache aktualisiert bzw. ungültig gemacht wird, verwenden Sie die Konstante ZBX_DATA_CACHE_TTL.
TLS-Konfiguration
Um TLS für die Kommunikation zwischen Zabbix-Komponenten und dem Vault zu konfigurieren, fügen Sie ein von einer Zertifizierungsstelle (CA) signiertes Zertifikat zum systemweiten standardmäßigen CA-Speicher hinzu.
Wenn Sie einen anderen Speicherort verwenden möchten, geben Sie das Verzeichnis im Zabbix-Konfigurationsparameter SSLCALocation Server/Proxy an,
legen Sie die Zertifikatdatei in diesem Verzeichnis ab und führen Sie dann den CLI-Befehl aus:
c_rehash .