Параметры конфигурации: веб-интерфейс Zabbix

Обзор

Параметры конфигурации позволяют настраивать поведение веб-интерфейса Zabbix.

Укажите значения параметров в файле конфигурации веб-интерфейса (zabbix.conf.php).

Эта страница состоит из следующих разделов:

  • Обзор параметров (чтобы просмотреть подробные сведения о параметре, нажмите его имя)
  • Подробные сведения о параметрах
Параметр Описание
$DB['TYPE'] Тип базы данных.
$DB['SERVER'] Имя узла сети базы данных или IP-адрес.
$DB['PORT'] Порт базы данных.
$DB['DATABASE'] Имя базы данных, используемое веб-интерфейсом Zabbix для подключения к настроенной базе данных.
$DB['USER'] Имя пользователя, используемое веб-интерфейсом Zabbix для подключения к базе данных.
$DB['PASSWORD'] Пароль, используемый веб-интерфейсом Zabbix для подключения к базе данных.
$DB['SCHEMA'] Имя схемы базы данных, используемой для PostgreSQL.
$DB['ENCRYPTION'] Включает или отключает шифрование TLS для соединений между веб-интерфейсом Zabbix и базой данных.
$DB['KEY_FILE'] Путь к файлу закрытого ключа клиента, используемому для TLS-соединения с базой данных.
$DB['CERT_FILE'] Путь к файлу сертификата клиента, используемому для TLS-соединения с базой данных.
$DB['CA_FILE'] Путь к файлу сертификата центра сертификации (CA), используемому для TLS-соединения с базой данных.
$DB['VERIFY_HOST'] Включает или отключает проверку имени узла сети сервера базы данных в сертификате TLS.
$DB['CIPHER_LIST'] Список разрешенных шифров TLS для подключения к базе данных.
$DB['VAULT'] Укажите менеджер секретов Vault, используемый для хранения учетных данных базы данных.
$DB['VAULT_URL'] URL менеджера секретов Vault, используемого для получения учетных данных базы данных.
$DB['VAULT_PREFIX'] Префикс пути или запроса Vault, используемый для получения учетных данных базы данных.
$DB['VAULT_DB_PATH'] Путь к учетным данным базы данных в менеджере секретов Vault.
$DB['VAULT_TOKEN'] Токен аутентификации, используемый для доступа к менеджеру секретов Vault.
$DB['VAULT_APP_ROLE_ID'] Идентификатор роли AppRole, используемый для аутентификации в HashiCorp Vault.
$DB['VAULT_APP_SECRET_ID'] Идентификатор секрета AppRole, используемый для аутентификации в HashiCorp Vault.
$DB['VAULT_CERT_FILE'] Путь к файлу сертификата клиента, используемому для аутентификации в менеджере секретов Vault.
$DB['VAULT_KEY_FILE'] Путь к файлу закрытого ключа клиента, используемому для аутентификации в менеджере секретов Vault.
$DB['VAULT_CACHE'] Включает или отключает кэширование учетных данных, полученных из менеджера секретов Vault.
$ZBX_SERVER Укажите значение для переопределения имени узла сети или IP-адреса Zabbix.
$ZBX_SERVER_PORT Укажите значение для переопределения порта сервера Zabbix.
$ZBX_SERVER_NAME Имя сервера Zabbix.
$IMAGE_FORMAT_DEFAULT Формат изображения по умолчанию.
$HISTORY_PROVIDERS[] Настройка провайдеров хранения истории для Elasticsearch или ClickHouse.
$SSO['SETTINGS'] Параметры конфигурации для входа с использованием SAML.
$SSO['CERT_STORAGE'] Укажите место хранения сертификатов SAML.
$SSO['SP_KEY'] Путь к файлу закрытого ключа поставщика услуг (SP) SAML, если закрытый ключ хранится в файловой системе.
$SSO['SP_CERT'] Путь к файлу сертификата поставщика услуг (SP) SAML, если сертификат хранится в файловой системе.
$SSO['IDP_CERT'] Путь к файлу сертификата поставщика удостоверений SAML, если сертификат хранится в файловой системе.
$ZBX_FEATURE_FLAGS['banners_enabled'] Включает или отключает поддержку баннеров.
$ZBX_FEATURE_FLAGS['http_auth_enabled'] Включает или отключает HTTP-аутентификацию пользователей.
$ZBX_FEATURE_FLAGS['modules_config_enabled'] Включает или отключает доступ к модулям.
$ZBX_FEATURE_FLAGS['media_type_denylist'] Запрещает редактирование определенных предварительно настроенных типов носителей.
$ZBX_SERVER_TLS['ACTIVE'] Указывает, включен ли TLS для соединений с сервером Zabbix.
$ZBX_SERVER_TLS['CA_FILE'] Путь к файлу сертификата центра сертификации (CA), используемому для проверки сертификата сервера.
$ZBX_SERVER_TLS['KEY_FILE'] Путь к файлу закрытого ключа клиента, соответствующего сертификату клиента.
$ZBX_SERVER_TLS['CERT_FILE'] Путь к файлу сертификата клиента, если требуется взаимная аутентификация TLS.
$ZBX_SERVER_TLS['CERTIFICATE_ISSUER'] Различающееся имя (DN) издателя для сопоставления с сертификатом сервера.
$ZBX_SERVER_TLS['CERTIFICATE_SUBJECT'] Различающееся имя (DN) субъекта для сопоставления с сертификатом сервера.

