Hlavní navigace

Lehký úvod do LDAP

Lukáš Zapletal 24. 7. 2000

V tomto článku si přečtete něco o základní koncepci LDAP (Lightweight Directory Access Protocol), možnosti využití v praxi a nakonec se podíváme, jak to všechno funguje na Linuxu.

I když je zkratka trochu zavádějící (někdo si může myslet, že jde o protokol pro přístup k adresářům na vzdáleném systému :), jedná se o adresářovou informační službu. V praxi to například znamená seznam lidí firmy, jejich přihlašovací jména, domovské adresáře, osobní informace, jména jejich e-mailů nebo čísla telefonů. LDAP může stejně tak dobře uchovávat nastavení uživatelských programů. Data se nemusejí nutně vztahovat na osoby, protokol může pomoct vyhledat různé přístroje ve velké firemní síti (např. fax nebo tiskárnu) a zobrazit jejich umístění či obsahovat různé číselníky (budov, pracovišť atd.).

Tabulka č. 79

Obrázek 1: Znázornění LDAP stromu

LDAP je jednoduchý a dobře navržený protokol umožňující nejen klást poměrně složité dotazy, ale i vkládat, modifikovat a mazat záznamy. Celou službu je možno si představit jako veliký strom či adresář na souborovém systému, který obsahuje celý svět. Tento strom obsahuje záznamy (entries). Každý záznam musí mít definovány atributy (attributes) – povinné a volitelné. Ty definujeme pomocí objektů (object class), které jsou nadefinovány na serveru. Standardně máte nadefinováno jen několik základních objektů typu person nebo organization. Další si již musíte nadefinovat sami (dle aplikace, která to vyžaduje). Dobrou studnou příkladů je Linuxcenter HK. Každý záznam (entry) ve stromu má jedinečné jméno, tzv. „distinguished name“ neboli „DN“. Příklad DN:

o=Firma ABC, s.r.o., c=CZ

Prvním záznamem je třída „country“, která má pouze jeden povinný atribut „c“. Níže ve stromu je třída „organization“, která má také jeden povinný atribut „o“. Tak to jde dále – pod organizací je organizační jednotka (organization unit) atd. Jednotlivé záznamy se v DN oddělují čárkami – mezera za čárkou není nutná.

Jistě si řeknete, jak je možné, aby LDAP umožňoval prohledat celý svět. Samozřejmě že každý LDAP server má na starosti určitou část (většinou je to právě konkrétní firma) – říkáme, že server má určenou základní DN (base DN) zónu. Je to podobné jako u DNS. Většina klientů je schopna vracet dotazy v tzv. LDIF (LDAP Data Interchange Format) formátu, který umí servery zase exportovat a importovat, což významnou mírou napomáhá distribuci a modifikaci dat. Ačkoliv je to textový formát, některé třídy mají binární atributy (např. třída jpegPhoto) a umožňují ukládat binární data (za pomocí kódování). Příklad takového LDIF záznamu:

dn: cn=lzap, ou=Informatika, o=Firma ABC, s.r.o., c=CZ
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
cn: lzap
givenName: Lukas
sn: Zapletal
mail: Lukas.Zapletal@firma.cz
description: Bla bla bla...

Výhodou tohoto řešení je možnost velmi efektivně nastavovat přístupová práva (dokonce i na jednotlivé atributy objektů). LDAP servery nabízejí také autentifikaci a dokonce i přes SSL, takže se o svá data nemusíte bát. Systém LDAP umožňuje repliky, takže můžete zátěž rozprostřít na více serverů.

A jaká má LDAP využití v praxi? Asi nejvýznamnější je autentifikační funkce. Server bude znát jména i hesla uživatelů a bude autentifikovat veškeré účty v síti (poštovní, ftp…). Výhodou je, že uživatelé budou mít na všechno jedno jméno a heslo. Dají se tak pohodlně „synchronizovat“ uživatelské účty na různých systémech (např. NOVELL nebo NT). Větší firmy mohou LDAP využít k vyhledávání informací o objektech v síti (osoby, emaily, tiskárny, faxy…). K prohledávání emailů stačí správně nakonfigurovat poštovní program – většina LDAP podporuje (Pegasus, Outlook, Netscape, Mozilla…). Když už píšu o Netscape – jejich Navigator 4.5 nebo vyšší si umí přes LDAP (pokud máte na LDAP serveru příslušné objekty a nastavena práva – u Netscape tomu říkají Roaming Access) uložit konfiguraci (adresář, cookies, filtry, záložky, historie, certifikáty…) – což je velmi výhodné nejen pro toho, kdo cestuje (kolikrát já už nějakým způsobem ztratil svoje bookmarky!).

