このセクションでは、CentOS8.2およびPostgreSQL13の暗号化設定例をいくつか示します。
Database hostフィールドの値がスラッシュで始まるか、空の場合、ZabbixフロントエンドとPostgreSQL間の接続を暗号化できません(GUIのパラメーターが無効になっています)
公式リポジトリを使用してPostgreSQLデータベースをインストールします。
PostgreSQLは、すぐにTLS接続を受け入れるように構成されていません。postgresql.confを使用した証明書の準備およびph_hba.confを介したユーザーアクセス制御については、PostgreSQLのドキュメントの指示に従ってください。
デフォルトでは、PostgreSQLソケットはローカルホストにバインドされています。これは、ネットワークリモート接続が実際のネットワークインターフェイスでリッスンできるようにするためです。
すべてのモード のPostgreSQL設定は次のようになります。
/var/lib/pgsql/13/data/postgresql.conf:
... ssl = on ssl_ca_file = 'root.crt' ssl_cert_file = 'server.crt' ssl_key_file = 'server.key' ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' ssl_prefer_server_ciphers = on ssl_min_protocol_version = 'TLSv1.3' ...アクセス制御については/var/lib/pgsql/13/data/pg_hba.confを調整します。
... ### require hostssl all all 0.0.0.0/0 md5 ### verify CA hostssl all all 0.0.0.0/0 md5 clientcert=verify-ca ### verify full hostssl all all 0.0.0.0/0 md5 clientcert=verify-full ...Zabbixフロントエンドとデータベース間の接続でトランスポートのみの暗号化を有効にするには:

サーバーとデータベース間の接続に対してトランスポートのみの暗号化を有効にするには/etc/zabbix/zabbix_server.confを設定します:
... DBHost=10.211.55.9 DBName=zabbix DBUser=zbx_srv DBPassword=<strong_password> DBTLSConnect=required ...Zabbixフロントエンドとデータベース間の接続の認証局検証による暗号化を有効にするには:

または、これは/etc/zabbix/web/zabbix.conf.php:で設定できます。
... $DB['ENCRYPTION'] = true; $DB['KEY_FILE'] = ''; $DB['CERT_FILE'] = ''; $DB['CA_FILE'] = '/etc/ssl/pgsql/root.crt'; $DB['VERIFY_HOST'] = false; $DB['CIPHER_LIST'] = ''; ...Zabbixサーバーとデータベース間の接続の証明書検証による暗号化を有効にするには、/etc/zabbix/zabbix_server.confを設定します。
... DBHost=10.211.55.9 DBName=zabbix DBUser=zbx_srv DBPassword=<strong_password> DBTLSConnect=verify_ca DBTLSCAFile=/etc/ssl/pgsql/root.crt ...Zabbixフロントエンドとデータベース間接続の証明書とデータベースホストID検証による暗号化を有効にするには:

または/etc/zabbix/web/zabbix.conf.phpで設定:
$DB['ENCRYPTION'] = true; $DB['KEY_FILE'] = ''; $DB['CERT_FILE'] = ''; $DB['CA_FILE'] = '/etc/ssl/pgsql/root.crt'; $DB['VERIFY_HOST'] = true; $DB['CIPHER_LIST'] = ''; ...Zabbixサーバーとデータベース間の接続の証明書とデータベースホストID検証による暗号化を有効にするには/etc/zabbix/zabbix_server.confを設定します。