In deze sectie wordt uitgelegd hoe je Zabbix kunt configureren om geheimen op te halen uit CyberArk Vault CV12.
De kluis moet zijn geïnstalleerd en geconfigureerd zoals beschreven in de officiële CyberArk-documentatie.
Om meer te weten te komen over het configureren van TLS in Zabbix, zie Opslag van geheimen.
Toegang tot een geheim met database referenties wordt afzonderlijk geconfigureerd voor elke Zabbix component.
Om database referenties uit de kluis te verkrijgen voor Zabbix server of proxy, specificeer je de volgende configuratieparameters in het configuratiebestand:
Vault
- welke kluisaanbieder moet worden gebruikt;VaultURL
- HTTP[S] URL van de kluis server;VaultDBPath
- query naar het kluisgeheim met database referenties die zullen worden opgehaald via sleutels "Content" en "UserName";VaultTLSCertFile
, VaultTLSKeyFile
- Bestandsnamen van SSL-certificaat en -sleutel; het instellen van deze opties is niet verplicht, maar sterk aanbevolen.Zabbix server gebruikt ook de Vault
, VaultURL
, VaultTLSCertFile
en VaultTLSKeyFile
configuratieparameters voor kluisauthenticatie bij het verwerken van kluisgeheimmacro's.
Zabbix server en Zabbix proxy lezen de kluisgerelateerde configuratieparameters uit de bestanden zabbix_server.conf en zabbix_proxy.conf bij het opstarten.
Vault=CyberArk
VaultURL=https://127.0.0.1:1858
VaultDBPath=AppID=zabbix_server&Query=Safe=passwordSafe;Object=zabbix_server_database
VaultTLSCertFile=cert.pem
VaultTLSKeyFile=key.pem
curl \
--header "Content type: application/json" \
--cert cert.pem \
--key key.pem \
https://127.0.0.1:1858/AIMWebService/api/Accounts?AppID=zabbix_server&Query=Safe=passwordSafe;Object=zabbix_server_database
{
"Content": <password>,
"UserName": <username>,
"Address": <address>,
"Database": <Database>,
"PasswordChangeInProcess":<PasswordChangeInProcess>
}
Om database referenties uit de kluis te halen voor de Zabbix frontend, specificeert u de volgende parameters tijdens de frontend installatie.
Parameter | Verplicht | Standaardwaarde | Beschrijving |
---|---|---|---|
Vault API-eindpunt | ja | https://localhost:1858 | Specificeer de URL om verbinding te maken met de kluis in het formaat scheme://host:port |
Vault query string voor geheim | ja | Een query die aangeeft waar database referenties moeten worden opgehaald. Voorbeeld: AppID=foo&Query=Safe=bar;Object=buzz |
|
Vault-certificaten | nee | Na het aanvinken van het selectievakje, verschijnen er aanvullende parameters waarmee u client-authenticatie kunt configureren. Hoewel deze parameter optioneel is, wordt het sterk aanbevolen om deze in te schakelen voor communicatie met de CyberArk Vault. | |
SSL-certificaatbestand | nee | conf/certs/cyberark-cert.pem | Pad naar het SSL-certificaatbestand. Het bestand moet in PEM-indeling zijn. Als het certificaatbestand ook de privésleutel bevat, laat dan het SSL-sleutelbestand leeg. |
SSL-sleutelbestand | nee | conf/certs/cyberark-key.pem | Naam van het bestand met de SSL-privésleutel die wordt gebruikt voor client-authenticatie. Het bestand moet in PEM-indeling zijn. |
Om de CyberArk Vault te gebruiken voor het opslaan van waarden voor gebruikersmacro's van het type Vault secret, zorg ervoor dat:
Alleen de Zabbix-server heeft toegang nodig tot de macrowaarden van het Vault secret uit de kluis. Andere Zabbix-componenten (proxy, frontend) hebben geen dergelijke toegang nodig.
De macrowaarde moet een query bevatten (in de vorm van query:key
).
Zie Vault secret macros voor gedetailleerde informatie over de verwerking van macrowaarden door Zabbix.
Het dubbele punt-symbool (":") is gereserveerd om de query van de sleutel te scheiden.
Als een query zelf een schuine streep (/) of een dubbele punt bevat, moeten deze symbolen URL-gecodeerd worden ("%2F" voor "/", "%3A" voor ":").
AppID=zabbix_server&Query=Safe=passwordSafe;Object=zabbix:Content
curl \
--header "Content type: application/json" \
--cert cert.pem \
--key key.pem \
https://127.0.0.1:1858/AIMWebService/api/Accounts?AppID=zabbix_server&Query=Safe=passwordSafe;Object=zabbix_server_database
{
"Content": <wachtwoord>,
"UserName": <gebruikersnaam>,
"Address": <adres>,
"Database" :<Database>,
"PasswordChangeInProcess":<PasswordChangeInProcess>
}
Om een bestaande configuratie bij te werken voor het ophalen van geheimen uit een CyberArk Vault:
Werk de configuratieparameters in het Zabbix-server- of proxy-configuratiebestand bij zoals beschreven in de sectie Databasecredentials.
Werk de DB-verbinding instellingen bij door Zabbix-frontend opnieuw te configureren en de vereiste parameters op te geven zoals beschreven in de sectie Frontend. Om Zabbix-frontend opnieuw te configureren, open de frontend-instellings-URL in de browser:
Als alternatief kunnen deze parameters worden ingesteld in het frontend configuratiebestand (zabbix.conf.php):
$DB['VAULT'] = 'CyberArk';
$DB['VAULT_URL'] = 'https://127.0.0.1:1858';
$DB['VAULT_DB_PATH'] = 'AppID=foo&Query=Safe=bar;Object=buzz';
$DB['VAULT_TOKEN'] = '';
$DB['VAULT_CERT_FILE'] = 'conf/certs/cyberark-cert.pem';
$DB['VAULT_KEY_FILE'] = 'conf/certs/cyberark-key.pem';
Om een bestaande configuratie bij te werken voor het ophalen van geheimen uit een HashiCorp Vault, zie HashiCorp configuratie.