2 LDAP
Pārskats
Ārējo LDAP autentifikāciju var izmantot, lai pārbaudītu lietotājvārdus un paroles.
Zabbix LDAP autentifikācija darbojas vismaz ar Microsoft Active Directory un OpenLDAP.
Ja ir konfigurēta tikai LDAP pierakstīšanās, tad lietotājam ir jāeksistē arī Zabbix, taču tā Zabbix parole netiks izmantota. Ja autentifikācija ir veiksmīga, tad Zabbix salīdzinās lokālu lietotājvārdu ar lietotājvārda atribūtu, ko atgriež LDAP.
Lietotāju nodrošināšana
LDAP lietotājiem ir iespējams konfigurēt JIT (just-in-time) lietotāju nodrošināšanu. Šādā gadījumā nav nepieciešams, lai lietotājs jau eksistētu Zabbix. Lietotāja kontu var izveidot, kad lietotājs pirmo reizi piesakās Zabbix.
Kad LDAP lietotājs ievada savu LDAP pieteikšanās vārdu un paroli, Zabbix pārbauda, vai šis lietotājs pastāv noklusējuma LDAP serverī. Ja lietotājs pastāv un viņam vēl nav konta Zabbix, Zabbix izveido jaunu lietotāju, un lietotājs var pieteikties.
Lietotājs, kas izveidots, izmantojot JIT nodrošināšanu, tiek saistīts ar LDAP serveri (direktoriju), kas izveides brīdī ir iestatīts kā noklusējuma serveris. Vēlāka noklusējuma LDAP servera maiņa nemaina un neatjaunina LDAP serveri, kas saistīts ar lietotājiem, kuri jau ir nodrošināti.
Ja JIT nodrošināšana ir iespējota, cilnē Authentication ir jānorāda lietotāju grupa nenodrošinātajiem lietotājiem.
JIT nodrošināšana ļauj arī atjaunināt nodrošināto lietotāju kontus, pamatojoties uz LDAP veiktajām izmaiņām. Piemēram, ja lietotājs tiek pārvietots no vienas LDAP grupas uz citu, arī Zabbix lietotājs tiks pārvietots no vienas grupas uz citu; ja lietotājs tiek noņemts no LDAP grupas, tas tiks noņemts arī no grupas Zabbix un, ja nepieder nevienai citai grupai, pievienots lietotāju grupai nenodrošinātajiem lietotājiem. Nodrošinātie lietotāju konti tiek atjaunināti, pamatojoties uz konfigurēto nodrošināšanas periodu vai tad, kad lietotājs piesakās Zabbix.
Ņemiet vērā, ka fona nodrošināšanu veic Zabbix lietotāja saskarne, kad lietotājs ar to mijiedarbojas vai pārlūkprogrammā ir atvērta vismaz viena lietotāja saskarnes lapa. Lietotāju nodrošināšanai nav paredzēti atsevišķi fona procesi.
LDAP atbalsta trīs veidus, kā autentifikācijai un meklēšanai piesaistīties direktorijai:
- Anonīma piesaiste - Bind DN / Bind password netiek norādīts, un LDAP serveris atļauj anonīmus vaicājumus.
- Īpašs piesaistes lietotājs (pakalpojuma konts) - Bind DN / Bind password tiek iestatīts konkrēts LDAP konts, ko Zabbix izmanto meklēšanai un nodrošināšanai. Šī ir ieteicamā un elastīgākā opcija, jo Zabbix var veikt meklēšanu un fona nodrošināšanu bez galalietotāja akreditācijas datiem.
- Tieša lietotāja piesaiste - Zabbix veic piesaisti, izmantojot akreditācijas datus, ko lietotājs ievada pieteikšanās laikā (nav konfigurēts Bind DN / Bind password); to konfigurē, Base DN iekļaujot vietturi, piemēram,
uid=%{user}. Šajā režīmā Zabbix piekļūst lietotāja parolei tikai interaktīvās pieteikšanās laikā. Tādēļ nodrošināšanas darbības, kurām nepieciešama autentifikācija LDAP ārpus lietotāja pieteikšanās sesijas (piemēram, izmantojot pogu Provision now vai palaižot fona nodrošināšanu, kad lietotājs nav aktīvi pieteicies), nevar veikt autentifikāciju un tādēļ nedarbosies. Nodrošināšana un atjaunināšana tiešas lietotāja piesaistes gadījumā notiek tikai lietotāja pieteikšanās brīdī.
Vairāki serveri
Ja nepieciešams, var definēt vairākus LDAP serverus. Piemēram, citu serveri var izmantot citas lietotāju grupas autentificēšanai. Kad LDAP serveri ir konfigurēti, lietotāju grupas konfigurācijā kļūst iespējams atlasīt attiecīgajai lietotāju grupai nepieciešamo LDAP serveri.
Ja lietotājs ir vairākās lietotāju grupās un vairākos LDAP serveros, autentificēšanai tiks izmantots pirmais serveris LDAP serveru sarakstā, kas sakārtots pēc nosaukuma augošā secībā.
Konfigurācija