Сведения о параметрах

$DB['TYPE']

Тип базы данных.

Значения: MYSQL - MySQL, POSTGRESQL - PostgreSQL.

$DB['SERVER']

Имя узла сети базы данных или IP-адрес.

Если $DB['SERVER'] не определён, используется сокет домена Unix по умолчанию. Для MySQL установка $DB['SERVER'] в значение localhost также приводит к подключению через сокет Unix по умолчанию.
Для PostgreSQL $DB['SERVER'] может содержать несколько записей host:port, разделённых запятыми. Если для узла сети в списке, разделённом запятыми, порт не указан, в качестве порта по умолчанию используется значение, заданное в $DB['PORT']. Если в $DB['SERVER'] указан путь к сокету (например, /var/run/pgbouncer), используется этот сокет домена Unix.

Примеры:

$DB['SERVER'] = 'localhost';
$DB['SERVER'] = 127.0.0.1;
$DB['PORT']

Порт базы данных.

Если значение не задано, используется значение 0.

$DB['DATABASE']

Имя базы данных, используемое веб-интерфейсом Zabbix для подключения к настроенной базе данных.

Пример:

$DB['DATABASE'] = 'zabbix';
$DB['USER']

Имя пользователя, используемое веб-интерфейсом Zabbix для подключения к базе данных.

$DB['PASSWORD']

Пароль, используемый веб-интерфейсом Zabbix для подключения к базе данных.

$DB['SCHEMA']

Имя схемы базы данных, используемое для PostgreSQL.

$DB['ENCRYPTION']

Включение или отключение шифрования соединений между веб-интерфейсом Zabbix и базой данных.

Значения: true — включено, false — отключено.

$DB['KEY_FILE']

Путь к файлу закрытого ключа клиента, используемого для TLS-соединения с базой данных.

Пример:

// Для MySQL:
$DB['KEY_FILE'] = '/etc/ssl/mysql/client-key.pem';
$DB['CERT_FILE']

Путь к файлу сертификата клиента, используемого для TLS-соединения с базой данных.

Пример:

// Для MySQL:
$DB['CERT_FILE'] = '/etc/ssl/mysql/client-cert.pem';
$DB['CA_FILE']

Путь к файлу сертификата CA, используемому для TLS-соединения с базой данных.

Примеры:

// Для MySQL:
$DB['CA_FILE'] = '/etc/ssl/mysql/ca.pem';
// Для PostgreSQL:
$DB['CA_FILE'] = '/etc/ssl/pgsql/root.crt';
$DB['VERIFY_HOST']

Включение или отключение проверки имени узла сети сервера базы данных в сертификате TLS.

Значения: true - включено, false - отключено.

$DB['CIPHER_LIST']

Список разрешенных шифров TLS для подключения к базе данных.

Примеры:

// Для 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']

Укажите менеджер секретов Vault, используемый для хранения учетных данных базы данных.

Допустимые значения: CyberArk или HashiCorp.

Примеры:

// Для CyberArk:
$DB['VAULT'] = 'CyberArk';
// Для HashiCorp:
$DB['VAULT'] = 'HashiCorp';
$DB['VAULT_URL']

URL диспетчера секретов Vault, используемого для получения учетных данных базы данных.

Примеры:

// Для CyberArk:
$DB['VAULT_URL'] = 'https://127.0.0.1:1858';
// Для HashiCorp:
$DB['VAULT_URL'] = 'https://localhost:8200';
$DB['VAULT_PREFIX']

Префикс пути или запроса Vault, используемый для получения учетных данных базы данных.

Пример:

// Для HashiCorp:
$DB['VAULT_PREFIX'] = '/v1/secret/data/zabbix/';
$DB['VAULT_DB_PATH']

