Parâmetros de configuração: frontend do Zabbix

Visão geral

Os parâmetros de configuração permitem personalizar o comportamento do frontend do Zabbix.

Especifique os valores dos parâmetros no arquivo de configuração do frontend (zabbix.conf.php).

Esta página está estruturada da seguinte forma:

  • Visão geral dos parâmetros (para ver todos os detalhes de um parâmetro, clique no nome dele)
  • Detalhes dos parâmetros
Parâmetro Descrição
$DB['TYPE'] Tipo de banco de dados.
$DB['SERVER'] Nome do host ou endereço IP do banco de dados.
$DB['PORT'] Porta do banco de dados.
$DB['DATABASE'] Nome do banco de dados usado pelo frontend do Zabbix para se conectar ao banco de dados configurado.
$DB['USER'] Nome de usuário usado pelo frontend do Zabbix para se conectar ao banco de dados.
$DB['PASSWORD'] Senha usada pelo frontend do Zabbix para se conectar ao banco de dados.
$DB['SCHEMA'] Nome do esquema do banco de dados usado pelo PostgreSQL.
$DB['ENCRYPTION'] Habilita ou desabilita a criptografia TLS para conexões entre o frontend do Zabbix e o banco de dados.
$DB['KEY_FILE'] Caminho para o arquivo de chave privada do cliente usado na conexão TLS com o banco de dados.
$DB['CERT_FILE'] Caminho para o arquivo de certificado do cliente usado na conexão TLS com o banco de dados.
$DB['CA_FILE'] Caminho para o arquivo de certificado da CA usado na conexão TLS com o banco de dados.
$DB['VERIFY_HOST'] Habilita ou desabilita a verificação do nome do host do server do banco de dados no certificado TLS.
$DB['CIPHER_LIST'] Lista de cifras TLS permitidas para a conexão com o banco de dados.
$DB['VAULT'] Especifica o gerenciador de segredos Vault usado para armazenar as credenciais do banco de dados.
$DB['VAULT_URL'] URL do gerenciador de segredos Vault usado para recuperar as credenciais do banco de dados.
$DB['VAULT_PREFIX'] Prefixo do caminho ou da consulta do Vault usado para recuperar as credenciais do banco de dados.
$DB['VAULT_DB_PATH'] Caminho para as credenciais do banco de dados no gerenciador de segredos Vault.
$DB['VAULT_TOKEN'] Token de autenticação usado para acessar o gerenciador de segredos Vault.
$DB['VAULT_APP_ROLE_ID'] ID da função AppRole usado para autenticar no HashiCorp Vault.
$DB['VAULT_APP_SECRET_ID'] ID secreto do AppRole usado para autenticar no HashiCorp Vault.
$DB['VAULT_CERT_FILE'] Caminho para o arquivo de certificado do cliente usado para autenticar no gerenciador de segredos Vault.
$DB['VAULT_KEY_FILE'] Caminho para o arquivo de chave privada do cliente usado para autenticar no gerenciador de segredos Vault.
$DB['VAULT_CACHE'] Habilita ou desabilita o armazenamento em cache das credenciais recuperadas do gerenciador de segredos Vault.
$ZBX_SERVER Especifica um valor para substituir o nome do host/endereço IP do Zabbix.
$ZBX_SERVER_PORT Especifica um valor para substituir a porta do server Zabbix.
$ZBX_SERVER_NAME Nome do server Zabbix.
$IMAGE_FORMAT_DEFAULT Formato de imagem padrão.
$HISTORY_PROVIDERS[] Configuração dos provedores de armazenamento de histórico para Elasticsearch ou ClickHouse.
$SSO['SETTINGS'] Configurações para login SAML.
$SSO['CERT_STORAGE'] Especifica onde os certificados SAML são armazenados.
$SSO['SP_KEY'] Caminho para o arquivo de chave privada do provedor de serviços (SP) SAML quando a chave privada está armazenada no sistema de arquivos.
$SSO['SP_CERT'] Caminho para o arquivo de certificado do provedor de serviços (SP) SAML quando o certificado está armazenado no sistema de arquivos.
$SSO['IDP_CERT'] Caminho para o arquivo de certificado do provedor de identidade SAML quando o certificado está armazenado no sistema de arquivos.
$ZBX_FEATURE_FLAGS['banners_enabled'] Habilita ou desabilita o suporte a banners.
$ZBX_FEATURE_FLAGS['http_auth_enabled'] Habilita ou desabilita a autenticação HTTP de usuários.
$ZBX_FEATURE_FLAGS['modules_config_enabled'] Habilita ou desabilita o acesso aos módulos.
$ZBX_FEATURE_FLAGS['media_type_denylist'] Desabilita a edição de tipos de mídia pré-configurados específicos.
$ZBX_SERVER_TLS['ACTIVE'] Especifica se o TLS está habilitado para conexões com o server Zabbix.
$ZBX_SERVER_TLS['CA_FILE'] Caminho para o arquivo de certificado da Autoridade de Certificação (CA) usado para verificar o certificado do server.
$ZBX_SERVER_TLS['KEY_FILE'] Caminho para a chave privada do cliente correspondente ao certificado do cliente.
$ZBX_SERVER_TLS['CERT_FILE'] Caminho para o arquivo de certificado do cliente quando a autenticação TLS mútua é necessária.
$ZBX_SERVER_TLS['CERTIFICATE_ISSUER'] Nome Distinto (DN) do emissor a ser comparado com o certificado do server.
$ZBX_SERVER_TLS['CERTIFICATE_SUBJECT'] Nome Distinto (DN) do assunto a ser comparado com o certificado do server.

