Parametry konfiguracji: frontend Zabbix
Przegląd
Parametry konfiguracji umożliwiają dostosowanie działania frontendu Zabbix.
Określ wartości parametrów w pliku konfiguracji frontendu (zabbix.conf.php).
Ta strona ma następującą strukturę:
- Przegląd parametrów (aby wyświetlić pełne informacje o parametrze, kliknij jego nazwę)
- Szczegóły parametrów
| Parametr | Opis |
|---|---|
| $DB['TYPE'] | Typ bazy danych. |
| $DB['SERVER'] | Nazwa hosta bazy danych lub adres IP. |
| $DB['PORT'] | Port bazy danych. |
| $DB['DATABASE'] | Nazwa bazy danych używanej przez frontend Zabbix do łączenia się ze skonfigurowaną bazą danych. |
| $DB['USER'] | Nazwa użytkownika używana przez frontend Zabbix do łączenia się z bazą danych. |
| $DB['PASSWORD'] | Hasło używane przez frontend Zabbix do łączenia się z bazą danych. |
| $DB['SCHEMA'] | Nazwa schematu bazy danych używanego przez PostgreSQL. |
| $DB['ENCRYPTION'] | Włącza lub wyłącza szyfrowanie TLS połączeń między frontendem Zabbix a bazą danych. |
| $DB['KEY_FILE'] | Ścieżka do pliku prywatnego klucza klienta używanego do połączenia TLS z bazą danych. |
| $DB['CERT_FILE'] | Ścieżka do pliku certyfikatu klienta używanego do połączenia TLS z bazą danych. |
| $DB['CA_FILE'] | Ścieżka do pliku certyfikatu CA używanego do połączenia TLS z bazą danych. |
| $DB['VERIFY_HOST'] | Włącza lub wyłącza weryfikację nazwy hosta serwera bazy danych w certyfikacie TLS. |
| $DB['CIPHER_LIST'] | Lista dozwolonych szyfrów TLS dla połączenia z bazą danych. |
| $DB['VAULT'] | Określa menedżera sekretów Vault używanego do przechowywania danych uwierzytelniających bazy danych. |
| $DB['VAULT_URL'] | URL menedżera sekretów Vault używanego do pobierania danych uwierzytelniających bazy danych. |
| $DB['VAULT_PREFIX'] | Prefiks ścieżki lub zapytania Vault używanego do pobierania danych uwierzytelniających bazy danych. |
| $DB['VAULT_DB_PATH'] | Ścieżka do danych uwierzytelniających bazy danych w menedżerze sekretów Vault. |
| $DB['VAULT_TOKEN'] | Token uwierzytelniania używany do uzyskiwania dostępu do menedżera sekretów Vault. |
| $DB['VAULT_APP_ROLE_ID'] | Identyfikator roli AppRole używany do uwierzytelniania w HashiCorp Vault. |
| $DB['VAULT_APP_SECRET_ID'] | Identyfikator sekretu AppRole używany do uwierzytelniania w HashiCorp Vault. |
| $DB['VAULT_CERT_FILE'] | Ścieżka do pliku certyfikatu klienta używanego do uwierzytelniania w menedżerze sekretów Vault. |
| $DB['VAULT_KEY_FILE'] | Ścieżka do pliku prywatnego klucza klienta używanego do uwierzytelniania w menedżerze sekretów Vault. |
| $DB['VAULT_CACHE'] | Włącza lub wyłącza buforowanie danych uwierzytelniających pobranych z menedżera sekretów Vault. |
| $ZBX_SERVER | Określa wartość zastępującą nazwę hosta lub adres IP Zabbix. |
| $ZBX_SERVER_PORT | Określa wartość zastępującą port serwera Zabbix. |
| $ZBX_SERVER_NAME | Nazwa serwera Zabbix. |
| $IMAGE_FORMAT_DEFAULT | Domyślny format obrazu. |
| $HISTORY_PROVIDERS[] | Konfiguracja dostawców przechowywania danych historycznych dla Elasticsearch lub ClickHouse. |
| $SSO['SETTINGS'] | Ustawienia konfiguracji logowania SAML. |
| $SSO['CERT_STORAGE'] | Określa miejsce przechowywania certyfikatów SAML. |
| $SSO['SP_KEY'] | Ścieżka do pliku prywatnego klucza dostawcy usług SAML (SP), gdy klucz prywatny jest przechowywany w systemie plików. |
| $SSO['SP_CERT'] | Ścieżka do pliku certyfikatu dostawcy usług SAML (SP), gdy certyfikat jest przechowywany w systemie plików. |
| $SSO['IDP_CERT'] | Ścieżka do pliku certyfikatu dostawcy tożsamości SAML, gdy certyfikat jest przechowywany w systemie plików. |
| $ZBX_FEATURE_FLAGS['banners_enabled'] | Włącza lub wyłącza obsługę banerów. |
| $ZBX_FEATURE_FLAGS['http_auth_enabled'] | Włącza lub wyłącza uwierzytelnianie użytkowników HTTP. |
| $ZBX_FEATURE_FLAGS['modules_config_enabled'] | Włącza lub wyłącza dostęp do modułów. |
| $ZBX_FEATURE_FLAGS['media_type_denylist'] | Wyłącza edycję określonych wstępnie skonfigurowanych typów mediów. |
| $ZBX_SERVER_TLS['ACTIVE'] | Określa, czy TLS jest włączony dla połączeń z serwerem Zabbix. |
| $ZBX_SERVER_TLS['CA_FILE'] | Ścieżka do pliku certyfikatu urzędu certyfikacji (CA) używanego do weryfikacji certyfikatu serwera. |
| $ZBX_SERVER_TLS['KEY_FILE'] | Ścieżka do prywatnego klucza klienta odpowiadającego certyfikatowi klienta. |
| $ZBX_SERVER_TLS['CERT_FILE'] | Ścieżka do pliku certyfikatu klienta, gdy wymagane jest wzajemne uwierzytelnianie TLS. |
| $ZBX_SERVER_TLS['CERTIFICATE_ISSUER'] | Nazwa wyróżniająca (DN) wystawcy, która ma zostać dopasowana do certyfikatu serwera. |
| $ZBX_SERVER_TLS['CERTIFICATE_SUBJECT'] | Nazwa wyróżniająca (DN) podmiotu, która ma zostać dopasowana do certyfikatu serwera. |
Szczegóły parametrów
$DB['TYPE']
Typ bazy danych.
Wartości: MYSQL - MySQL, POSTGRESQL - PostgreSQL.
$DB['SERVER']
Nazwa hosta bazy danych lub adres IP.
Jeśli parametr $DB['SERVER'] nie jest zdefiniowany, używany jest domyślny gniazdo domeny Unix.
W przypadku MySQL ustawienie $DB['SERVER'] na localhost również powoduje połączenie za pośrednictwem domyślnego gniazda Unix.
W przypadku PostgreSQL parametr $DB['SERVER'] może zawierać wiele wpisów host:port oddzielonych przecinkami.
Jeśli dla hosta na liście rozdzielanej przecinkami nie zdefiniowano portu, jako port domyślny używana jest wartość zdefiniowana w $DB['PORT'].
Jeśli w parametrze $DB['SERVER'] określono ścieżkę gniazda (na przykład /var/run/pgbouncer), używane jest to gniazdo domeny Unix.
Przykłady:
$DB['SERVER'] = 'localhost';
$DB['SERVER'] = 127.0.0.1;
$DB['PORT']
Port bazy danych.
Jeśli nie zdefiniowano, używana jest wartość 0.
$DB['DATABASE']
Nazwa bazy danych używana przez frontend Zabbix do łączenia się ze skonfigurowaną bazą danych.
Przykład:
$DB['DATABASE'] = 'zabbix';
$DB['USER']
Nazwa użytkownika używana przez frontend Zabbix do łączenia się z bazą danych.
$DB['PASSWORD']
Hasło używane przez frontend Zabbix do łączenia się z bazą danych.
$DB['SCHEMA']
Nazwa schematu bazy danych używanego przez PostgreSQL.
$DB['ENCRYPTION']
Włącz lub wyłącz szyfrowanie połączeń między frontendem Zabbix a bazą danych.
Wartości: true - włączone, false - wyłączone.
$DB['KEY_FILE']
Ścieżka do pliku klucza prywatnego klienta używanego do połączenia TLS z bazą danych.
Przykład:
// Dla MySQL:
$DB['KEY_FILE'] = '/etc/ssl/mysql/client-key.pem';
$DB['CERT_FILE']
Ścieżka do pliku certyfikatu klienta używanego do połączenia TLS z bazą danych.
Przykład:
// Dla MySQL:
$DB['CERT_FILE'] = '/etc/ssl/mysql/client-cert.pem';
$DB['CA_FILE']
Ścieżka do pliku certyfikatu CA używanego do połączenia TLS z bazą danych.
Przykłady:
// Dla MySQL:
$DB['CA_FILE'] = '/etc/ssl/mysql/ca.pem';
// Dla PostgreSQL:
$DB['CA_FILE'] = '/etc/ssl/pgsql/root.crt';
$DB['VERIFY_HOST']
Włącz lub wyłącz weryfikację nazwy hosta serwera bazy danych w certyfikacie TLS.
Wartości: true - włączone, false - wyłączone.
$DB['CIPHER_LIST']
Lista dozwolonych szyfrów TLS dla połączenia z bazą danych.
Przykłady:
// Dla 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']
Określa menedżera sekretów Vault używanego do przechowywania danych uwierzytelniających bazy danych.
Wartości: CyberArk lub HashiCorp.
Przykłady:
// Dla CyberArk:
$DB['VAULT'] = 'CyberArk';
// Dla HashiCorp:
$DB['VAULT'] = 'HashiCorp';
$DB['VAULT_URL']
URL menedżera sekretów Vault używanego do pobierania danych uwierzytelniających do bazy danych.
Przykłady:
// Dla CyberArk:
$DB['VAULT_URL'] = 'https://127.0.0.1:1858';
// Dla HashiCorp:
$DB['VAULT_URL'] = 'https://localhost:8200';
$DB['VAULT_PREFIX']
Prefiks ścieżki Vault lub zapytania używanego do pobierania danych uwierzytelniających bazy danych.
Przykład:
// Dla HashiCorp:
$DB['VAULT_PREFIX'] = '/v1/secret/data/zabbix/';
$DB['VAULT_DB_PATH']
Ścieżka do danych uwierzytelniających bazy danych w menedżerze sekretów Vault.
Przykłady:
// Dla CyberArk:
$DB['VAULT_DB_PATH'] = 'AppID=foo&Query=Safe=bar;Object=buzz';
// Dla HashiCorp:
$DB['VAULT_DB_PATH'] = 'database';
$DB['VAULT_TOKEN']
Token uwierzytelniający używany do uzyskiwania dostępu do menedżera sekretów Vault.
Przykład:
// Dla HashiCorp:
$DB['VAULT_TOKEN'] = 'hvs.CAESIIG_PILmULFYOsEyWHxkZ2mF2a8VPKNLE8eHqd4autYGGh4KHGh2cy5aeTY0NFNSaUp3ZnpWbDF1RUNjUkNTZEg';
$DB['VAULT_APP_ROLE_ID']
Identyfikator roli VaultAppSecretID używany do uwierzytelniania w HashiCorp Vault.
Przykład:
$DB['VAULT_APP_ROLE_ID'] = '6f1567f1-538d-7d70-e8e4-5d3e59471b2e';
$DB['VAULT_APP_SECRET_ID']
VaultAppSecretID używany do uwierzytelniania w HashiCorp Vault.
Przykład:
$DB['VAULT_APP_SECRET_ID'] = '89dac8b1-f7d6-96a7-2ecf-f94d2de3d6f1';
$DB['VAULT_CERT_FILE']
Ścieżka do pliku certyfikatu klienta używanego do uwierzytelniania w menedżerze sekretów Vault.
Przykład:
// Dla CyberArk:
$DB['VAULT_CERT_FILE'] = 'conf/certs/cyberark-cert.pem';
$DB['VAULT_KEY_FILE']
Ścieżka do pliku klucza prywatnego klienta używanego do uwierzytelniania w menedżerze sekretów Vault.
Przykład:
// Dla CyberArk:
$DB['VAULT_KEY_FILE'] = 'conf/certs/cyberark-key.pem';
$DB['VAULT_CACHE']
Włącza lub wyłącza buforowanie danych uwierzytelniających pobranych z menedżera sekretów Vault.
Wartości: true - włączone, false - wyłączone.
$ZBX_SERVER
Określ wartość zastępującą nazwę hosta/adres IP Zabbix.
Jeśli parametr $ZBX_SERVER zostanie określony bez $ZBX_SERVER_PORT, zostanie użyty port domyślny (10051).
$ZBX_SERVER_PORT
Określ wartość zastępującą port serwera Zabbix.
Ten parametr jest używany razem z $ZBX_SERVER.
$ZBX_SERVER_NAME
Nazwa serwera Zabbix.
$IMAGE_FORMAT_DEFAULT
Domyślny format obrazu.
Domyślnie: IMAGE_FORMAT_PNG
Wartości:
IMAGE_FORMAT_PNG- format PNGIMAGE_FORMAT_JPEG- format JPEGIMAGE_FORMAT_GIF- format GIF
$HISTORY_PROVIDERS[]
Konfiguracja dostawców przechowywania historii dla Elasticsearch lub ClickHouse.
Obsługiwane parametry konfiguracji:
types- tablica typów danych przechowywanych w magazynie zewnętrznym;provider- typ dostawcy historii:elasticsearchlubclickhouse;url- adres URL dostawcy historii;db- nazwa bazy danych (używana przez ClickHouse);username- użytkownik bazy danych (używany przez ClickHouse);password- hasło do bazy danych (używane przez ClickHouse).
Przykłady:
// Dla ClickHouse:
$HISTORY_PROVIDERS[] = [
'types' => ['uint', 'dbl', 'str', 'log', 'text', 'json'],
'provider' => 'clickhouse',
'url' => 'http://localhost:8123',
'db' => 'zabbix',
'username' => 'zabbix',
'password' => 'zabbix'
];
// Dla Elasticsearch:
$HISTORY_PROVIDERS[] = [
'types' => ['uint', 'dbl', 'str', 'log', 'text', 'json'],
'provider' => 'elasticsearch',
'url' => 'http://localhost:9200'
];
$SSO['SETTINGS']
Ustawienia konfiguracyjne logowania SAML.
Tablica $SSO['SETTINGS'] musi mieć strukturę oczekiwaną przez bibliotekę SAML PHP Toolkit (dostarczaną wraz z Zabbix).
W $SSO['SETTINGS'] można określić tylko następujące opcje:
strictbaseurlcompresscontactPersonorganizationsp(tylko opcje określone na tej liście)attributeConsumingServicex509certNew
idp(tylko opcje określone na tej liście)singleLogoutService(tylko jedna opcja)responseUrl
certFingerprintcertFingerprintAlgorithmx509certMulti
security(tylko opcje określone na tej liście)signMetadatawantNameIdrequestedAuthnContextrequestedAuthnContextComparisonwantXMLValidationrelaxDestinationValidationdestinationStrictlyMatchesrejectUnsolicitedResponsesWithInResponseTosignatureAlgorithmdigestAlgorithmlowercaseUrlencoding
Wszystkie pozostałe opcje są pobierane z bazy danych i nie można ich zastąpić.
Opcja debug zostanie zignorowana.
Jeśli interfejs użytkownika Zabbix znajduje się za proxy lub modułem równoważenia obciążenia, można użyć niestandardowej opcji use_proxy_headers:
false(domyślnie) - ignorowanie nagłówków HTTPX-Forwarded-*;true- używanie nagłówków HTTPX-Forwarded-*do utworzenia bazowego adresu URL.
Pełny opis dostępnych opcji konfiguracji znajduje się w oficjalnej dokumentacji biblioteki.
Przykład:
$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']
Określ, gdzie są przechowywane certyfikaty SAML.
Wartość domyślna: file
Wartości:
database- klucz prywatny i certyfikaty są przechowywane w bazie danych;file- klucz prywatny i certyfikaty są przechowywane w systemie plików.
Przykład:
$SSO['CERT_STORAGE'] = 'database';
$SSO['SP_KEY']
Ścieżka do pliku klucza prywatnego dostawcy usług SAML (SP), gdy klucz prywatny jest przechowywany w systemie plików.
Przykład:
$SSO['SP_KEY'] = 'conf/certs/sp.key';
$SSO['SP_CERT']
Ścieżka do pliku certyfikatu dostawcy usługi SAML (SP), gdy certyfikat jest przechowywany w systemie plików.
Przykład:
$SSO['SP_CERT'] = 'conf/certs/sp.crt';
$SSO['IDP_CERT']
Ścieżka do pliku certyfikatu dostawcy tożsamości SAML, gdy certyfikat jest przechowywany w systemie plików.
Przykład:
$SSO['IDP_CERT'] = 'conf/certs/idp.crt';
$ZBX_FEATURE_FLAGS['banners_enabled']
Włącz lub wyłącz obsługę banerów.
Wartość domyślna: true
Wartości: true - włączona, false - wyłączona.
$ZBX_FEATURE_FLAGS['http_auth_enabled']
Włącz lub wyłącz uwierzytelnianie użytkowników HTTP.
Wartość domyślna: true
Wartości: true - włączone, false - wyłączone.
$ZBX_FEATURE_FLAGS['modules_config_enabled']
Włącz lub wyłącz dostęp do modułów.
Wartość domyślna: true
Wartości: true - włączone, false - wyłączone.
$ZBX_FEATURE_FLAGS['media_type_denylist']
Wyłącz edytowanie określonych wstępnie skonfigurowanych typów mediów.
Wartości: email, script, sms, webhook, push.
Przykład:
$ZBX_FEATURE_FLAGS['media_type_denylist'] = ['webhook','push'];
$ZBX_SERVER_TLS['ACTIVE']
Określa, czy połączenie TLS między frontendem Zabbix a serwerem Zabbix jest włączone.
Wartość domyślna: false
Wartości: true - włączone, false - wyłączone.
$ZBX_SERVER_TLS['CA_FILE']
Ścieżka do pliku certyfikatu urzędu certyfikacji (CA) używanego do weryfikacji certyfikatu serwera.
Przykład:
$ZBX_SERVER_TLS['CA_FILE'] = '/etc/zabbix/ssl/ca.crt';
$ZBX_SERVER_TLS['KEY_FILE']
Ścieżka do pliku klucza prywatnego klienta odpowiadającego certyfikatowi klienta używanemu do wzajemnego uwierzytelniania TLS.
Przykład:
$ZBX_SERVER_TLS['KEY_FILE'] = '/etc/zabbix/ssl/frontend.key';
$ZBX_SERVER_TLS['CERT_FILE']
Ścieżka do pliku certyfikatu klienta, gdy wymagane jest wzajemne uwierzytelnianie TLS.
Przykład:
$ZBX_SERVER_TLS['CERT_FILE'] = '/etc/zabbix/ssl/frontend.crt';
$ZBX_SERVER_TLS['CERTIFICATE_ISSUER']
Nazwa wyróżniająca (DN) wystawcy, która ma zostać porównana z certyfikatem serwera.
Przykład:
$ZBX_SERVER_TLS['CERTIFICATE_ISSUER'] = 'CN=MyZabbixCA';
$ZBX_SERVER_TLS['CERTIFICATE_SUBJECT']
Distinguished Name (DN) podmiotu, który ma zostać porównany z certyfikatem serwera.
Przykład:
$ZBX_SERVER_TLS['CERTIFICATE_SUBJECT'] = 'CN=zabbix-server.example.com';