Путь к учетным данным базы данных в менеджере секретов Vault.

Примеры:

// Для CyberArk:
$DB['VAULT_DB_PATH'] = 'AppID=foo&Query=Safe=bar;Object=buzz';
// Для HashiCorp:
$DB['VAULT_DB_PATH'] = 'database';
$DB['VAULT_TOKEN']

Токен аутентификации, используемый для доступа к диспетчеру секретов Vault.

Пример:

// Для HashiCorp:
$DB['VAULT_TOKEN'] = 'hvs.CAESIIG_PILmULFYOsEyWHxkZ2mF2a8VPKNLE8eHqd4autYGGh4KHGh2cy5aeTY0NFNSaUp3ZnpWbDF1RUNjUkNTZEg';
$DB['VAULT_APP_ROLE_ID']

Идентификатор роли VaultAppSecretID, используемый для аутентификации в HashiCorp Vault.

Пример:

$DB['VAULT_APP_ROLE_ID'] = '6f1567f1-538d-7d70-e8e4-5d3e59471b2e';
$DB['VAULT_APP_SECRET_ID']

VaultAppSecretID используется для аутентификации в HashiCorp Vault.

Пример:

$DB['VAULT_APP_SECRET_ID'] = '89dac8b1-f7d6-96a7-2ecf-f94d2de3d6f1';
$DB['VAULT_CERT_FILE']

Путь к файлу сертификата клиента, используемого для аутентификации в менеджере секретов Vault.

Пример:

// Для CyberArk:
$DB['VAULT_CERT_FILE'] = 'conf/certs/cyberark-cert.pem';
$DB['VAULT_KEY_FILE']

Путь к файлу закрытого ключа клиента, используемого для аутентификации в диспетчере секретов Vault.

Пример:

// Для CyberArk:
$DB['VAULT_KEY_FILE'] = 'conf/certs/cyberark-key.pem';
$DB['VAULT_CACHE']

Включает или отключает кэширование учетных данных, полученных из менеджера секретов Vault.

Значения: true — включено, false — отключено.

$ZBX_SERVER

Укажите значение для переопределения имени узла сети или IP-адреса Zabbix.
Если $ZBX_SERVER указан без $ZBX_SERVER_PORT, используется порт по умолчанию (10051).

$ZBX_SERVER_PORT

Укажите значение для переопределения порта сервера Zabbix.
Этот параметр используется вместе с $ZBX_SERVER.

$ZBX_SERVER_NAME

Имя сервера Zabbix.

$IMAGE_FORMAT_DEFAULT

Формат изображения по умолчанию.

По умолчанию: IMAGE_FORMAT_PNG
Значения:

  • IMAGE_FORMAT_PNG - формат PNG
  • IMAGE_FORMAT_JPEG - формат JPEG
  • IMAGE_FORMAT_GIF - формат GIF
$HISTORY_PROVIDERS[]

Настройка поставщиков хранения истории для Elasticsearch или ClickHouse.

Поддерживаемые параметры конфигурации:

  • types - массив типов данных, которые будут храниться во внешнем хранилище;
  • provider - тип поставщика истории: elasticsearch или clickhouse;
  • url - URL поставщика истории;
  • db - имя базы данных (используется для ClickHouse);
  • username - пользователь базы данных (используется для ClickHouse);
  • password - пароль базы данных (используется для ClickHouse).

Примеры:

// Для ClickHouse:
$HISTORY_PROVIDERS[] = [
    'types' => ['uint', 'dbl', 'str', 'log', 'text', 'json'],
    'provider' => 'clickhouse',
    'url' => 'http://localhost:8123',
    'db' => 'zabbix',
    'username' => 'zabbix',
    'password' => 'zabbix'
];
// Для Elasticsearch:
$HISTORY_PROVIDERS[] = [
    'types' => ['uint', 'dbl', 'str', 'log', 'text', 'json'],
    'provider' => 'elasticsearch',
    'url' => 'http://localhost:9200'
];
$SSO['SETTINGS']

Параметры конфигурации для входа через SAML. Массив $SSO['SETTINGS'] должен соответствовать структуре, ожидаемой библиотекой SAML PHP Toolkit (поставляется вместе с Zabbix).