Detalhes dos parâmetros

$DB['TYPE']

Tipo de banco de dados.

Valores: MYSQL - MySQL, POSTGRESQL - PostgreSQL.

$DB['SERVER']

Nome do host ou endereço IP do banco de dados.

Se $DB['SERVER'] não estiver definido, o socket de domínio Unix padrão será usado. Para MySQL, definir $DB['SERVER'] como localhost também resulta em uma conexão por meio do socket Unix padrão.
Para PostgreSQL, $DB['SERVER'] pode conter várias entradas host:port separadas por vírgulas. Se uma porta não estiver definida para um host na lista separada por vírgulas, o valor definido em $DB['PORT'] será usado como porta padrão. Se um caminho de socket for especificado em $DB['SERVER'] (por exemplo, /var/run/pgbouncer), esse socket de domínio Unix será usado.

Exemplos:

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

Porta do banco de dados.

Se não for definido, o valor 0 será usado.

$DB['DATABASE']

Nome do banco de dados usado pelo frontend do Zabbix para se conectar ao banco de dados configurado.

Exemplo:

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

Nome de usuário usado pelo frontend do Zabbix para se conectar ao banco de dados.

$DB['PASSWORD']

Senha usada pelo frontend do Zabbix para se conectar ao banco de dados.

$DB['SCHEMA']

Nome do esquema do banco de dados usado para PostgreSQL.

$DB['ENCRYPTION']

Ative ou desative a criptografia para conexões entre o frontend do Zabbix e o banco de dados.

Valores: true - ativada, false - desativada.

$DB['KEY_FILE']

Caminho para o arquivo de chave privada do cliente usado na conexão TLS com o banco de dados.

Exemplo:

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

Caminho para o arquivo de certificado do cliente usado na conexão TLS com o banco de dados.

Exemplo:

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

Caminho para o arquivo de certificado da CA usado na conexão TLS com o banco de dados.

Exemplos:

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

Habilita ou desabilita a verificação do nome do host do banco de dados no certificado TLS.

Valores: true - habilitado, false - desabilitado.

$DB['CIPHER_LIST']

