設定パラメータ: Zabbix Webインターフェース

概要

設定パラメータを使用すると、ZabbixのWebインターフェースの動作をカスタマイズできます。

パラメータ値は、Webインターフェース設定ファイルzabbix.conf.php)で指定します。

このページは次のように構成されています。

  • パラメータの概要(パラメータの詳細を確認するには、その名前をクリックしてください)
  • パラメータの詳細
パラメータ 説明
$DB['TYPE'] データベースのタイプ。
$DB['SERVER'] データベースのホスト名またはIPアドレス。
$DB['PORT'] データベースのポート。
$DB['DATABASE'] ZabbixのWebインターフェースが設定済みのデータベースへの接続に使用するデータベース名。
$DB['USER'] ZabbixのWebインターフェースがデータベースへの接続に使用するユーザー名。
$DB['PASSWORD'] ZabbixのWebインターフェースがデータベースへの接続に使用するパスワード。
$DB['SCHEMA'] PostgreSQLで使用するデータベーススキーマ名。
$DB['ENCRYPTION'] ZabbixのWebインターフェースとデータベース間の接続におけるTLS暗号化を有効または無効にします。
$DB['KEY_FILE'] データベースTLS接続に使用するクライアント秘密鍵ファイルへのパス。
$DB['CERT_FILE'] データベースTLS接続に使用するクライアント証明書ファイルへのパス。
$DB['CA_FILE'] データベースTLS接続に使用するCA証明書ファイルへのパス。
$DB['VERIFY_HOST'] TLS証明書内のデータベースサーバーのホスト名の検証を有効または無効にします。
$DB['CIPHER_LIST'] データベース接続で許可されるTLS暗号のリスト。
$DB['VAULT'] データベース認証情報の保存に使用するVaultシークレットマネージャーを指定します。
$DB['VAULT_URL'] データベース認証情報の取得に使用するVaultシークレットマネージャーのURL。
$DB['VAULT_PREFIX'] データベース認証情報の取得に使用するVaultパスまたはクエリのプレフィックス。
$DB['VAULT_DB_PATH'] Vaultシークレットマネージャー内のデータベース認証情報へのパス。
$DB['VAULT_TOKEN'] Vaultシークレットマネージャーへのアクセスに使用する認証トークン。
$DB['VAULT_APP_ROLE_ID'] HashiCorp Vaultへの認証に使用するAppRoleロールID。
$DB['VAULT_APP_SECRET_ID'] HashiCorp Vaultへの認証に使用するAppRoleシークレットID。
$DB['VAULT_CERT_FILE'] Vaultシークレットマネージャーへの認証に使用するクライアント証明書ファイルへのパス。
$DB['VAULT_KEY_FILE'] Vaultシークレットマネージャーへの認証に使用するクライアント秘密鍵ファイルへのパス。
$DB['VAULT_CACHE'] Vaultシークレットマネージャーから取得した認証情報のキャッシュを有効または無効にします。
$ZBX_SERVER Zabbixのホスト名/IPアドレスを上書きする値を指定します。
$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'] 秘密鍵をファイルシステムに保存する場合の、SAMLサービスプロバイダー(SP)秘密鍵ファイルへのパス。
$SSO['SP_CERT'] 証明書をファイルシステムに保存する場合の、SAMLサービスプロバイダー(SP)証明書ファイルへのパス。
$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'] Zabbixサーバーへの接続でTLSが有効かどうかを指定します。
$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']

設定されたデータベースへの接続にWebインターフェースが使用するデータベース名。

例:

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

ZabbixのWebインターフェースがデータベースへの接続に使用するユーザー名。

$DB['PASSWORD']

ZabbixのWebインターフェースがデータベースへの接続に使用するパスワード。

$DB['SCHEMA']

PostgreSQLで使用するデータベーススキーマ名。

$DB['ENCRYPTION']

ZabbixのWebインターフェースとデータベース間の接続に対する暗号化を有効または無効にします。

値: 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']

データベースの TLS 接続に使用する CA 証明書ファイルのパス。

例:

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

データベース認証情報の取得に使用するVaultシークレットマネージャーのURL。

例:

// 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 secrets manager内のデータベース認証情報へのパス。

例:

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

Vaultシークレットマネージャーへのアクセスに使用する認証トークン。

例:

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

HashiCorp Vault の認証に使用する VaultAppSecretID のロール ID。

例:

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

HashiCorp Vaultへの認証に使用するVaultAppSecretID。

例:

$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

Zabbixのホスト名/IPアドレスを上書きする値を指定します。
$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'] 配列は、Zabbixに付属する SAML PHP Toolkit ライブラリ(提供)で想定されている構造に従う必要があります。

$SSO['SETTINGS'] では、次のオプションのみ指定できます。

  • strict
  • baseurl
  • compress
  • contactPerson
  • organization
  • sp(このリストに記載されているオプションのみ)
    • attributeConsumingService
    • x509certNew
  • idp(このリストに記載されているオプションのみ)
    • singleLogoutService(オプションは1つのみ)
      • responseUrl
    • certFingerprint
    • certFingerprintAlgorithm
    • x509certMulti
  • security(このリストに記載されているオプションのみ)
    • signMetadata
    • wantNameId
    • requestedAuthnContext
    • requestedAuthnContextComparison
    • wantXMLValidation
    • relaxDestinationValidation
    • destinationStrictlyMatches
    • rejectUnsolicitedResponsesWithInResponseTo
    • signatureAlgorithm
    • digestAlgorithm
    • lowercaseUrlencoding

その他すべてのオプションはデータベースから取得され、上書きできません。 debug オプションは無視されます。

Zabbix UIがプロキシまたはロードバランサーの背後にある場合は、カスタムの use_proxy_headers オプションを使用できます。

  • false(デフォルト) - X-Forwarded-* HTTPヘッダーを無視します。
  • true - X-Forwarded-* HTTPヘッダーを使用してベース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 IDプロバイダー証明書ファイルへのパス。

例:

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

事前設定された特定のメディアタイプの編集を無効にします。

値: emailscriptsmswebhookpush

例:

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

ZabbixのWebインターフェースとZabbixサーバー間のTLS接続を有効にするかどうかを指定します。

デフォルト: 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']

サーバー証明書と照合する発行者の識別名(DN)。

例:

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

サーバー証明書と照合するサブジェクトの識別名(DN)。

例:

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