Configuración de CyberArk
Esta sección explica cómo configurar Zabbix para recuperar secretos de CyberArk Vault CV12.
El vault debe instalarse y configurarse como se describe en la documentación oficial de CyberArk.
Para obtener información sobre la configuración de TLS en Zabbix, consulte Almacenamiento de secretos.
Credenciales de base de datos
El acceso a un secreto con credenciales de base de datos se configura por separado para cada componente de Zabbix.
Server y proxies
Para obtener las credenciales de base de datos desde el vault para Zabbix server o proxy, especifique los siguientes parámetros de configuración en el archivo de configuración:
Vault- qué proveedor de vault debe utilizarse;VaultURL- URL HTTP[S] del servidor del vault;VaultDBPath- consulta al secreto del vault que contiene las credenciales de base de datos, las cuales se recuperarán mediante las claves "Content" y "UserName" (esta opción solo puede utilizarse si no se especifican DBUser y DBPassword);VaultTLSCertFile,VaultTLSKeyFile- nombres de archivo del certificado SSL y de la clave; configurar estas opciones no es obligatorio, pero sí muy recomendable;VaultPrefix- prefijo personalizado para la ruta o consulta del vault, según el vault; si no se especifica, se utilizará el valor predeterminado más adecuado.
Los parámetros de configuración Vault, VaultURL, VaultTLSCertFile, VaultTLSKeyFile y VaultPrefix también se utilizan para la autenticación en el vault al procesar macros de secretos del vault por parte de Zabbix server (y Zabbix proxy, si está configurado). Zabbix server y los proxies no abrirán macros de secretos del vault que contengan credenciales de base de datos desde VaultDBPath.
Zabbix server y Zabbix proxy leen los parámetros de configuración relacionados con el vault desde los archivos zabbix_server.conf y zabbix_proxy.conf al iniciarse.
Ejemplo
- En
zabbix_server.conf, especifique los siguientes parámetros:
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 enviará la siguiente solicitud 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 respuesta del vault contendrá las claves "Content" y "UserName":
{
"Content": <password>,
"UserName": <username>,
"Address": <address>,
"Database": <Database>,
"PasswordChangeInProcess":<PasswordChangeInProcess>
}
- Como resultado, Zabbix utilizará las siguientes credenciales para la autenticación de la base de datos:
- Nombre de usuario: <username>
- Contraseña: <password>
Frontend
Para obtener credenciales de base de datos desde el vault para el frontend de Zabbix, especifique los siguientes parámetros durante la instalación del frontend.
- En el paso Configure DB Connection, establezca el parámetro Store credentials in en "CyberArk Vault".

- A continuación, complete los parámetros adicionales:
| Parameter | Mandatory | Default value | Description |
|---|---|---|---|
| Vault API endpoint | yes | https://localhost:1858 | Especifique la URL para conectarse al vault en el formato scheme://host:port |
| Vault prefix | no | /AIMWebService/api/Accounts? | Proporcione un prefijo personalizado para la ruta o consulta del vault. Si no se especifica, se usa el valor predeterminado. |
| Vault secret query string | yes | Una consulta que especifica de dónde deben recuperarse las credenciales de base de datos. Ejemplo: AppID=foo&Query=Safe=bar;Object=buzz |
|
| Vault certificates | no | Después de marcar la casilla, aparecerán parámetros adicionales que permiten configurar la autenticación del cliente. Aunque este parámetro es opcional, se recomienda encarecidamente habilitarlo para la comunicación con CyberArk Vault. | |
| SSL certificate file | no | conf/certs/cyberark-cert.pem | Ruta al archivo de certificado SSL. El archivo debe estar en formato PEM. Si el archivo de certificado también contiene la clave privada, deje vacío el parámetro SSL key file. |
| SSL key file | no | conf/certs/cyberark-key.pem | Nombre del archivo de clave privada SSL utilizado para la autenticación del cliente. El archivo debe estar en formato PEM. |
Valores de macros de usuario
Para usar CyberArk Vault para almacenar valores de macros de usuario de Vault secret, asegúrese de que:
- Zabbix server esté configurado para funcionar con CyberArk Vault;
- el parámetro Vault provider en Administration > General > Other esté establecido en "CyberArk Vault".

Zabbix server (y Zabbix proxy, si está configurado) requieren acceso a los valores de macros Vault secret desde el vault. Zabbix frontend no necesita dicho acceso.
El valor de la macro debe contener una consulta (como query:key).
Consulte Vault secret macros para obtener información detallada sobre el procesamiento de los valores de macro por parte de Zabbix.
Sintaxis de la consulta
El símbolo de dos puntos (":") está reservado para separar la consulta de la clave.
Si una consulta contiene una barra inclinada o dos puntos, estos símbolos deben codificarse en URL ("/" se codifica como "%2F", ":" se codifica como "%3A").
Ejemplo
- En Zabbix, agregue una macro de usuario {$PASSWORD} de tipo Vault secret y con el valor
AppID=zabbix_server&Query=Safe=passwordSafe;Object=zabbix:Content

- Zabbix enviará la siguiente solicitud 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 respuesta del vault contendrá la clave "Content":
{
"Content": <password>,
"UserName": <username>,
"Address": <address>,
"Database" :<Database>,
"PasswordChangeInProcess":<PasswordChangeInProcess>
}
- Como resultado, Zabbix resolverá la macro {$PASSWORD} al valor - <password>
Actualizar la configuración existente
Para actualizar una configuración existente para recuperar secretos desde un CyberArk Vault:
-
Actualice los parámetros del archivo de configuración del server o proxy de Zabbix, como se describe en la sección Credenciales de la base de datos.
-
Actualice la configuración de conexión a la base de datos reconfigurando el frontend de Zabbix y especificando los parámetros requeridos, como se describe en la sección Frontend. Para reconfigurar el frontend de Zabbix, abra la URL de configuración del frontend en el navegador:
- para Apache: http://<server_ip_or_name>/zabbix/setup.php
- para Nginx: http://<server_ip_or_name>/setup.php
Como alternativa, estos parámetros se pueden establecer en el archivo de configuración del frontend (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';
$DB['VAULT_PREFIX'] = '';
- Configure las macros de usuario como se describe en la sección Valores de macros de usuario, si es necesario.
Para actualizar una configuración existente para recuperar secretos desde un HashiCorp Vault, consulte Configuración de HashiCorp.