Lista de cifras TLS permitidas para a conexão com o banco de dados.

Exemplos:

// Para 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']

Especifique o gerenciador de segredos Vault usado para armazenar credenciais do banco de dados.

Valores: CyberArk ou HashiCorp.

Exemplos:

// Para CyberArk:
$DB['VAULT'] = 'CyberArk';
// Para HashiCorp:
$DB['VAULT'] = 'HashiCorp';
$DB['VAULT_URL']

URL do gerenciador de segredos Vault usado para recuperar as credenciais do banco de dados.

Exemplos:

// Para o CyberArk:
$DB['VAULT_URL'] = 'https://127.0.0.1:1858';
// Para o HashiCorp:
$DB['VAULT_URL'] = 'https://localhost:8200';
$DB['VAULT_PREFIX']

Prefixo do caminho ou da consulta do Vault usado para recuperar as credenciais do banco de dados.

Exemplo:

// Para o HashiCorp:
$DB['VAULT_PREFIX'] = '/v1/secret/data/zabbix/';
$DB['VAULT_DB_PATH']

Caminho para as credenciais do banco de dados no gerenciador de segredos Vault.

Exemplos:

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

Token de autenticação usado para acessar o gerenciador de segredos Vault.

Exemplo:

// Para o HashiCorp:
$DB['VAULT_TOKEN'] = 'hvs.CAESIIG_PILmULFYOsEyWHxkZ2mF2a8VPKNLE8eHqd4autYGGh4KHGh2cy5aeTY0NFNSaUp3ZnpWbDF1RUNjUkNTZEg';
$DB['VAULT_APP_ROLE_ID']

ID da função VaultAppSecretID usado para autenticar no HashiCorp Vault.

Exemplo:

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

VaultAppSecretID usado para autenticar no HashiCorp Vault.

Exemplo:

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

Caminho para o arquivo de certificado do cliente usado para autenticar no gerenciador de segredos Vault.

Exemplo:

// Para o CyberArk:
$DB['VAULT_CERT_FILE'] = 'conf/certs/cyberark-cert.pem';
$DB['VAULT_KEY_FILE']

Caminho para o arquivo de chave privada do cliente usado para autenticar no gerenciador de segredos Vault.

Exemplo:

// Para o CyberArk:
$DB['VAULT_KEY_FILE'] = 'conf/certs/cyberark-key.pem';
$DB['VAULT_CACHE']

Habilita ou desabilita o armazenamento em cache das credenciais recuperadas do gerenciador de segredos Vault.

Valores: true - habilitado, false - desabilitado.

$ZBX_SERVER

Especifique um valor para substituir o nome do host/endereço IP do Zabbix.
Se $ZBX_SERVER for especificado sem $ZBX_SERVER_PORT, a porta padrão (10051) será usada.

$ZBX_SERVER_PORT

Especifique um valor para substituir a porta do Zabbix server.
Este parâmetro é usado junto com $ZBX_SERVER.

$ZBX_SERVER_NAME

Nome do server do Zabbix.

$IMAGE_FORMAT_DEFAULT

Formato de imagem padrão.

Padrão: IMAGE_FORMAT_PNG
Valores:

  • IMAGE_FORMAT_PNG - formato PNG
  • IMAGE_FORMAT_JPEG - formato JPEG
  • IMAGE_FORMAT_GIF - formato GIF
$HISTORY_PROVIDERS[]

Configuração dos provedores de armazenamento do histórico para Elasticsearch ou ClickHouse.

Parâmetros de configuração compatíveis:

  • types - matriz de tipos de dados a serem armazenados no armazenamento externo;
  • provider - tipo de provedor do histórico: elasticsearch ou clickhouse;
  • url - URL do provedor do histórico;
  • db - nome do banco de dados (usado pelo ClickHouse);
  • username - usuário do banco de dados (usado pelo ClickHouse);
  • password - senha do banco de dados (usada pelo ClickHouse).