В $SSO['SETTINGS'] можно указать только следующие параметры:

  • strict
  • baseurl
  • compress
  • contactPerson
  • organization
  • sp (только параметры, указанные в этом списке)
    • attributeConsumingService
    • x509certNew
  • idp (только параметры, указанные в этом списке)
    • singleLogoutService (только один параметр)
      • responseUrl
    • certFingerprint
    • certFingerprintAlgorithm
    • x509certMulti
  • security (только параметры, указанные в этом списке)
    • signMetadata
    • wantNameId
    • requestedAuthnContext
    • requestedAuthnContextComparison
    • wantXMLValidation
    • relaxDestinationValidation
    • destinationStrictlyMatches
    • rejectUnsolicitedResponsesWithInResponseTo
    • signatureAlgorithm
    • digestAlgorithm
    • lowercaseUrlencoding

Все остальные параметры берутся из базы данных, и их нельзя переопределить. Параметр debug будет проигнорирован.

Если веб-интерфейс Zabbix находится за прокси или балансировщиком нагрузки, можно использовать пользовательский параметр use_proxy_headers:

  • false (по умолчанию) - игнорировать HTTP-заголовки X-Forwarded-*;
  • true - использовать HTTP-заголовки X-Forwarded-* для формирования базового URL.

Полное описание доступных параметров конфигурации см. в официальной документации библиотеки.

Пример:

$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']

Укажите, где хранятся сертификаты SAML.

По умолчанию: file
Значения:

  • database - закрытый ключ и сертификаты хранятся в базе данных;
  • file - закрытый ключ и сертификаты хранятся в файловой системе.

Пример:

$SSO['CERT_STORAGE'] = 'database';
$SSO['SP_KEY']

Путь к файлу закрытого ключа поставщика услуг SAML (SP), если закрытый ключ хранится в файловой системе.

Пример:

$SSO['SP_KEY'] = 'conf/certs/sp.key';
$SSO['SP_CERT']

Путь к файлу сертификата поставщика услуг SAML (SP), если сертификат хранится в файловой системе.

Пример:

$SSO['SP_CERT'] = 'conf/certs/sp.crt';
$SSO['IDP_CERT']

Путь к файлу сертификата поставщика удостоверений SAML, если сертификат хранится в файловой системе.

Пример:

$SSO['IDP_CERT'] = 'conf/certs/idp.crt';
$ZBX_FEATURE_FLAGS['banners_enabled']

Включение или отключение поддержки баннеров.

По умолчанию: true
Значения: true - включено, false - отключено.

$ZBX_FEATURE_FLAGS['http_auth_enabled']

Включение или отключение HTTP-аутентификации пользователей.

По умолчанию: true
Значения: true — включено, false — отключено.

$ZBX_FEATURE_FLAGS['modules_config_enabled']

Включение или отключение доступа к модулям.

По умолчанию: true
Значения: true — включено, false — отключено.

$ZBX_FEATURE_FLAGS['media_type_denylist']

Запрет редактирования определенных предварительно настроенных типов носителей.

Значения: email, script, sms, webhook, push.

Пример:

$ZBX_FEATURE_FLAGS['media_type_denylist'] = ['webhook','push'];
$ZBX_SERVER_TLS['ACTIVE']

Указывает, включено ли TLS-соединение между веб-интерфейсом Zabbix и сервером Zabbix.

Значение по умолчанию: false
Значения: true - включено, false - отключено.

$ZBX_SERVER_TLS['CA_FILE']

Путь к файлу сертификата центра сертификации (CA), используемого для проверки сертификата сервера.

Пример:

$ZBX_SERVER_TLS['CA_FILE'] = '/etc/zabbix/ssl/ca.crt';
$ZBX_SERVER_TLS['KEY_FILE']

Путь к файлу закрытого ключа клиента, соответствующего сертификату клиента, используемому для взаимной аутентификации TLS.

Пример:

$ZBX_SERVER_TLS['KEY_FILE'] = '/etc/zabbix/ssl/frontend.key';
$ZBX_SERVER_TLS['CERT_FILE']

Путь к файлу сертификата клиента, если требуется взаимная аутентификация TLS.

Пример:

$ZBX_SERVER_TLS['CERT_FILE'] = '/etc/zabbix/ssl/frontend.crt';
$ZBX_SERVER_TLS['CERTIFICATE_ISSUER']

Distinguished Name (DN) издателя для сопоставления с сертификатом сервера.

Пример:

$ZBX_SERVER_TLS['CERTIFICATE_ISSUER']  = 'CN=MyZabbixCA';
$ZBX_SERVER_TLS['CERTIFICATE_SUBJECT']

Distinguished Name (DN) субъекта, с которым должно совпадать значение в сертификате сервера.

Пример:

$ZBX_SERVER_TLS['CERTIFICATE_SUBJECT'] = 'CN=zabbix-server.example.com';