Konfigurācijas parametri:
| Parameter | Description |
|---|---|
| Enable LDAP authentication | Atzīmējiet izvēles rūtiņu, lai iespējotu LDAP autentifikāciju. |
| Enable JIT provisioning | Atzīmējiet izvēles rūtiņu, lai iespējotu JIT nodrošināšanu. |
| Servers | Noklikšķiniet uz Add, lai konfigurētu LDAP serveri (skatiet tālāk LDAP server configuration). |
| Case-sensitive login | Noņemiet atzīmi no izvēles rūtiņas, lai lietotājvārdu pieteikšanās nebūtu reģistrjutīga (pēc noklusējuma iespējota). Reģistrjutīgas pieteikšanās atspējošana, piemēram, ļauj pieteikties kā "admin", pat ja Zabbix lietotājs ir "Admin" vai "ADMIN". Lūdzu, ņemiet vērā: ja reģistrjutīga pieteikšanās ir atspējota un ir vairāki Zabbix lietotāji ar līdzīgiem lietotājvārdiem (piem., Admin un admin), šo lietotāju pieteikšanās vienmēr tiks liegta ar šādu kļūdas ziņojumu: "Authentication failed: supplied credentials are not unique." |
| Provisioning period | Iestatiet nodrošināšanas periodu, t. i., cik bieži pieteicies lietotājs tiks nodrošināts, strādājot ar lietotāja saskarni. |
LDAP servera konfigurācija