Exemplos:

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

Configurações para login SAML. O array $SSO['SETTINGS'] deve seguir a estrutura esperada pela biblioteca SAML PHP Toolkit (fornecida com o Zabbix).

Somente as seguintes opções podem ser especificadas em $SSO['SETTINGS']:

  • strict
  • baseurl
  • compress
  • contactPerson
  • organization
  • sp (somente as opções especificadas nesta lista)
    • attributeConsumingService
    • x509certNew
  • idp (somente as opções especificadas nesta lista)
    • singleLogoutService (somente uma opção)
      • responseUrl
    • certFingerprint
    • certFingerprintAlgorithm
    • x509certMulti
  • security (somente as opções especificadas nesta lista)
    • signMetadata
    • wantNameId
    • requestedAuthnContext
    • requestedAuthnContextComparison
    • wantXMLValidation
    • relaxDestinationValidation
    • destinationStrictlyMatches
    • rejectUnsolicitedResponsesWithInResponseTo
    • signatureAlgorithm
    • digestAlgorithm
    • lowercaseUrlencoding

Todas as outras opções são obtidas do banco de dados e não podem ser substituídas. A opção debug será ignorada.

Se a interface do usuário do Zabbix estiver atrás de um proxy ou balanceador de carga, a opção personalizada use_proxy_headers poderá ser usada:

  • false (padrão) - ignora os cabeçalhos HTTP X-Forwarded-*;
  • true - usa os cabeçalhos HTTP X-Forwarded-* para criar a URL base.

Para obter uma descrição completa das opções de configuração disponíveis, consulte a documentação oficial da biblioteca.

Exemplo:

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

Especifique onde os certificados SAML são armazenados.

Padrão: file
Valores:

  • database - a chave privada e os certificados são armazenados no banco de dados;
  • file - a chave privada e os certificados são armazenados no sistema de arquivos.

Exemplo:

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

Caminho para o arquivo de chave privada do provedor de serviço SAML (SP) quando a chave privada está armazenada no sistema de arquivos.

Exemplo:

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

Caminho para o arquivo de certificado do provedor de serviço (SP) SAML quando o certificado está armazenado no sistema de arquivos.

Exemplo:

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

Caminho para o arquivo de certificado do provedor de identidade SAML quando o certificado está armazenado no sistema de arquivos.

Exemplo:

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

Ative ou desative o suporte a banners.

Padrão: true
Valores: true - ativado, false - desativado.

$ZBX_FEATURE_FLAGS['http_auth_enabled']

Habilita ou desabilita a autenticação HTTP do usuário.

Padrão: true
Valores: true - habilitado, false - desabilitado.

$ZBX_FEATURE_FLAGS['modules_config_enabled']

Habilita ou desabilita o acesso aos módulos.

Padrão: true
Valores: true - habilitado, false - desabilitado.

$ZBX_FEATURE_FLAGS['media_type_denylist']

Desabilita a edição de tipos de mídia pré-configurados específicos.

Valores: email, script, sms, webhook, push.

Exemplo:

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

Especifica se uma conexão TLS entre o frontend do Zabbix e o server do Zabbix está habilitada.

Padrão: false
Valores: true - habilitada, false - desabilitada.

$ZBX_SERVER_TLS['CA_FILE']

Caminho para o arquivo de certificado da Autoridade de Certificação (CA) usado para verificar o certificado do server.

Exemplo:

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

Caminho para o arquivo de chave privada do cliente correspondente ao certificado do cliente usado para autenticação TLS mútua.

Exemplo:

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

Caminho para o arquivo de certificado do cliente quando a autenticação TLS mútua é necessária.

Exemplo:

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

Nome distinto (DN) do emissor a ser comparado com o certificado do server.

Exemplo:

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

Nome distinto (DN) do sujeito a ser comparado com o certificado do server.

Exemplo:

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