Na Linuxu máme jako vždy několik možností. Co se týče serveru, bude pravděpodobně nejjednodušší použít OpenLDAP server, který vyvíjí open source komunita. Kdo chce, může začít s původním SLAPD serverem Mičigenské univerzity nebo použít jednu z komerčních distribucí např. od Innosoftu, ale my se nyní podíváme blíže právě na OpenLDAP.

V balíku naleznete vlastní démon (slapd), replikační server (slurpd), konzolové programy (LDAP klient, údržba databáze…), klientskou knihovnu a pomůcky pro export/import. Po klasickém ‚./configure;ma­ke;make install‘ (OpenLDAP můžete samozřejmě získat i ve formě RPM) nás čeká jednoduchá konfigurace. OpenLDAP server k uchování dat používá LDBM kompatibilní databázi (Sleepycat Berkeley DB 2.7.5 nebo GDBM), SHELL nebo passwd, což bohatě stačí, pokud uvážíme, že se data nějak zvlášť neaktualizují. Po startu démona stačí vytvořit ldif soubor a pomocí utility ldapadd data vložit. Nakonec můžete vše ještě otestovat programem ldapsearch. Komu se nebude líbit tento jednoduchý klient, může si vybrat z mnoha jiných (nejen pro Linux).

Našli jste v článku chybu?

13. 9. 2012 11:11

pecival (neregistrovaný)

Tohle mělo být napsaný na začátku toho článku ;)

11. 9. 2012 14:38

Terroir (neregistrovaný)

LDAP je extremne rychla pro cteni a extremne pomala pro zapis.

Lupa.cz: Proč firmy málo chrání data? Chovají se logicky

Proč firmy málo chrání data? Chovají se logicky

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

120na80.cz: Jmelí je více léčivé než jedovaté

Jmelí je více léčivé než jedovaté

Vitalia.cz: Jmenuje se Janina a žije bez cukru

Jmenuje se Janina a žije bez cukru

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí

Měšec.cz: Finančním poradcům hrozí vracení provizí

Finančním poradcům hrozí vracení provizí

Podnikatel.cz: Udávání kvůli EET začalo

Udávání kvůli EET začalo

120na80.cz: Na ucho teplý, nebo studený obklad?

Na ucho teplý, nebo studený obklad?

Podnikatel.cz: Zavře krám u #EET Malá pokladna a Teeta?

Zavře krám u #EET Malá pokladna a Teeta?

120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

Lupa.cz: Insolvenční řízení kvůli cookies? Vítejte v ČR

Insolvenční řízení kvůli cookies? Vítejte v ČR

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Vitalia.cz: Proč vás každý zubař posílá na dentální hygienu

Proč vás každý zubař posílá na dentální hygienu

Lupa.cz: Propustili je z Avastu, už po nich sahá ESET

Propustili je z Avastu, už po nich sahá ESET

Měšec.cz: Air Bank zruší TOP3 garanci a zdražuje kurzy

Air Bank zruší TOP3 garanci a zdražuje kurzy

Vitalia.cz: To není kašel! Správná diagnóza zachrání život

To není kašel! Správná diagnóza zachrání život

Podnikatel.cz: Chtějte údaje k dani z nemovitostí do mailu

Chtějte údaje k dani z nemovitostí do mailu

Vitalia.cz: Znáte „černý detox“? Ani to nezkoušejte

Znáte „černý detox“? Ani to nezkoušejte

Podnikatel.cz: Babiše přesvědčila 89letá podnikatelka?!

Babiše přesvědčila 89letá podnikatelka?!