LDAP servera konfigurācijas parametri:
| Parameter | Description |
|---|---|
| Name | LDAP servera nosaukums Zabbix konfigurācijā. |
| Host | LDAP servera resursdatora nosaukums, IP adrese vai URI. Piemēri: ldap.example.com, 127.0.0.1, ldap://ldap.example.com Drošam LDAP serverim izmantojiet ldaps protokolu un resursdatora nosaukumu. Piemērs: ldaps://ldap.example.com Izmantojot OpenLDAP 2.x.x un jaunāku versiju, var izmantot pilnu LDAP URI formā ldap://hostname:port vai ldaps://hostname:port. |
| Port | LDAP servera ports. Noklusējums ir 389. Drošam LDAP savienojumam porta numurs parasti ir 636. Netiek izmantots, ja tiek lietoti pilni LDAP URI. |
| Base DN | LDAP serverī lietotāju kontu bāzes ceļš: ou=Users,ou=system (OpenLDAP gadījumā), DC=company,DC=com (Microsoft Active Directory gadījumā) uid=%{user},dc=example,dc=com (tiešai lietotāja piesaistei, skatiet piezīmi zemāk) |
| Search attribute | LDAP konta atribūts, ko izmanto meklēšanai: uid (OpenLDAP gadījumā), sAMAccountName (Microsoft Active Directory gadījumā) |
| Bind DN | LDAP konts piesaistei un meklēšanai LDAP serverī, piemēri: uid=ldap_search,ou=system (OpenLDAP gadījumā), CN=ldap_search,OU=user_group,DC=company,DC=com (Microsoft Active Directory gadījumā) Tiek atbalstīta arī anonīma piesaiste. Ņemiet vērā, ka anonīma piesaiste potenciāli atver domēna konfigurāciju neatļautiem lietotājiem (informācija par lietotājiem, datoriem, serveriem, grupām, pakalpojumiem utt.). Drošības apsvērumu dēļ atspējojiet anonīmas piesaistes LDAP resursdatoros un izmantojiet autentificētu piekļuvi. |
| Bind password | LDAP konta parole piesaistei un meklēšanai LDAP serverī. |
| Description | LDAP servera apraksts. |
| Configure JIT provisioning | Atzīmējiet šo izvēles rūtiņu, lai parādītu ar JIT provisioning saistītās opcijas. |
| Group configuration | Atlasiet grupas konfigurācijas metodi: memberOf - meklējot lietotājus un viņu grupas dalības atribūtu groupOfNames - meklējot grupas, izmantojot member atribūtu Ņemiet vērā, ka memberOf ir ieteicamāka, jo tā ir ātrāka; izmantojiet groupOfNames, ja jūsu LDAP serveris neatbalsta memberOf vai ir nepieciešama grupu filtrēšana. |
| Group name attribute | Norādiet atribūtu, no kura iegūt grupas nosaukumu visiem objektiem memberOf atribūtā (skatiet lauku User group membership attribute)Grupas nosaukums ir nepieciešams lietotāju grupu kartēšanai. |
| User group membership attribute | Norādiet atribūtu, kas satur informāciju par grupām, kurām lietotājs pieder (piem., memberOf).Piemēram, memberOf atribūts var saturēt šādu informāciju: memberOf=cn=zabbix-admin,ou=Groups,dc=example,dc=comŠis lauks ir pieejams tikai memberOf metodei. |
| User name attribute | Norādiet atribūtu, kas satur lietotāja vārdu. |
| User last name attribute | Norādiet atribūtu, kas satur lietotāja uzvārdu. |
| User group mapping | Kartējiet LDAP lietotāju grupas modeli uz Zabbix lietotāju grupu un lietotāja lomu. Tas ir nepieciešams, lai noteiktu, kādu lietotāju grupu/lomu provisionētais lietotājs saņems Zabbix. Noklikšķiniet Add, lai pievienotu kartējumu. Lauks LDAP group pattern atbalsta aizstājējzīmes. Grupas nosaukumam jāsakrīt ar esošu grupu. Ja LDAP lietotājs atbilst vairākām Zabbix lietotāju grupām, lietotājs kļūst par visu šo grupu dalībnieku. Ja lietotājs atbilst vairākām Zabbix lietotāju lomām, lietotājs saņems to, kurai ir visaugstākais atļauju līmenis. |
| Media type mapping | Kartējiet lietotāja LDAP media atribūtus (piem., e-pastu) uz Zabbix lietotāja medijiem paziņojumu sūtīšanai (atribūta vērtība tiek izmantota kā medija Send to lauks). |
| Advanced configuration | Noklikšķiniet uz galvenes Advanced configuration, lai parādītu papildu konfigurācijas opcijas (skatiet zemāk). |
| StartTLS | Atzīmējiet izvēles rūtiņu, lai, savienojoties ar LDAP serveri, izmantotu StartTLS darbību. Savienojums neizdosies, ja serveris neatbalsta StartTLS. StartTLS nevar izmantot ar serveriem, kas izmanto ldaps protokolu. |
| Search filter | Definējiet pielāgotu virkni, autentificējot lietotāju LDAP. Tiek atbalstīti šādi vietturi:%{attr} - meklēšanas atribūta nosaukums (uid, sAMAccountName)%{user} - autentificējamā lietotāja lietotājvārda vērtībaPiemēram, lai veiktu reģistrjutīgu meklēšanu reģistrnejutīgā LDAP vai Microsoft Active Directory vidē, virkni var definēt šādi: (%{attr}:caseExactMatch:=%{user}).Ja filtrs nav pielāgots, LDAP izmantos noklusējumu: (%{attr}=%{user}). |
Lai konfigurētu LDAP serveri tiešai lietotāja piesaistei, pievienojiet atribūtu uid=%{user} parametram Base DN (piemēram, uid=%{user},dc=example,dc=com) un atstājiet parametrus BindDN un Bind password tukšus.
Autentificēšanās laikā vietturis %{user} tiks aizstāts ar lietotājvārdu, kas ievadīts pieteikšanās laikā.
Izmantojot tiešo lietotāja piesaisti, Zabbix piekļūst lietotāja akreditācijas datiem tikai interaktīvās pieteikšanās laikā.
Tāpēc provisioning uzdevumi, kas darbojas bez interaktīvas pieteikšanās (piemēram, poga Provision now vai user.provision API metode), ignorēs lietotājus, kuri autentificējas, izmantojot tiešo lietotāja piesaisti, jo Zabbix nevar piesaistīties viņu vārdā.
Ja nepieciešams, lai provisioning un LDAP meklēšana darbotos no lietotāja saskarnes, neprasot, lai gala lietotājs būtu pieteicies, izmantojiet anonīmu piesaisti vai atsevišķu piesaistes lietotāju (pakalpojuma kontu).
Tālāk norādītie lauki ir specifiski "groupOfNames" kā Group configuration metodei:

