[comment]: # ({c16c09cf-cebf8306})
# 1 Kontrola dostępu

[comment]: # ({/c16c09cf-cebf8306})

[comment]: # ({88806b0c-c4f0ac9a})
#### Przegląd

Ta sekcja zawiera najlepsze praktyki dotyczące bezpiecznej konfiguracji kontroli dostępu.

[comment]: # ({/88806b0c-c4f0ac9a})

[comment]: # ({2acc8f22-dc572a02})
#### Zasada najmniejszych uprawnień

Konta użytkowników powinny przez cały czas działać z możliwie najmniejszą liczbą uprawnień.
Oznacza to, że konta użytkowników w frontendzie Zabbix, użytkownicy bazy danych lub użytkownik dla procesów serwera/proxy/agent Zabbix powinni mieć tylko te uprawnienia, które są niezbędne do wykonywania zamierzonych funkcji.

::: noteimportant
Przyznanie dodatkowych uprawnień użytkownikowi 'zabbix' umożliwi mu dostęp do plików konfiguracyjnych i wykonywanie operacji, które mogą zagrozić bezpieczeństwu infrastruktury.
:::

Podczas konfigurowania uprawnień kont użytkowników należy uwzględnić [typy użytkowników frontend](/manual/config/users_and_usergroups/permissions) Zabbix.
Należy pamiętać, że chociaż typ użytkownika *Admin* ma mniej uprawnień niż typ użytkownika *Super Admin*, nadal może zarządzać konfiguracją i wykonywać niestandardowe skrypty.

::: noteclassic
Niektóre informacje są dostępne nawet dla użytkowników bez uprawnień.
Na przykład, chociaż *Alerts* → *Scripts* jest dostępne tylko dla użytkowników *Super Admin*, skrypty można również pobrać za pośrednictwem Zabbix API.
W takim przypadku ograniczenie uprawnień do skryptów i wykluczenie poufnych informacji ze skryptów (na przykład danych dostępowych) może pomóc uniknąć ujawnienia poufnych informacji dostępnych w globalnych skryptach.
:::

[comment]: # ({/2acc8f22-dc572a02})

[comment]: # ({883c2138-1631be73})
#### Bezpieczny użytkownik dla agenta Zabbix

Domyślnie procesy serwer, proxy i agent (lub agent 2) Zabbix współdzielą jednego użytkownika `zabbix`.
Aby zapobiec temu, by agent Zabbix/agent 2 (uruchomiony na tym samym komputerze co serwer/proxy) uzyskiwał dostęp do poufnych danych w konfiguracji serwera/proxy (na przykład poświadczeń bazy danych), agent powinien być uruchamiany pod innym użytkownikiem:

Dla agenta Zabbix:

1. Utwórz bezpieczną [grupę i użytkownika](/manual/installation/install#create-user-account) (np. `zabbix-agent`).
2. Ustaw tego użytkownika w parametrze [User](/manual/appendix/config/zabbix_agentd#user) pliku konfiguracyjnego agenta.
3. [Uruchom ponownie agenta](/manual/concepts/agent#if-installed-as-package), aby obniżyć uprawnienia do nowego użytkownika.

Dla agenta Zabbix 2 konfigurację należy zastosować na poziomie [usługi](https://www.freedesktop.org/software/systemd/man/latest/systemd.exec.html), ponieważ [plik konfiguracyjny agenta 2](/manual/appendix/config/zabbix_agent2) nie obsługuje parametru `User`.
Przykład znajduje się w zgłoszeniu [ZBX-26442](https://support.zabbix.com/browse/ZBX-26442).

[comment]: # ({/883c2138-1631be73})

[comment]: # ({582edb84-c02c850f})
#### Odebranie dostępu do zapisu do konfiguracji SSL (Windows)

Jeśli skompilowano agent Zabbixa w systemie Windows z OpenSSL znajdującym się w niezabezpieczonym katalogu (np. `C:\zabbix`, `c:\openssl-64bit`, `C:\OpenSSL-Win64-111-static` lub `C:\dev\openssl`), upewnij się, że użytkownicy niebędący administratorami nie mają prawa zapisu do tego katalogu.
W przeciwnym razie agent wczytuje ustawienia SSL ze ścieżki, którą mogą modyfikować użytkownicy bez uprawnień, co prowadzi do potencjalnej luki bezpieczeństwa.

[comment]: # ({/582edb84-c02c850f})

[comment]: # ({b96222b8-0f084225})
#### Utwardzanie bezpieczeństwa komponentów Zabbix

Niektóre funkcje można wyłączyć, aby zwiększyć bezpieczeństwo komponentów Zabbix:

-    Globalne wykonywanie skryptów na serwerze Zabbix można wyłączyć, ustawiając `EnableGlobalScripts=0` w [konfiguracji serwera](/manual/appendix/config/zabbix_server).
-    Globalne wykonywanie skryptów na proxy Zabbix jest domyślnie wyłączone (można je włączyć, ustawiając `EnableRemoteCommands=1` w [konfiguracji proxy](/manual/appendix/config/zabbix_proxy)).
-    Globalne wykonywanie skryptów na agentach Zabbix jest domyślnie wyłączone (można je włączyć, dodając parametr `AllowKey=system.run[<command>,*]` dla każdego dozwolonego polecenia w [konfiguracji agenta](/manual/appendix/config/zabbix_agentd)).
-    Uwierzytelnianie HTTP użytkownika można wyłączyć, ustawiając `$ALLOW_HTTP_AUTH=false` w [pliku konfiguracyjnym frontend](/manual/installation/frontend#install) (`zabbix.conf.php`). Należy pamiętać, że ponowna instalacja frontend (uruchomienie `setup.php`) spowoduje usunięcie tego parametru.

[comment]: # ({/b96222b8-0f084225})

[comment]: # ({11a9a375-95fd0cfc})
#### Dostęp do ścieżek UNC w systemie Windows przez agent Zabbix

Agenty Zabbix w systemie Windows obsługują ścieżki UNC (udziały SMB, takie jak `\\server\share\file.txt`) w pozycjach takich jak `vfs.file.*`, `vfs.dir.*`, `modbus.get` oraz `perf_counter*`. W niektórych kontekstach może to stanowić zagrożenie bezpieczeństwa.

Gdy system Windows otrzymuje żądanie dostępu do ścieżki UNC, próbuje uwierzytelnić się na tym serwerze. Oznacza to, że złośliwe żądanie do agenta Zabbix może ujawnić skrót NTLM na serwerze osoby wysyłającej żądanie. Użytkownicy mogą ograniczyć to ryzyko za pomocą parametrów konfiguracyjnych [AllowKey](/manual/appendix/config/zabbix_agentd_win#allowkey) i [DenyKey](/manual/appendix/config/zabbix_agentd_win#denykey), jeśli jest to potrzebne.

[comment]: # ({/11a9a375-95fd0cfc})
