Configurazione di CyberArk
Questa sezione spiega come configurare Zabbix per recuperare i segreti da CyberArk Vault CV12.
Il vault deve essere installato e configurato come descritto nella documentazione ufficiale di CyberArk.
Per informazioni sulla configurazione di TLS in Zabbix, vedere Archiviazione dei segreti.
Credenziali del database
L'accesso a un secret contenente le credenziali del database viene configurato separatamente per ogni componente Zabbix.
Server e proxy
Per ottenere le credenziali del database dal vault per server o proxy Zabbix, specificare i seguenti parametri di configurazione nel file di configurazione:
Vault- quale provider del vault utilizzare;VaultURL- URL HTTP(S) del server del vault;VaultDBPath- query al secret del vault contenente le credenziali del database, che verranno recuperate tramite le chiavi "Content" e "UserName" (questa opzione può essere utilizzata solo se DBUser e DBPassword non sono specificati);VaultTLSCertFile,VaultTLSKeyFile- nomi dei file del certificato SSL e della chiave; la configurazione di queste opzioni non è obbligatoria, ma è fortemente consigliata;VaultPrefix- prefisso personalizzato per il percorso o la query del vault, a seconda del vault; se non specificato, verrà utilizzato il valore predefinito più appropriato.
I parametri di configurazione Vault, VaultURL, VaultTLSCertFile, VaultTLSKeyFile e VaultPrefix vengono utilizzati anche per l'autenticazione al vault durante l'elaborazione delle macro secret del vault da parte del server Zabbix (e del proxy Zabbix, se configurato). Il server Zabbix e i proxy Zabbix non apriranno le macro secret del vault che contengono le credenziali DB provenienti da VaultDBPath.
Il server Zabbix e il proxy Zabbix leggono i parametri di configurazione relativi al vault dai file zabbix_server.conf e zabbix_proxy.conf all'avvio.
Esempio
- In
zabbix_server.conf, specificare i seguenti parametri:
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
VaultPrefix=/AIMWebService/api/Accounts?
- Zabbix invierà la seguente richiesta API al vault:
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
- La risposta del vault conterrà le chiavi "Content" e "UserName":
{
"Content": <password>,
"UserName": <username>,
"Address": <address>,
"Database": <Database>,
"PasswordChangeInProcess":<PasswordChangeInProcess>
}
- Di conseguenza, Zabbix utilizzerà le seguenti credenziali per l'autenticazione al database:
- Username: <username>
- Password: <password>
frontend
Per ottenere le credenziali del database dal vault per il frontend di Zabbix, specificare i seguenti parametri durante l'installazione del frontend.
- Nel passaggio Configure DB Connection, impostare il parametro Store credentials in su CyberArk Vault.

- Compilare quindi i parametri aggiuntivi:
| Parametro | Obbligatorio | Valore predefinito | Descrizione |
|---|---|---|---|
| Vault API endpoint | sì | https://localhost:1858 | Specificare l'URL per la connessione al vault nel formato scheme://host:port |
| Vault prefix | no | /AIMWebService/api/Accounts? | Fornire un prefisso personalizzato per il percorso o la query del vault. Se non specificato, viene utilizzato il valore predefinito. |
| Vault secret query string | sì | Una query che specifica da dove devono essere recuperate le credenziali del database. Esempio: AppID=foo&Query=Safe=bar;Object=buzz |
|
| Vault certificates | no | Dopo aver selezionato la casella di controllo, verranno visualizzati ulteriori parametri che consentono di configurare l'autenticazione del client. Sebbene questo parametro sia facoltativo, è fortemente consigliato abilitarlo per la comunicazione con CyberArk Vault. | |
| SSL certificate file | no | conf/certs/cyberark-cert.pem | Percorso del file del certificato SSL. Il file deve essere in formato PEM. Se il file del certificato contiene anche la chiave privata, lasciare vuoto il parametro SSL key file. |
| SSL key file | no | conf/certs/cyberark-key.pem | Nome del file della chiave privata SSL utilizzato per l'autenticazione del client. Il file deve essere in formato PEM. |
Valori delle macro utente
Per usare CyberArk Vault per memorizzare i valori delle macro utente Vault secret, assicurati che:
- Zabbix server sia configurato per funzionare con CyberArk Vault;
- il parametro Vault provider in Administration > General > Other sia impostato su "CyberArk Vault".

Zabbix server (e Zabbix proxy, se configurato) richiedono l'accesso ai valori delle macro Vault secret dal vault. Zabbix frontend non necessita di tale accesso.
Il valore della macro dovrebbe contenere una query (come query:key).
Vedi Vault secret macros per informazioni dettagliate sull'elaborazione dei valori delle macro da parte di Zabbix.
Sintassi delle query
Il simbolo dei due punti (:) è riservato alla separazione della query dalla chiave.
Se una query contiene una barra o i due punti, questi simboli devono essere codificati nell'URL (/ viene codificato come %2F, : viene codificato come %3A).
Esempio
- In Zabbix, aggiungere una macro utente {$PASSWORD} di tipo Vault secret e con il valore
AppID=zabbix_server&Query=Safe=passwordSafe;Object=zabbix:Content

- Zabbix invierà la seguente richiesta API al vault:
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
- La risposta del vault conterrà la chiave
Content:
{
"Content": <password>,
"UserName": <username>,
"Address": <address>,
"Database" :<Database>,
"PasswordChangeInProcess":<PasswordChangeInProcess>
}
- Di conseguenza, Zabbix risolverà la macro
{$PASSWORD}nel valore -<password>
Aggiornare la configurazione esistente
Per aggiornare una configurazione esistente per il recupero dei segreti da un CyberArk Vault:
-
Aggiornare i parametri del file di configurazione del server Zabbix o del proxy come descritto nella sezione Credenziali del database.
-
Aggiornare i parametri del file di configurazione del frontend di Zabbix:
$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';
$DB['VAULT_PREFIX'] = '';
- Configurare le macro utente come descritto nella sezione Valori delle macro utente, se necessario.
Per aggiornare una configurazione esistente per il recupero dei segreti da un HashiCorp Vault, vedere Configurazione di HashiCorp.