Parametri di configurazione: frontend Zabbix
Panoramica
I parametri di configurazione consentono di personalizzare il comportamento del frontend Zabbix.
Specificare i valori dei parametri nel file di configurazione del frontend (zabbix.conf.php).
Questa pagina è strutturata come segue:
- Panoramica dei parametri (per visualizzare tutti i dettagli di un parametro, fare clic sul suo nome)
- Dettagli dei parametri
| Parametro | Descrizione |
|---|---|
| $DB['TYPE'] | Tipo di database. |
| $DB['SERVER'] | Nome host o indirizzo IP del database. |
| $DB['PORT'] | Porta del database. |
| $DB['DATABASE'] | Nome del database utilizzato dal frontend Zabbix per connettersi al database configurato. |
| $DB['USER'] | Nome utente utilizzato dal frontend Zabbix per connettersi al database. |
| $DB['PASSWORD'] | Password utilizzata dal frontend Zabbix per connettersi al database. |
| $DB['SCHEMA'] | Nome dello schema del database utilizzato per PostgreSQL. |
| $DB['ENCRYPTION'] | Abilita o disabilita la crittografia TLS per le connessioni tra il frontend Zabbix e il database. |
| $DB['KEY_FILE'] | Percorso del file della chiave privata client utilizzato per la connessione TLS al database. |
| $DB['CERT_FILE'] | Percorso del file del certificato client utilizzato per la connessione TLS al database. |
| $DB['CA_FILE'] | Percorso del file del certificato CA utilizzato per la connessione TLS al database. |
| $DB['VERIFY_HOST'] | Abilita o disabilita la verifica del nome host del server del database nel certificato TLS. |
| $DB['CIPHER_LIST'] | Elenco dei cifrari TLS consentiti per la connessione al database. |
| $DB['VAULT'] | Specifica il gestore dei segreti Vault utilizzato per archiviare le credenziali del database. |
| $DB['VAULT_URL'] | URL del gestore dei segreti Vault utilizzato per recuperare le credenziali del database. |
| $DB['VAULT_PREFIX'] | Prefisso per il percorso o la query di Vault utilizzato per recuperare le credenziali del database. |
| $DB['VAULT_DB_PATH'] | Percorso delle credenziali del database nel gestore dei segreti Vault. |
| $DB['VAULT_TOKEN'] | Token di autenticazione utilizzato per accedere al gestore dei segreti Vault. |
| $DB['VAULT_APP_ROLE_ID'] | ID del ruolo AppRole utilizzato per autenticarsi a HashiCorp Vault. |
| $DB['VAULT_APP_SECRET_ID'] | ID segreto AppRole utilizzato per autenticarsi a HashiCorp Vault. |
| $DB['VAULT_CERT_FILE'] | Percorso del file del certificato client utilizzato per autenticarsi al gestore dei segreti Vault. |
| $DB['VAULT_KEY_FILE'] | Percorso del file della chiave privata client utilizzato per autenticarsi al gestore dei segreti Vault. |
| $DB['VAULT_CACHE'] | Abilita o disabilita la memorizzazione nella cache delle credenziali recuperate dal gestore dei segreti Vault. |
| $ZBX_SERVER | Specifica un valore per sostituire il nome host/l'indirizzo IP di Zabbix. |
| $ZBX_SERVER_PORT | Specifica un valore per sostituire la porta del server Zabbix. |
| $ZBX_SERVER_NAME | Nome del server Zabbix. |
| $IMAGE_FORMAT_DEFAULT | Formato immagine predefinito. |
| $HISTORY_PROVIDERS[] | Configurazione dei provider di archiviazione della cronologia per Elasticsearch o ClickHouse. |
| $SSO['SETTINGS'] | Impostazioni di configurazione per l'accesso SAML. |
| $SSO['CERT_STORAGE'] | Specifica dove sono archiviati i certificati SAML. |
| $SSO['SP_KEY'] | Percorso del file della chiave privata del provider di servizi (SP) SAML quando la chiave privata è archiviata nel file system. |
| $SSO['SP_CERT'] | Percorso del file del certificato del provider di servizi (SP) SAML quando il certificato è archiviato nel file system. |
| $SSO['IDP_CERT'] | Percorso del file del certificato del provider di identità SAML quando il certificato è archiviato nel file system. |
| $ZBX_FEATURE_FLAGS['banners_enabled'] | Abilita o disabilita il supporto per i banner. |
| $ZBX_FEATURE_FLAGS['http_auth_enabled'] | Abilita o disabilita l'autenticazione HTTP degli utenti. |
| $ZBX_FEATURE_FLAGS['modules_config_enabled'] | Abilita o disabilita l'accesso ai moduli. |
| $ZBX_FEATURE_FLAGS['media_type_denylist'] | Disabilita la modifica di specifici tipi di supporto preconfigurati. |
| $ZBX_SERVER_TLS['ACTIVE'] | Specifica se TLS è abilitato per le connessioni al server Zabbix. |
| $ZBX_SERVER_TLS['CA_FILE'] | Percorso del file del certificato dell'autorità di certificazione (CA) utilizzato per verificare il certificato del server. |
| $ZBX_SERVER_TLS['KEY_FILE'] | Percorso del file della chiave privata client corrispondente al certificato client. |
| $ZBX_SERVER_TLS['CERT_FILE'] | Percorso del file del certificato client quando è richiesta l'autenticazione TLS reciproca. |
| $ZBX_SERVER_TLS['CERTIFICATE_ISSUER'] | Nome distinto (DN) dell'emittente da confrontare con il certificato del server. |
| $ZBX_SERVER_TLS['CERTIFICATE_SUBJECT'] | Nome distinto (DN) del soggetto da confrontare con il certificato del server. |
Dettagli dei parametri
$DB['TYPE']
Tipo di database.
Valori: MYSQL - MySQL, POSTGRESQL - PostgreSQL.
$DB['SERVER']
Nome host o indirizzo IP del database.
Se $DB['SERVER'] non è definito, viene utilizzato il socket Unix predefinito.
Per MySQL, impostando $DB['SERVER'] su localhost si ottiene una connessione tramite il socket Unix predefinito.
Per PostgreSQL, $DB['SERVER'] può contenere più voci host:port separate da virgole.
Se per un host nell'elenco separato da virgole non è definita una porta, viene utilizzato come porta predefinita il valore definito in $DB['PORT'].
Se in $DB['SERVER'] viene specificato un percorso del socket (ad esempio, /var/run/pgbouncer), viene utilizzato tale socket Unix.
Esempi:
$DB['SERVER'] = 'localhost';
$DB['SERVER'] = 127.0.0.1;
$DB['PORT']
Porta del database.
Se non definito, viene utilizzato il valore 0.
$DB['DATABASE']
Nome del database utilizzato dal frontend di Zabbix per connettersi al database configurato.
Esempio:
$DB['DATABASE'] = 'zabbix';
$DB['USER']
Nome utente utilizzato dal frontend Zabbix per connettersi al database.
$DB['PASSWORD']
Password utilizzata dal frontend Zabbix per connettersi al database.
$DB['SCHEMA']
Nome dello schema del database utilizzato per PostgreSQL.
$DB['ENCRYPTION']
Abilita o disabilita la crittografia per le connessioni tra il frontend Zabbix e il database.
Valori: true - abilitata, false - disabilitata.
$DB['KEY_FILE']
Percorso al file della chiave privata del client utilizzato per la connessione TLS al database.
Esempio:
// Per MySQL:
$DB['KEY_FILE'] = '/etc/ssl/mysql/client-key.pem';
$DB['CERT_FILE']
Percorso al file del certificato client utilizzato per la connessione TLS al database.
Esempio:
// Per MySQL:
$DB['CERT_FILE'] = '/etc/ssl/mysql/client-cert.pem';
$DB['CA_FILE']
Percorso al file del certificato CA utilizzato per la connessione TLS al database.
Esempi:
// Per MySQL:
$DB['CA_FILE'] = '/etc/ssl/mysql/ca.pem';
// Per PostgreSQL:
$DB['CA_FILE'] = '/etc/ssl/pgsql/root.crt';
$DB['VERIFY_HOST']
Abilita o disabilita la verifica del nome host del server del database nel certificato TLS.
Valori: true - abilitata, false - disabilitata.
$DB['CIPHER_LIST']
Elenco dei cifrari TLS consentiti per la connessione al database.
Esempi:
// Per MySQL:
$DB['CIPHER_LIST'] = 'TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:TLS_AES_128_CCM_SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-GC';
$DB['VAULT']
Specificare il gestore dei segreti Vault utilizzato per archiviare le credenziali del database.
Valori: CyberArk o HashiCorp.
Esempi:
// Per CyberArk:
$DB['VAULT'] = 'CyberArk';
// Per HashiCorp:
$DB['VAULT'] = 'HashiCorp';
$DB['VAULT_URL']
URL del gestore dei segreti Vault utilizzato per recuperare le credenziali del database.
Esempi:
// Per CyberArk:
$DB['VAULT_URL'] = 'https://127.0.0.1:1858';
// Per HashiCorp:
$DB['VAULT_URL'] = 'https://localhost:8200';
$DB['VAULT_PREFIX']
Prefisso per il percorso o la query di Vault utilizzato per recuperare le credenziali del database.
Esempio:
// Per HashiCorp:
$DB['VAULT_PREFIX'] = '/v1/secret/data/zabbix/';
$DB['VAULT_DB_PATH']
Percorso delle credenziali del database nel gestore dei segreti Vault.
Esempi:
// Per CyberArk:
$DB['VAULT_DB_PATH'] = 'AppID=foo&Query=Safe=bar;Object=buzz';
// Per HashiCorp:
$DB['VAULT_DB_PATH'] = 'database';
$DB['VAULT_TOKEN']
Token di autenticazione utilizzato per accedere al gestore dei segreti Vault.
Esempio:
// Per HashiCorp:
$DB['VAULT_TOKEN'] = 'hvs.CAESIIG_PILmULFYOsEyWHxkZ2mF2a8VPKNLE8eHqd4autYGGh4KHGh2cy5aeTY0NFNSaUp3ZnpWbDF1RUNjUkNTZEg';
$DB['VAULT_APP_ROLE_ID']
ID del ruolo VaultAppSecretID utilizzato per l'autenticazione a HashiCorp Vault.
Esempio:
$DB['VAULT_APP_ROLE_ID'] = '6f1567f1-538d-7d70-e8e4-5d3e59471b2e';
$DB['VAULT_APP_SECRET_ID']
VaultAppSecretID utilizzato per l'autenticazione a HashiCorp Vault.
Esempio:
$DB['VAULT_APP_SECRET_ID'] = '89dac8b1-f7d6-96a7-2ecf-f94d2de3d6f1';
$DB['VAULT_CERT_FILE']
Percorso al file del certificato client utilizzato per l'autenticazione al gestore dei segreti Vault.
Esempio:
// Per CyberArk:
$DB['VAULT_CERT_FILE'] = 'conf/certs/cyberark-cert.pem';
$DB['VAULT_KEY_FILE']
Percorso del file della chiave privata del client utilizzato per l'autenticazione al gestore dei segreti Vault.
Esempio:
// Per CyberArk:
$DB['VAULT_KEY_FILE'] = 'conf/certs/cyberark-key.pem';
$DB['VAULT_CACHE']
Abilita o disabilita la memorizzazione nella cache delle credenziali recuperate dal gestore dei segreti Vault.
Valori: true - abilitata, false - disabilitata.
$ZBX_SERVER
Specificare un valore per sovrascrivere il nome host/l'indirizzo IP di Zabbix.
Se $ZBX_SERVER viene specificato senza $ZBX_SERVER_PORT, viene utilizzata la porta predefinita (10051).
$ZBX_SERVER_PORT
Specificare un valore per sovrascrivere la porta del server Zabbix.
Questo parametro viene utilizzato insieme a $ZBX_SERVER.
$ZBX_SERVER_NAME
Nome del server Zabbix.
$IMAGE_FORMAT_DEFAULT
Formato immagine predefinito.
Predefinito: IMAGE_FORMAT_PNG
Valori:
IMAGE_FORMAT_PNG- formato PNGIMAGE_FORMAT_JPEG- formato JPEGIMAGE_FORMAT_GIF- formato GIF
$HISTORY_PROVIDERS[]
Configurazione dei provider di archiviazione della cronologia per Elasticsearch o ClickHouse.
Parametri di configurazione supportati:
types- array dei tipi di dati da archiviare nello storage esterno;provider- tipo di provider della cronologia:elasticsearchoclickhouse;url- URL del provider della cronologia;db- nome del database (utilizzato per ClickHouse);username- utente del database (utilizzato per ClickHouse);password- password del database (utilizzata per ClickHouse).
Esempi:
// Per ClickHouse:
$HISTORY_PROVIDERS[] = [
'types' => ['uint', 'dbl', 'str', 'log', 'text', 'json'],
'provider' => 'clickhouse',
'url' => 'http://localhost:8123',
'db' => 'zabbix',
'username' => 'zabbix',
'password' => 'zabbix'
];
// Per Elasticsearch:
$HISTORY_PROVIDERS[] = [
'types' => ['uint', 'dbl', 'str', 'log', 'text', 'json'],
'provider' => 'elasticsearch',
'url' => 'http://localhost:9200'
];
$SSO['SETTINGS']
Impostazioni di configurazione per l'accesso SAML.
L'array $SSO['SETTINGS'] deve seguire la struttura prevista dalla libreria SAML PHP Toolkit (fornita con Zabbix).
In $SSO['SETTINGS'] è possibile specificare solo le seguenti opzioni:
strictbaseurlcompresscontactPersonorganizationsp(solo le opzioni specificate in questo elenco)attributeConsumingServicex509certNew
idp(solo le opzioni specificate in questo elenco)singleLogoutService(una sola opzione)responseUrl
certFingerprintcertFingerprintAlgorithmx509certMulti
security(solo le opzioni specificate in questo elenco)signMetadatawantNameIdrequestedAuthnContextrequestedAuthnContextComparisonwantXMLValidationrelaxDestinationValidationdestinationStrictlyMatchesrejectUnsolicitedResponsesWithInResponseTosignatureAlgorithmdigestAlgorithmlowercaseUrlencoding
Tutte le altre opzioni vengono recuperate dal database e non possono essere sovrascritte.
L'opzione debug verrà ignorata.
Se la UI di Zabbix si trova dietro un proxy o un bilanciatore del carico, è possibile utilizzare l'opzione personalizzata use_proxy_headers:
false(predefinito) - ignora le intestazioni HTTPX-Forwarded-*;true- utilizza le intestazioni HTTPX-Forwarded-*per creare l'URL di base.
Per una descrizione completa delle opzioni di configurazione disponibili, consultare la documentazione ufficiale della libreria.
Esempio:
$SSO['SETTINGS'] = [
'security' => [
'signatureAlgorithm' => 'http://www.w3.org/2001/04/xmldsig-more#rsa-sha384',
'digestAlgorithm' => 'http://www.w3.org/2001/04/xmldsig-more#sha384',
// ...
],
// ...
];
$SSO['CERT_STORAGE']
Specificare dove vengono archiviati i certificati SAML.
Predefinito: file
Valori:
database- la chiave privata e i certificati vengono archiviati nel database;file- la chiave privata e i certificati vengono archiviati nel filesystem.
Esempio:
$SSO['CERT_STORAGE'] = 'database';
$SSO['SP_KEY']
Percorso al file della chiave privata del service provider (SP) SAML quando la chiave privata è archiviata nel filesystem.
Esempio:
$SSO['SP_KEY'] = 'conf/certs/sp.key';
$SSO['SP_CERT']
Percorso al file del certificato del service provider (SP) SAML quando il certificato è archiviato nel filesystem.
Esempio:
$SSO['SP_CERT'] = 'conf/certs/sp.crt';
$SSO['IDP_CERT']
Percorso al file del certificato del provider di identità SAML quando il certificato è archiviato nel file system.
Esempio:
$SSO['IDP_CERT'] = 'conf/certs/idp.crt';
$ZBX_FEATURE_FLAGS['banners_enabled']
Abilita o disabilita il supporto per i banner.
Predefinito: true
Valori: true - abilitato, false - disabilitato.
$ZBX_FEATURE_FLAGS['http_auth_enabled']
Abilita o disabilita l'autenticazione HTTP degli utenti.
Predefinito: true
Valori: true - abilitata, false - disabilitata.
$ZBX_FEATURE_FLAGS['modules_config_enabled']
Abilita o disabilita l'accesso ai moduli.
Predefinito: true
Valori: true - abilitato, false - disabilitato.
$ZBX_FEATURE_FLAGS['media_type_denylist']
Disabilita la modifica di specifici tipi di supporto preconfigurati.
Valori: email, script, sms, webhook, push.
Esempio:
$ZBX_FEATURE_FLAGS['media_type_denylist'] = ['webhook','push'];
$ZBX_SERVER_TLS['ACTIVE']
Specifica se una connessione TLS tra il frontend Zabbix e il server Zabbix è abilitata.
Predefinito: false
Valori: true - abilitata, false - disabilitata.
$ZBX_SERVER_TLS['CA_FILE']
Percorso al file del certificato dell'Autorità di certificazione (CA) utilizzato per verificare il certificato del server.
Esempio:
$ZBX_SERVER_TLS['CA_FILE'] = '/etc/zabbix/ssl/ca.crt';
$ZBX_SERVER_TLS['KEY_FILE']
Percorso del file della chiave privata del client corrispondente al certificato client utilizzato per l'autenticazione TLS reciproca.
Esempio:
$ZBX_SERVER_TLS['KEY_FILE'] = '/etc/zabbix/ssl/frontend.key';
$ZBX_SERVER_TLS['CERT_FILE']
Percorso al file del certificato client quando è richiesta l'autenticazione TLS reciproca.
Esempio:
$ZBX_SERVER_TLS['CERT_FILE'] = '/etc/zabbix/ssl/frontend.crt';
$ZBX_SERVER_TLS['CERTIFICATE_ISSUER']
Nome distinto (DN) dell'emittente da confrontare con il certificato del server.
Esempio:
$ZBX_SERVER_TLS['CERTIFICATE_ISSUER'] = 'CN=MyZabbixCA';
$ZBX_SERVER_TLS['CERTIFICATE_SUBJECT']
Nome distinto (DN) del soggetto da confrontare con il certificato del server.
Esempio:
$ZBX_SERVER_TLS['CERTIFICATE_SUBJECT'] = 'CN=zabbix-server.example.com';