| Parameter | Description |
|---|---|
| Group base DN | Grupu bāzes ceļš LDAP serverī. |
| Group name attribute | Norādiet atribūtu, no kura iegūt grupas nosaukumu norādītajā grupu bāzes ceļā. Grupas nosaukums ir nepieciešams lietotāju grupu kartēšanai. |
| Group member attribute | Norādiet atribūtu, kas satur informāciju par grupas dalībniekiem LDAP (piem., member). |
| Reference attribute | Norādiet atsauces atribūtu grupas filtram (skatiet lauku Group filter). Pēc tam grupas filtrā izmantojiet %{ref}, lai iegūtu vērtības šeit norādītajam atribūtam. |
| Group filter | Norādiet filtru, lai izgūtu grupu, kuras dalībnieks ir lietotājs. Piemēram, (member=uid=%{ref},ou=Users,dc=example,dc=com) atbildīs "User1", ja grupas member atribūts ir uid=User1,ou=Users,dc=example,dc=com, un atgriezīs grupu, kuras dalībnieks ir "User1". |
Ja rodas problēmas ar sertifikātiem, lai drošs LDAP savienojums (ldaps) darbotos, iespējams, būs jāpievieno rinda TLS_REQCERT allow konfigurācijas failam /etc/openldap/ldap.conf.
Tas var samazināt savienojuma drošību ar LDAP katalogu.
Ieteicams izveidot atsevišķu LDAP kontu (Bind DN), lai veiktu piesaisti un meklēšanu LDAP serverī ar minimālām LDAP privilēģijām, nevis izmantotu reālus lietotāju kontus (kas tiek izmantoti pieteikšanās veikšanai Zabbix lietotāja saskarnē).
Šāda pieeja nodrošina lielāku drošību un neprasa mainīt Bind password, kad lietotājs maina savu paroli LDAP serverī.
Iepriekšējā tabulā tas ir konta nosaukums ldap_search.
Piekļuves testēšana
Poga Test ļauj pārbaudīt lietotāja piekļuvi:
| Parametrs | Apraksts |
|---|---|
| Login | LDAP lietotāja vārds testēšanai (iepriekš aizpildīts ar pašreizējā lietotāja vārdu no Zabbix lietotāja saskarne). Šim lietotāja vārdam jāeksistē LDAP serverī. Zabbix neaktivizēs LDAP autentifikāciju, ja tas nespēs autentificēt testa lietotāju. |
| User password | LDAP lietotāja parole testēšanai. |