This is a translation of the original English documentation page. Help us make it better.

2 Конфигурација PostgreSQL енкрипције

Преглед

Ова секција пружа неколико примера конфигурације шифровања за CentOS 8.2 и PostgreSQL 13.

Веза између Zabbix корисничког интерфејса и PostgreSQL-а не може бити шифрована (параметри у GUI су онемогућени), ако вредност поља Домаћина базе података почиње косом цртом или је поље празно.

Предуслови

Инсталирајте PostgreSQL базу података користећи званични репозиторијум.

PostgreSQL није конфигурисан да прихвата TLS конекције одмах по инсталацији. Молимо вас да пратите упутства из PostgreSQL документације за припрему сертификата помоћу postgresql.conf и такође за контролу приступа корисника преко ph_hba.conf.

Подразумевано, 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 корисничког интерфејса и база података:

  • Проверите * Шифровање TLS базе података*
  • Оставите Провери сертификат базе података неозначеним

Сервер

Да бисте омогућили шифровање само за транспорт за везе између сервера и базе података, конфигуришите /etc/zabbix/zabbix_server.conf:

...
       DBHost=10.211.55.9
       DBName=zabbix
       DBUser=zbx_srv
       DBPassword=<strong_password>
       DBTLSConnect=required
       ...

Шифровање са верификацијом ауторитета за сертификат

Кориснички интерфејс

Да бисте омогућили шифровање са верификацијом ауторитета за сертификате за везе између Zabbix корисничког интерфејса и базе података:

  • Проверите * TLS шифровање базе података* и Верификовање сертификата базе података
  • Наведите путању до TLS CA датотеке базе података

Алтернативно, ово се може подесити у /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 корисничког интерфејса и базе података:

  • Проверите Шифровање TLS базе података и Верификујте сертификат базе података
  • Наведите путању до Кључ TLS датотеке базе података
  • Наведите путању до Датотеке TLS CA базе података
  • Одредите путању до Датотеке TLS сертификата базе података
  • Проверите верификацију домаћина базе података

Алтернативно, ово се може подесити у /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 сервера и базе података, конфигуришите /etc/zabbix/zabbix_server.conf:

...
       DBHost=10.211.55.9
       DBName=zabbix
       DBUser=zbx_srv
       DBPassword=<strong_password>
       DBTLSConnect=verify_full
       DBTLSCAFile=/etc/ssl/pgsql/root.crt
       DBTLSCertFile=/etc/ssl/pgsql/client.crt
       DBTLSKeyFile=/etc/ssl/pgsql/client.key
       ...