Drošs savienojums ar lietotāja saskarni

Pārskats

Šajā sadaļā ir sniegti Zabbix iestatīšanas soļi un konfigurācijas piemēri drošiem TLS savienojumiem starp Zabbix lietotāja saskarni un Zabbix serveri.

Konfigurēšana

Pēc noklusējuma saziņa starp Zabbix lietotāja saskarni un Zabbix serveri nav šifrēta. Lai uzlabotu drošību, iespējojiet TLS abās pusēs. Tālāk ir sniegts piemērs, kā to izdarīt visvienkāršākajā veidā.

1. Ģenerējiet sertifikātus un atslēgas.

Izveidojiet darba direktoriju:

sudo mkdir -p /etc/zabbix/ssl && cd /etc/zabbix/ssl

Izveidojiet CA sertifikātu (pielāgojiet vērtību MyZabbixCA, lai tā atbilstu faktiskajam vispārpieņemtajam nosaukumam):

sudo openssl genrsa -out ca.key 4096
sudo openssl req -new -x509 -days 3650 -key ca.key -out ca.crt -subj "/CN=MyZabbixCA/"

Ģenerējiet privāto atslēgu un sertifikātu Zabbix serverim (pielāgojiet vērtību zabbix-server.example.com, lai tā atbilstu faktiskajam vispārpieņemtajam nosaukumam):

sudo openssl genrsa -out server.key 2048
sudo openssl req -new -key server.key -out server.csr -subj "/CN=zabbix-server.example.com/"
sudo openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -sha256 -out server.crt

Ģenerējiet privāto atslēgu un sertifikātu Zabbix lietotāja saskarnei (pielāgojiet vērtību zabbix-frontend-node, lai tā atbilstu faktiskajam vispārpieņemtajam nosaukumam):

sudo openssl genrsa -out frontend.key 2048
sudo openssl req -new -key frontend.key -out frontend.csr -subj "/CN=zabbix-frontend-node/"
sudo openssl x509 -req -days 365 -in frontend.csr -CA ca.crt -CAkey ca.key -CAcreateserial -sha256 -out frontend.crt

2. Iestatiet atbilstošas atļaujas.

Zabbix serverim (pielāgojiet īpašnieku/grupu atbilstoši jūsu izplatījuma Zabbix servera dēmona lietotājam):

sudo chown root:zabbix /etc/zabbix/ssl/server.{crt,key} /etc/zabbix/ssl/ca.crt
sudo chmod 640 /etc/zabbix/ssl/server.key
sudo chmod 644 /etc/zabbix/ssl/server.crt /etc/zabbix/ssl/ca.crt

Lietotāja saskarnei (pielāgojiet īpašnieku/grupu atbilstoši jūsu izplatījuma tīmekļa servera lietotājam):

sudo chown root:www-data /etc/zabbix/ssl/frontend.{crt,key}
sudo chmod 640 /etc/zabbix/ssl/frontend.key
sudo chmod 644 /etc/zabbix/ssl/frontend.crt

3. Konfigurējiet Zabbix serveri.

Servera konfigurācijas failā (zabbix_server.conf) pievienojiet:

TLSFrontendAccept=cert
TLSCertFile=/etc/zabbix/ssl/server.crt
TLSKeyFile=/etc/zabbix/ssl/server.key
TLSCAFile=/etc/zabbix/ssl/ca.crt
# Pēc izvēles:
# TLSFrontendCertIssuer=CN=MyZabbixCA
# TLSFrontendCertSubject=CN=zabbix-frontend-node

Pēc tam restartējiet serveri:

sudo systemctl restart zabbix-server

4. Konfigurējiet Zabbix lietotāja saskarni.

Web saskarnes instalēšanas laikā iespējojiet opciju Šifrēt savienojumus no web saskarnes (un, ja nepieciešams, opciju Pārbaudīt servera sertifikāta izdevēju un subjektu) un aizpildiet laukus TLS CA fails, TLS atslēgas fails, TLS sertifikāta fails (un, ja nepieciešams, laukus Servera TLS sertifikāta izdevējs un Servera TLS sertifikāta subjekts):

Parametrs Apraksts
TLS CA fails Norādiet pilnu ceļu uz sertificēšanas iestādes (CA) sertifikāta failu, kas tiek izmantots servera sertifikāta pārbaudei.
TLS atslēgas fails Norādiet pilnu ceļu uz klienta privātās atslēgas failu, kas atbilst klienta sertifikātam.
TLS sertifikāta fails Norādiet pilnu ceļu uz klienta sertifikāta failu, ja ir nepieciešama savstarpēja TLS autentifikācija.
Servera TLS sertifikāta izdevējs Norādiet izdevēja atšķirīgo nosaukumu (DN), kas jāsalīdzina ar servera sertifikātu.
Servera TLS sertifikāta subjekts Norādiet subjekta atšķirīgo nosaukumu (DN), kas jāsalīdzina ar servera sertifikātu.

Esošās instalācijās rediģējiet tālāk norādītos parametrus lietotāja saskarnes konfigurācijas failā:

$ZBX_SERVER_TLS['ACTIVE'] = 'true';
$ZBX_SERVER_TLS['CA_FILE'] = '/etc/zabbix/ssl/ca.crt';
$ZBX_SERVER_TLS['KEY_FILE'] = '/etc/zabbix/ssl/frontend.key';
$ZBX_SERVER_TLS['CERT_FILE'] = '/etc/zabbix/ssl/frontend.crt';
// Pēc izvēles:
// $ZBX_SERVER_TLS['CERTIFICATE_ISSUER']  = 'CN=MyZabbixCA';
// $ZBX_SERVER_TLS['CERTIFICATE_SUBJECT'] = 'CN=zabbix-server.example.com';

5. Pārbaudiet šifrēšanu, pārliecinoties, ka Zabbix lietotāja saskarnē vai Zabbix servera žurnālfailā nav kļūdu ziņojumu:

tail -f /var/log/zabbix/zabbix_server.log