LDAP HOGYAN

Luiz Ernesto Pinheiro Malère

v1.09, 2004.03.05

Verzi�t�rt�net
Verzi�: 1.092004.03.05
OpenLDAP 2.2 �s �ltal�nos jav�t�sok.
Verzi�: 1.082003.04.02
SASL, DIGEST-MD5 hiteles�t�ssel.
Verzi�: 1.072002.09.16
Szed�si jav�t�sok.
Verzi�: 1.062002.07.17
�tt�r�s a Docbook XML standard form�tumra, a sz�veg teljes fel�lvizsg�lata. OpenLDAP 2.1 bemutat�sa.
Verzi�: 1.052001.06.22�tdolgozta: lepm
Megold�s a "hossz� sorok" probl�m�ra (a doksi PDF form�ban sz�tcs�szott).
Verzi�: 1.042001.02.28�tdolgozta: lepm
Tipogr�fiai jav�t�sok, �s a "Roaming Access", "Azonos�t�s LDAP seg�ts�g�vel" fejezetek friss�t�se.
Verzi�: 1.032000.09.28�tdolgozta: lepm
Az OpenLDAP 2.0 bemutat�sa, ami m�r az LDAP v3-at tartalmazza, idev�g� szabv�ny: RFC2251
Verzi�: 1.022000.09.13�tdolgozta: lepm
Sz�veg jav�t�sok, �j fejezet a "Verzi�t�rt�net".
Verzi�: 1.012000.02.15�tdolgozta: lepm
�j fejezetek az "LDAP migr�ci�s eszk�z�k", "Azonos�t�s LDAP haszn�lat�val", "Grafikus LDAP eszk�z�k", "RFC-k"
Verzi�: 1.001999.06.20�tdolgozta: lepm
A legels� v�ltozat.

Tartalomjegyz�k
1. Bevezet�s
1.1. Mi az LDAP?
1.2. Az LDAP m�k�d�se
1.3. LDAP h�tterek, objektumok �s tulajdons�gok
1.4. A dokumentum �jabb v�ltozatai
1.5. Javaslatok �s v�lem�nyek
1.6. K�sz�netnyilv�n�t�s
1.7. Szerz�i jog �s licenc
1.8. Magyar ford�t�s
2. Az LDAP szerver telep�t�se
2.1. El�felt�telek
2.2. A csomag let�lt�se
2.3. A szerver csomag kit�m�r�t�se
2.4. A program be�ll�t�sa
2.5. A szerver ford�t�sa
3. Az LDAP szerver konfigur�l�sa
3.1. Konfigur�ci�s file form�tuma
3.2. �ltal�nos be�ll�t�si lehet�s�gek
3.3. �ltal�nos h�tt�r opci�k
3.4. �ltal�nos h�tt�r opci�k
3.5. BDB adatb�zis direkt�v�k
3.6. LDBM adatb�zis lehet�s�gek
3.7. Hozz�f�r�s szab�lyoz�si p�ld�k:
3.8. Konfigur�ci�s f�jl p�lda
4. Az LDAP szerver futtat�sa
4.1. Parancssori opci�k
4.2. Az LDAP kiszolg�l� ind�t�sa
4.3. Az LDAP kiszolg�l� le�ll�t�sa
5. Adatb�zis l�trehoz�s �s karbantart�sa
5.1. Adatb�zis online l�trehoz�sa
5.2. Adatb�zis offline l�trehoz�sa
5.3. B�vebben az LDIF form�tumr�l
5.4. Az ldapsearch, ldapdelete �s az ldapmodify progrmok
6. Kieg�sz�t� inform�ci�k �s lehet�s�gek
6.1. LDAP Migr�ci�s Eszk�z�k
6.2. Azonos�t�s LDAP haszn�lat�val
6.3. SASL konfigur�ci� : Digest-MD5 azonos�t�s
6.4. Grafikus LDAP eszk�z�k
6.5. Napl�k
7. Referenci�k
7.1. URL-ek
7.2. K�nyvek
7.3. RFC-k
A t�bl�zatok list�ja
3-1. Hibakeres� szintek
3-2. Adatb�zis h�tterek
4-1. Hibak�vet�s szintje

Fejezet 1. Bevezet�s

Ez a dokumentum az LDAP szerver telep�t�s�nek �s haszn�lat�nak le�r�sa Linux oper�ci�s rendszeren. Tartalmazza, hogyan telep�thet�, konfigur�lhat�, �s �zemeltethet� az LDAP szerver, �s ezek ut�n hogyan t�rolhat�k, kereshet�k �s friss�thet�k adatok az adatb�zisban, LDAP kliensek �s seg�dprogramok haszn�lat�val. Az LDAP c�mt�r szolg�ltat�st ny�jt� d�mont slapd-nek hivj�k, �s sok k�l�nb�z� Unix platformon fut.

Egy m�sik d�mon gondoskodik az LDAP szerverek k�z�tti replik�ci�r�l. Ezt slurpd-nek h�vj�k, �s egyel�re nem foglalkozunk vele. Ez a dokument�ci� a slapd d�monr�l sz�l, amely lok�lis h�l�zatokon ny�jt c�mt�rszolg�ltat�st, replik�ci� - vagyis slurpd - n�lk�l. Tov�bbi inform�ci�t a t�bbsz�r�z�sr�l a OpenLDAP Administrator's Guide (OpenLDAP adminisztr�torok k�zik�nyve) dokumentumban tal�lsz.

Az LDAP szervernek ez az egyszer� be�ll�t�sa megfelel� kezd�s lesz, amelyet k�s�bb k�nnyen tov�bbfejleszthetsz, ha akarsz. Ez a dokument�ci� bemutatja az LDAP protokoll haszn�lat�hoz sz�ks�ges kezdeti l�p�seket. Lehets�ges, hogy miut�n v�gig�r�nk a dokumentumon el�g er�t �rzel majd magadban a tov�bbi fejleszt�i munk�hoz, a szerver lehet�s�geinek min�l teljesebb kihaszn�l�s�hoz - s�t, saj�t kliens programoz�s�hoz - a fellelhet� C, C++ �s Java fejleszt� eszk�z�kkel.


1.1. Mi az LDAP?

Az LDAP bet�sz� az angol "Lightweight Directory Access Protocol" (k�nny� c�mt�r el�r�si protokoll) kifejez�sb�l sz�rmazik. Ahogy a n�v is sugalmazza az LDAP kliens-szerver protokoll, c�mt�r szolg�ltat�s el�r�s�hez, melyet eleinte f�leg X.500 hozz�f�r�shez alkalmaztak. Az LDAP TCP/IP vagy m�s kapcsolat orient�lt �tviteli szolg�ltat�st haszn�lhat. Az LDAP az RFC2251-ben - "The Lightweight Directory Access Protocol (v3)" - van defini�lva. (M�g egy URL: RFC2251 - a ford�t�)

A c�mt�r olyan, mint egy adatb�zis, de arra t�rekszik, hogy mag�ba foglaljon egy r�szletesebb, tulajdons�g alap� inform�ci�kezel�st. �ltal�ban az inform�ci�t a c�mt�rban gyakrabban olvass�k, mint �rj�k. Ennek k�vetkezt�ben a c�mt�rak �ltal�ban nem alkalmaznak bonyolult tranzakci� kezel�st vagy roll-back rendszereket, amiket �ltal�ban az adatb�ziskezel�k haszn�lnak a nagy m�ret�, �sszetett friss�t�sekhez. A c�mt�r aktualiz�l�sa tipikusan egyszer�, mindent vagy semmit jelleg� v�ltoz�s. A c�mt�rakat �sszetett k�rd�sek gyors megv�laszol�s�ra hangolt�k. K�pes arra, hogy sz�les k�rben sokszoros�tsa az inform�ci�kat az�rt, hogy n�velje az el�rhet�s�get �s a rendelkez�sre �ll�st, mik�zben a v�laszid�t cs�kkenti. A t�bbsz�r�z�tt c�mt�r inform�ci�k egyes p�ld�nyai k�z�tt �tmeneti rendezetlens�g megengedett, de a t�bbsz�r�z�sek (replica) v�g�l szinkronba ker�lnek.

Sok k�l�nb�z� lehet�s�g van c�mt�r szolg�ltat�s ny�jt�s�ra. K�l�nb�z� elj�r�sokkal m�s �s m�s inform�ci�k t�rolhat�k a c�mt�rban, k�l�nb�z� k�vetelm�nyek szerint lehet hivatkozni az inform�ci�kra, lek�rdezni �s friss�teni az adatokat, megv�deni azokat a meg nem engedett hozz�f�r�st�l, stb. N�h�ny c�mt�r szol�ltat�s lok�lis, �s korl�tozott k�rnyezetben ny�jt szolg�ltat�sokat (p�ld�ul a finger szolg�ltat�s �n�ll� g�pen). M�s szolg�ltat�sok glob�lisak, sz�les k�rben el�rhet�ek.


1.3. LDAP h�tterek, objektumok �s tulajdons�gok

Az LDAP szerver d�mon neve Slapd, ez t�bb k�l�nb�z�, szabadon v�laszthat� h�tt�r adatb�zis haszn�lat�t t�mogatja.

Ezek k�z�tt van az els�dlegesen t�mogatott BDB, egy nagy teljes�tm�ny� tranzakci�s h�tt�r adatb�zis; az LDBM, a egyszer� DBM-re �p�l� h�tt�r-adatb�zis (database backend); a SHELL, az adatb�zis interf�sz tetsz�leges UNIX parancs vagy shell szkript el�r�s�hez, �s a PASSWD, a passwd(5) jelsz� adatb�zis el�r�s�hez.

BDB seg�deszk�z�k: Sleepycat Berkeley DB 4. LDBM seg�deszk�z�k: Berkeley DB vagy a GDBM.

A BDB tranzakci�s h�t�r adatb�zist t�bbfelhaszn�l�s olvas�si/�r�si adatb�zis el�r�sre fejlesztett�k ki, mindenf�le olvas�si/�r�si m�velet kombin�ci�j�val. A BDB olyan programokkal haszn�lhat� egy�tt, melyekhez sz�ks�gesek a k�vetkez�k:

  • Tranzakci�k, bele�rtve a t�bbsz�r�s v�ltoztat�st az adatb�zison, a vissza�ll�t�s lehet�s�g�vel egy�tt.

  • A rendszer�sszeoml�sokb�l �s hardverhib�kb�l fakad� hib�k helyre�ll�t�s�nak k�pess�ge, minden lezajlott tranzakci� elveszt�se n�lk�l.

Ez a le�r�s a BDB h�tt�r adatb�zis haszn�lat�t felt�telezi.

A c�mt�r inform�ci�k import�l�sa �s export�l�sa k�t LDAP alap� c�mt�rszolg�ltat� szerver k�z�tt, �s a c�mt�rakban alkalmazott v�ltoz�sok le�r�sa az LDIF form�tumk�nt ismert (LDAP Data Interchange Format; LDAP adatcser�l�si form�tum) f�jlokkal lehets�ges. Az LDIF f�jl a bejegyz�seket objektum orient�lt hierarchikus form�ban t�rolja. Az LDAP csomag tartalmazza az LDIF f�jlok BDB form�tumba konvert�l�s�hoz sz�ks�ges eszk�z�ket.

Egy LDIF f�jl �ltal�ban �gy n�z ki:

dn: o=TUDelft, c=NL
o: TUDelft
objectclass: organization
dn: cn=Luiz Malere, o=TUDelft, c=NL
cn: Luiz Malere
sn: Malere
mail: malere@yahoo.com
objectclass: person

Mint l�that�, minden bejegyz�snek saj�t azonos�t�ja van, a distinguished name (DN; megk�l�nb�ztet� n�v). A DN a bejegyz�s nev�b�l �ll, megtoldva a n�v el�r�si �tj�val vissza a c�mt�r hierarchia cs�cs�ig (mint egy f�n�l).

Az LDAP-n�l az objektumoszt�lyok hat�rozz�k meg a bejegyz�sek azonos�t�s�hoz haszn�lhat� jellemz�k csoportj�t. Az LDAP standard az al�bbi alapvet� objektum oszt�lyokat ny�jtja:

  • Group (csoport), f�ggetlen objektumok rendezetlen list�ja vagy objektumok csoportja.

  • Location (elhelyezked�s), az orsz�gok nevei �s le�r�suk.

  • Organization (szervezet).

  • People (szem�ly).

Egy bejegyz�s t�bb objektumoszt�lyhoz is tartozhat. P�ld�ul a person bejegyz�st defini�lja a person objektumoszt�ly, de szint�n defini�lj�k az inetOrgPerson, groupOfNames �s organization objektumoszt�lyok. Az LDAPserver objektumoszt�ly strukt�r�j�t (s�m�j�t) meghat�rozza az egyes bejegyz�sek sz�m�ra sz�ks�ges �s enged�lyezett attrib�tumok egy�ni list�ja.

A c�mt�r az adatokat jellemz�-�rt�k (attribute-value) p�rosk�nt jelen�ti meg. Az inform�ci� meghat�rozott darabjai a le�r� attrib�tumhoz tartoznak.

P�ld�ul, a commonName (k�zn�v), vagy cn attrib�tum az egy�nek nev�t t�rolja. A Jonas Salk nev� embert a c�mt�rban a k�vetkez� bejegyz�s azonos�tja:

cn: Jonas Salk

Minden, a c�mt�rban bejegyzett egy�nt a person objektumoszt�lyban t�rolt jellemz�k csoportja �r le. M�s jellemz�ket is lehet ugyanabban a bejegyz�sben haszn�lni:

givenname: Jonas
surname: Salk
mail: jonass@airius.com

A bejegyz�shez sz�ks�ges jellemz�ket tartalmaznia kell a haszn�lt objektumoszt�lynak. Minden bejegyz�snek tartalmaznia kell az objectClass-t, ami a bejegyz�shez tartoz� objektumoszt�lyok list�j�t tartalmazza.

Az enged�lyezett jellemz�knek szerepelnie kell a haszn�lt objektumoszt�lyban. P�ld�ul, a person objektumoszt�lyban a cn �s sn jellemz�k sz�ks�gesek. A le�r�sban a telephoneNumber, seeAlso �s userpassword jellemz�k enged�lyezettek, de nem sz�ks�gesek.

Minden attrib�tumnak meghat�rozott szintaxis-defin�ci�ja van. A szintaxis-defin�ci� inform�ci�t ny�jt a jellemz�r�l, mint p�ld�ul:

  • bin binary (bin�ris)

  • ces case exact string (bet�nagys�gnak meg kell egyeznie az �sszehasonl�t�s sor�n).

  • cis case ignore string (bet�nagys�gnak nem kell egyeznie az �sszehasonl�t�s sor�n).

  • tel telephone number string (olyan, mint a cis, de a "-" kihagy�s�val).

  • dn distinguished name (megk�l�nb�ztet� n�v).

Figyelem! Az objektumoszt�lyok �s a jellemz�k �ltal�ban egy - az OpenLDAP telep�t�si k�nyvt�r�ban a schema alk�nyvt�rban tal�lhat� s�ma-f�jl szerint �llnak �ssze.


1.8. Magyar ford�t�s

A magyar ford�t�st Hal�sz G�bor k�sz�tette (2000). A ford�t�st V�lgyi P�ter friss�tette (2004.01.26). A friss�t�st lektor�lta Kormos Gy�rgy (2004.03.16). Az utols� friss�t�st Daczi L�szl� jelenleg is v�gzi. Eme dokumentum legfrissebb v�ltozata megtal�lhat� a Magyar Linux Dokument�ci�s Projekt honlapj�n.


Fejezet 2. Az LDAP szerver telep�t�se

�t l�p�s sz�ks�ges a szerver telep�t�s�hez:

(Az�rt egyszer�bb, ha a kedvenc disztrib�ci�dban tal�lhat� OpenLDAP csomagot haszn�lod, ahelyett, hogy a forr�ssal bajl�dn�l - a ford�t�)


2.1. El�felt�telek

Az LDAPv3 m�k�d�s�hez az OpenLDAP kliensnek �s szervernek sz�ks�ge van tov�bbi csomagok telep�t�s�re is. E dokumentum �r�s�hoz dobozos Mandrake 9.0-t haszn�ltam, 2.4.20-as rendszermaggal, forr�sb�l telep�tettem a Berkeley BDB-t �s a SASL programk�nyvt�rakat.

OpenSSL TLS programk�nyvt�rak

Az OpenSSL TLS programk�nyvt�rai �ltal�ban az alaprendszer r�sz�t k�pezik, vagy opcion�lis programr�szk�nt jelennek meg. Az OpenSSL hivatalosan a http://www.openssl.org webhelyen tal�lhat�.

Azonos�t�s Kerberos-szal

Az OpenLDAP kliensek �s szerverek t�mogatj�k a Kerberos alap� azonos�t�st. Az OpenLDAP kiemelten t�mogatja a Heimdal vagy MIT Kerberos V alap� SASL/GSSAPI azonos�t�si met�dust. Ennek a haszn�lat�hoz a megfelel� csomagokat (Heimdal vagy MIT Kerberos V) telep�teni kell. A Heimdal Kerberos a http://www.pdc.kth.se/heimdal, a MIT Kerberos a http://web.mit.edu/kerberos/www webhelyen tal�lhat� meg.

A Kerberos szint�, emelt biztons�gi fok� azonos�t�s haszn�lata er�sen javasolt.

A Cyrus f�le SASL programk�nyvt�rak

A Cyrus f�le SASL (Simple Authentication and Security Layer; egyszer� azonos�t�s �s biztons�gi szint) programk�nyvt�rak �ltal�ban az alaprendszer r�sz�t k�pezik, vagy kieg�sz�t� csomagokk�nt tal�lhat�ak meg. A Cyrus SASL a http://asg.web.cmu.edu/sasl/sasl-library.html webhelyen tal�lhat� meg. A Cyrus SASL csak akkor tudja haszn�lni az OpenSSL �s a Kerberos/GSSAPI programk�nyvt�rakat, ha azokat el�bb telep�ted n�la. A dokumentum �r�sa sor�n a Cyrus SASL 2.1.17 verzi�j�t haszn�ltam.

Adatb�zis szoftverek

A Slapd's els�dleges adatb�zis h�ttere a BDB, m�k�d�s�hez sz�ks�ges a Sleepycat Software Berkeley DB (v4). Amennyiben a be�ll�t�skor nem �ll rendelkez�sre, akkor a slapd-t nem lehet els�dleges h�ttt�r adatb�zissal haszn�lni.

Ha nincs sem az alap Linux rendszereden, sem kieg�sz�t� csomagk�nt Berkeley DB (v4), a legegyszer�bben a Sleepycat webhelyen lehet hozz�jutni. A dokumentum friss�t�se idej�n a leg�jabb stabil, �s aj�nlott verzi� a 4.2.52-es. Az OpenLDAP slapd LDBM h�tt�r t�bbf�le adatb�zis kezel�, menedzsel� fel�let haszn�lat�t t�mogatja, �gy p�ld�ul a Berkeley DB (v3) �s a GDBM haszn�lat�t is. A GDBM let�lthet� az FSF webhely�r�l, amely a ftp://ftp.gnu.org/pub/gnu/gdbm/ honlapon tal�lhat�.

Sz�lak

A t�bbsz�l�s�g nagy val�sz�n�s�ggel alap�rtelmezetten t�mogatott a Linux rendszereden. Az OpenLDAP-t �gy tervezt�k, hogy ennek el�nyeit kihaszn�lhassa. Az OpenLDAP t�mogatja a POSIX pthread, a Mach CThread �s m�g sz�mos m�s sz�lkezel�si technol�gi�t. A konfigur�ci�s szkript jelez, ha nem tal�l alkalmas sz�lkezel�si rendszert. Amennyiben ilyesmi fordulna el� keresd fel az OpenLDAP GYIK-et, amely a http://www.openldap.org/faq/ honlapon tal�lhat�.

TCP sz�r�k

A Slapd t�mogatja a TCP sz�r�k (IP szint� hozz�f�r�s sz�r�k) haszn�lat�t, amennyiben az el�bb lett telep�tve mint a slapd. A TCP sz�r� vagy m�s IP alap� hozz�f�r�s sz�r� (mint egy IP alap� t�zfal) haszn�lata javasolt nem publikus szerverek adatainak v�delm�re.


2.2. A csomag let�lt�se

K�t szabadon terjeszthet� LDAP szerver ismert, a Univesity of Michigan LDAP szerver �s az OpenLDAP szerver. L�tezik m�g a Netscape Directory Server, ami bizonyos k�r�lm�nyek k�z�tt szabadon haszn�lhat� (oktat�si int�zm�nyek p�ld�ul szabadon hozz�juthatnak). Az OpenLDAP szerver a University of Michigan Server legfrissebb v�ltozat�n alapul, tov�bbi dokumentumok �s levelez�list�k tal�lhat�k a t�m�ba v�g�an. Ez a dokumentum az OpenLDAP szerver haszn�lat�t felt�telezi.

(Az UM LDAP szerver kiss� m�sk�pp kezeli a tranzakci�kat, mint a Netscape Directory Server, ez�rt nem m�k�dik egy�tt a Netscape Navigatorral. Az OpenLDAP szerver a Netscape szerver�hez hasonl�an m�k�dik, ez�rt mindenk�ppen ezt haszn�ld, k�l�nben "megmagyar�zhatatlan" hib�kkal fogsz tal�lkozni. Ha nem haszn�lsz Netscape Navigatort, akkor szabadon v�laszthatsz. - a ford.)

Az aktu�lis OpenLDAP verzi�t a http://www.openldap.org webhelyen tal�lod meg.

A University of Michigan Server legfrissebb v�ltozata az ftp://terminator.rs.itd.umich.edu/ldap webhelyen tal�lhat�.

Ennek a dokumentumnak a meg�r�s�hoz az OpenLDAP 2.2.5-os v�ltozat�t haszn�ltam, rendszerem a Mandrake 9.0, 2.4.20-as rendszermaggal.

Az OpenLDAP webszerver�n megtal�lod az OpenLDAP szerver legutols� stabil �s fejleszt�i v�ltozat�t. A dokumentum friss�t�sekor az utols� stabil v�ltozat az openldap-stable-20031217.tgz (v: 2.1.25), a fejleszt�i v�ltozat az OpenLDAP-2.2.5.tgz.


2.4. A program be�ll�t�sa

Az OPenLDAP szerverrel egy�tt terjesztett be�ll�t� szkript seg�t a telep�t� k�nyvt�r, a ford�t� (compiler) �s szerkeszt� (linker) kapcsol�inak be�ll�t�s�ra. Seg�ts�get kaphatunk a k�vetkez� parancsot kiadva abban a k�nyvt�rban, ahov� a csomagot kit�m�r�tett�k:

./configure --help

Ez ki fogja �rni az �sszes lehet�s�get a konfigur�l� szkript be�ll�t�s�hoz, miel�tt a programot leford�tan�nk. N�h�ny hasznos lehet�s�g a --prefix=pref, --exec-prefix=eprefix �s a --bindir=dir, a telep�t�si k�nyvt�r be�ll�t�s�hoz. Ha a configure szkriptet param�terek n�lk�l futtatod, automatikusan meg�llap�tja a sz�ks�ges be�ll�t�sokat �s el�k�sz�ti a telep�t�st az alap�rtelmezett helyre. Teh�t g�peld be:

./configure

Figyeld a kimenet�t, hogy l�sd, minden a megfelel�en t�rt�nik-e.

Tipp: N�ha sz�ks�ges a konfigur�ci�s szkript speci�lis be�ll�t�sa is, mint p�ld�ul --with-tls (a slapd biztons�gos csatorn�n kereszt�li haszn�lat�hoz. LDAPS://). Ebben az esetben az SSL/TLS k�nyvt�rak nem biztos, hogy a standard k�nyvt�rakban vannak. Be�ll�thatod az el�r�si utakat a k�rnyezeti param�terek v�ltoztat�s�val. Ehhez haszn�ld az env parancsot. T�telezz�k fel, hogy az openssl csomagot az /usr/local/openssl k�nyvt�rba telep�tetted. A k�vetkez� paranccsal a slapd SSL/TLS t�mogat�ssal ford�that�:

env CPPFLAGS=-I/usr/local/openssl/include \
      LDFLAGS=-L/usr/local/openssl/lib \
      configure --with-tls ...

A k�vetkez� k�rnyezeti v�ltoz�kat lehet be�ll�tani az env paranccsal, m�g a be�ll�t�si szkript futtat�sa el�tt:


Fejezet 3. Az LDAP szerver konfigur�l�sa

Ha a programot telep�tetted �s leford�tottad, j�het a be�ll�t�s. A slapd fut�sidej� be�ll�t�sa a konfigur�ci�s k�nyvt�rban tal�lhat� slapd.conf f�jlon kereszt�l v�gezhet� el, amelyet a konfigur�ci�s szkript �ll�t be, alap�rtelmez�s szerint ez a /usr/local/etc/openldap. (Ha csomagb�l telep�ted, akkor val�sz�n�leg a /etc/openldap k�nyvt�rban tal�lod - a ford�t�)

Ez a fejezet a slapd.conf. �ltal�nos be�ll�t�si elveit r�szletezi. A teljes felsorol�st megtal�lhatod a slapd.conf(5) k�zik�nyv oldalon (manual page). A konfigur�ci�s f�jl t�bb r�szre oszthat�, �gymint: global (�ltal�nos), backend specific (h�tt�r specifikus) �s database specific (adatb�zis specifikus). A k�vetkez�kben tal�lhatod a direkt�v�k magyar�zatait, az alap�rt�keikkel egy�tt (ha van), p�ld�kkal illusztr�lva.


3.1. Konfigur�ci�s file form�tuma

A slapd.conf f�jl h�rom konfigur�l�si inform�ci�t tartalmaz:global (�ltal�nos), backend specific (h�tt�r-specifikus), and database specific (adatb�zis-specifikus). El�sz�r az �ltal�nos r�sz ker�l be�ll�t�sra, ezt k�veti a h�tt�r, majd az adott adatb�zisra vonatkoz� r�sz z�rja a konfig f�jlt.

Az �ltal�nos opci�k k�s�bb fel�lb�r�lhat�k a h�tt�r �s/vagy az adatb�zis r�szben, a h�tt�r r�szben be�ll�tott opci�k fel�lb�r�lhat�k az adatb�zis r�szben (azoknak az opci�knak, amik egyn�l t�bbsz�r szerepelnek az slapd.conf-ban, utols� megjelen�s�k lesz �rv�nyes - a ford�t�).

Az �res sorok �s a "#" jellel kezd�d� sorok figyelmen k�v�l maradnak. Ha white space-el kezd�dik a sor, akkor a k�vetkez� sor folytat�sak�nt �rv�nyes�l (m�g akkor is, ha az el�z� sor megjegyz�s). Az slapd.conf �ltal�nos form�ja a k�vetkez�:

# global configuration directives
<global config directives>

# backend definition
backend <typeA>
<backend-specific directives>

# first database definition & config directives
database <typeA>
<database-specific directives>

# second database definition & config directives
database <typeB>
<database-specific directives>

# second "typeA" database definition & config directives
database <typeA>
<database-specific directives>

# subsequent backend & database definitions & config directives
... 

A konfigur�ci�s f�jl param�terezhet�. A param�tereket white space-ek v�lasztj�k el. Ha a param�ter white space-t tartalmaz, akkor param�tereket id�z�jelbe kell tenni, "mint ezt itt". Ha az argumentum id�z�jelet ' " ' vagy backslash-t '\' tartalmaz, akkor azt backslash karakternek kell megel�znie.(pl "\\d").

A disztrib�ci� tartalmaz p�lda konfigur�ci�t, amit a konfigur�ci�s k�nyvt�rban tal�lsz (pl.: /usr/local/etc/openldap). A /usr/local/etc/openldap/schema k�nyvt�rban tal�lhat� sok, �ltal�nosan haszn�lt jellemz�, �s objektumoszt�ly defin�ci�.


3.2. �ltal�nos be�ll�t�si lehet�s�gek

Az ebben a fejezetben le�rt be�ll�t�si lehet�s�gek valamennyi h�tt�rre �s adatb�zisra �rv�nyesek, am�g specifikusan fel�l nem �rja a h�tt�r vagy az adatb�zis defin�ci�. Az argumentumok aktu�lis �rt�k�t a <kapcsok> k�z� kell be�rni.

access to <what> [ by <who> <accesslevel> <control> ]+

Ezen opci� biztos�tja az <accesslevel> �ltal meghat�rozott m�don (hogyan?) a <what>> �ltal meghat�rozott bejegyz�sekhez (mit?) �s tulajdons�gokhoz a <who> �ltal meghat�rozott k�relmez�k (ki?) hozz�f�r�s�t. R�szletek az 3.7 r�szben.

Fontos: amennyiben nincs hozz�f�r�si direkt�va meghat�rozva, �gy az alap�rtelmezett hozz�f�r�si szab�ly az access to * by * read, enged�lyezi mind az azonos�tott, mind az anonymus felhaszn�l�knak az olvas�si jogot.

attributetype <RFC2252 Attribute Type Description>

Ez a direkt�va egy param�ter t�pust hat�roz meg. Tov�bbi inform�ci�t tal�lsz a Schema Specification (minta) le�r�sban.

idletimeout <integer>

Meghat�rozza egy medd� kapcsolat bez�r�s�nak idej�t. (Ennyi m�sodperc m�lva kezdem�nyezi a kapcsolat megszak�t�s�t). A 0 �rt�k (alaphelyzet) kikapcsolja ezt a funkci�t.

include <filename>

Ez az opci� meghat�rozza azokat a konfigur�ci�s �llom�nyokat, amelyeket a slapd v�gigolvas, miel�tt a k�vetkez� sorral folytatn� a f�jl feldolgoz�s�t. A beemelt f�jlnak k�vetnie kell a slapd konfigur�ci�s form�tum�t. Ezt a lehet�s�get az adatb�zis-h�tt�r objektumoszt�lyainak �s attrib�tumainak defin�ci�it tartalmaz� f�jlok beemel�s�re haszn�lhat�.

Megjegyz�s: �vatosan kezelend� ez az opci�. Semmi nem korl�tozza az egym�sba �gyazott include-ok sz�m�t, �s nincs hurokellen�rz�s sem.

loglevel <integer>

Ez az opci� specifik�lja, hogy milyen hibak�vet� �zenetek �s m�k�d�si statisztik�k ker�ljenek az syslog-ba (jelenleg a syslogd-n(8) kereszt�l LOCAL4 jellemz�vel ker�lnek napl�z�sra az esem�nyek). Ehhez az OpenLDAP-t --enable-debug kapcsol�val (alaphelyzet) kell ford�tani a slapd-t, (kiv�ve a k�t stat szintet, amelyek mindig m�k�dnek). A loglevel �rt�kei �sszead�dnak. Annak megjelen�t�s�hez,hogy melyik �rt�k milyen �zeneteket eredm�nyez, a slapd-t -? param�terrel kell megh�vni. Az �rt�kek megtal�lhat�ak az al�bbi t�bl�zatban is (<integer>):

P�ld�ul:

loglevel 255 vagy loglevel -1

Ez nagyon sok �zenetet eredm�nyez a syslog-ban.

Alap�rtelmez�s:

loglevel 256

objectclass <RFC2252 Object Class Description>

Ez az opci� defini�lja a s�ma szab�lyokat az adott objektum-oszt�lyokhoz. Tov�bbi inform�ci�t tal�lsz a Schema Specification (minta) le�r�sban.

referral <URI>

Ez specifik�lja, hova k�ldje a slapd a k�r�st, ha nem tal�l inform�ci�t a k�r�s megv�laszol�s�hoz a helyi adatb�zisban.

P�lda:

referral ldap://root.openldap.org

Ez �tir�ny�tja a nem lok�lis k�r�seket a k�zponti OpenLDAP szervernek (University of Michigan LDAP szerver - a ford�t�). Az �gyes LDAP kliensek �jra felteszik a k�rd�st enn�l a szervern�l, de a legt�bb kliens csak arra k�pes, hogy egyszer� LDAP URL-eket kezeljen, melyek csak host r�szb�l �s esetleg distinguished name-b�l �llnak.

sizelimit <integer>

Ez az lehet�s�g maximaliz�lja a keres�sre adott v�lasz sorainak sz�m�t.

Alap�rtelmezett:

sizelimit 500

timelimit <integer>

Ez a kapcsol� specifik�lja egy k�rd�s megv�laszol�s�ra sz�nhat� maxim�lis id�t, m�sodpercekben (val�s id�ben). Ha a k�r�st ez id� alatt nem siker�l megv�laszolni, az eredm�ny id�t�ll�p�ssel (exceeded timelimit) t�r vissza.

Alap�rtelmez�s:

timelimit 3600


3.4. �ltal�nos h�tt�r opci�k

Ezek az opci�k csak azokra az adatb�zis-h�tterekre �rv�nyesek, amelyekben szerepelnek. Valamennyi h�tt�rt�pusn�l alkalmazhat�k.

database <t�pus>

Ez az opci� jelzi az �j adatb�zis defin�ci� kezdet�t. A <t�pus> az el�z�ekben felsoroltak valamelyike legyen.

P�lda:

database bdb

Ez egy �j BDB t�pus� adatb�zis defin�ci� kezdet�t jelzi.

readonly { on | off }

Ez az opci� az adatb�zist csak olvashat� (read-only) m�dba kapcsolja. Az adatb�zis m�dos�t�s�nak k�s�rlete az "unwilling to perform" hiba�zenetet adja.

Alap�rtelmez�s:

readonly off

replica uri=ldap[s]://<hostname>[:<port>] | host=<hostname>[:<port>]
                [bindmethod={simple|kerberos|sasl}]
                ["binddn=<DN>"]
                [saslmech=<mech>]
                [authcid=<identity>]
                [authzid=<identity>]
                [credentials=<password>]
                [srvtab=<filename>]

Ez az opci� hat�roz meg egy replik�ci�s helyet az adatb�zishoz. Az uri= param�ter egy s�m�t hat�roz meg, egy gazdag�p �s opcion�lisan egy port, ahol a szolga slapd k�relme kezelhet�. Vagy domain n�v vagy IP c�m haszn�lhat� a <hostname> megad�s�ra. Ha <port> nincs megadva, �gy az �ltal�nos LDAP portot (389 vagy 636) haszn�lja.

Az uri enged�lyezi, hogy az LDAP szerver m�solat LDAP URI-k�nt legyen meghat�rozva, p�ld�ul ldap://slave.example.com:389 vagy ldaps://slave.example.com:636

A binddn= param�ter adja meg a friss�t�shez sz�ks�ges csatlakoz�s DN-�t. Ennek olyan DN-nek kell lennie, amelynek olvas�si/�r�si joga van a szolga slapd adatb�zis�hoz. Ennek �sszhangban kell lennie a szolga slapd konfigur�ci� f�jl�ban l�v� updatedn opci�val. �ltal�ban az a DN nem lehet azonos a mester adatb�zis rootdn-j�vel. Mivel a DN-ek sz�k�z�ket is tartalmazhatnak, az eg�sz "binddn=<DN>" sztringet id�z�jelek k�z� kell tenni.

A bindmethod egyar�nt lehet simple, kerberos vagy sasl, annak f�ggv�ny�ben, hogy egyszer� jelsz� alap�, Kerberos alap� vagy SASL azonos�t�s sz�ks�ges a szolga szerverhez t�rt�n� kapcsol�d�shoz.

Amennyiben lehets�ges, NE haszn�ljuk az egyszer�, jelsz� alap� azonos�t�st (csak olyan esetekben, amikor a megfelel� biztons�gi int�zked�sek megt�rt�ntek (TLS, IPSEC, stb))! A jelsz� alap� azonos�t�shoz binddn �s credentials param�ter kell. A credentials param�ter, amely csak akkor sz�ks�ges, ha egyszer� azonos�t�st haszn�lsz, a szolga szervernek a binddn azonos�t�s�hoz sz�ks�ges jelsz�t tartalmazza.

A Kerberos azonos�t�st h�tt�rbe szor�tja a SASL azonos�t�si m�dszer, k�l�n�sen a KERBEROS_V4 �s GSSAPI mechanizmusok eset�ben. A Kerberos azonos�t�shoz binddn �s �rv�nyes srvtab f�jl sz�ks�ges (Az srvtab param�ter, amely csak kerberos haszn�lat�hoz sz�ks�ges, specifik�lja, hogy melyik f�jl tartalmazza a kulcsokat. Az alap�rtelmezett �rt�k az /etc/srvtab - a ford�t�.)

Az SASL azonos�t�s a javasolhat� m�dszer. Az SASL azonos�t�s a saslmech param�ter haszn�lat�n alapul� mechanizmus specifik�ci�j�t ig�nyli. Att�l f�gg�en, hogy milyen mechanizmust v�lasztunk, az azonos�t�si szem�ly �s/vagy a credential meghat�rozhat� az authcid �s a credential haszn�lat�val. Az authcid param�ter meghat�rozhatja az azonos�t�si szem�lyt.

Tov�bbi inform�ci�t tal�lsz a Replication with Slurpd (M�solat k�sz�t�se a Slurpd-vel) le�r�sban.

replogfile <f�jln�v>

Ez az opci� �ll�tja be az replik�ci�s log f�jlt, ahol a slapd napl�zza a v�ltoz�sokat. A replik�ci�s log-ot tipikusan a slapd �rja �s a slurpd olvassa. Rendszerint ezt a lehet�s�get csak a slurpd haszn�lja az adatb�zis replik�ci�j�ra. Mindamellett arra is haszn�lhat�, hogy tranzakci�s napl�t k�sz�ts, ha a slurpd nem fut. Ebben az esetben ne felejtsd el rendszeresen darabolni a f�jlt, k�l�nben kezelhetetlen m�ret�re n�.

Tov�bbi inform�ci�t tal�lsz a Replication with Slurpd (M�solat k�sz�t�se a Slurpd-vel) le�r�sban.

rootdn <dn>

Ez az opci� specifik�lja azt a DN-t, akire nem vonatkozik a hozz�f�r�s szab�lyoz�s �s az adminisztr�ci�s korl�toz�sok az adatb�zis-m�veletek sor�n. A DN-nek nem kell bejegyz�sre mutatnia a k�nyvt�rban. Viszont mutathat egy SASL identit�sra.

Bejegyz�s p�lda:

rootdn "cn=Manager, dc=example, dc=com"

SASL alap� p�lda:

rootdn "cn=Manager, dc=example, dc=com"

rootpw <jelsz�>

Ez az opci� �ll�tja be a fent le�rt rootdn jelszav�t (amikor a rootdn be van �ll�tva egy DN adatb�zisban). (Ez a lehet�s�g adatb�zisok l�trehoz�sakor vagy replik�ci�s szolg�ltat�sok ny�jt�sakor hasznos. Mindenk�ppen ker�lend� a k�dolatlan jelszavak haszn�lata. A legkevesebb az /etc/password f�jlban tal�lhat� crypt k�dol�s� jelsz� haszn�lata. A slapd sz�mos m�s t�pus� k�dol�st t�mogat - a ford�t�.)

P�lda:

rootpw secret

Jelsz�-zagyval�k szolg�ltat�sa is megengedett az RFC 2307 szerint. A slappasswd haszn�lhat� a jelsz�-zagyval�k l�trehoz�s�ra.

P�lda:

rootpw {SSHA}ZKKuqbEKJfKSXhUbHG3fG8MDn9j1v4QN

A zagyval�k (hash) a slappasswd -s secret parancs kiad�sakor j�n l�tre.

suffix <dn toldal�k>

A suffix opci� specifik�lja a k�r�sek DN toldal�k�t, ami �tker�l a h�tt�r-adatb�zishoz. T�bb suffix sor is megadhat�, de legal�bb egy sz�ks�ges minden adatb�zis defin�ci�hoz.

P�lda:

suffix "dc=example, dc=com"

A k�r�sek DN-je "dc=example, dc=com" toldal�kkal ker�lnek az adatb�zisba.

Figyelem: Amikor a h�tteret - amelyiknek majd a k�r�st tov�bbadjuk - kiv�lasztottuk, a slapd tekintetbe veszi a suffix sor(oka)t minden adatb�zis defin�ci�n�l abban a sorrendben, ahogy a f�jlban el�fordulnak. �gy, ha az egyik adatb�zis toldal�ka egy m�siknak el�tagja, akkor ennek meg kell jelennie a konfigur�ci�s file-ban is.

syncrepl

Ez az opci� haszn�lhat� egy m�solt adatb�zisnak az eredetivel t�rt�n� szinkronban tart�s�ra. Ez�ltal a m�solt adatb�zis tartalma naprak�sz lesz az eredeti adatb�zis tartalm�hoz k�pest.

Jelen dokumentum nem r�szletezi ezt az opci�t, mivel egy egyszer� LDAP szerver be�ll�t�s�t t�zt�k c�lul. Err�l az opci�rol tov�bbi inform�ci� a LDAP Sync Replication honlapon tal�lhat�.

updatedn <dn>

Ez az opci� csak a szolga slapd-n �rtelmezhet�, �s meghat�rozza a replika megv�ltoztat�s�ra jogosult DN-t. Ez lehet az a DN, amellyel a slurpd csatlakozik a replik�l�s sor�n vagy a DN-t azonos�tja az SASL indentit�ssal.

Bejegyz�s alap� p�lda:

updatedn "cn=Update Daemon, dc=example, dc=com"

SASL alap� p�lda:

updatedn "uid=slurpd,cn=example.com,cn=digest-md5,cn=auth"

Tov�bbi inform�ci�k a Replication with Slurpd (Replik�ci� a slurpd haszn�lat�val - angol nyelv�) honlapon tal�lhat�k.

updateref <URL>

Ez az opci� csak a szolga slapd-n �rtelmezhet�. A replik�n v�gzett friss�t�si k�r�sek j�v�hagy�s�nak URL-j�t (ami majd a kliensekhez ker�l) hat�rozza meg. Annyiszor kell meghat�rozni, ah�ny URL van.

P�lda:

updateref ldap://master.example.net


3.5. BDB adatb�zis direkt�v�k

Az ebben a kateg�ri�ban tal�lhat� el��r�sok csak a BDB adatb�zisokra vonatkoznak. Ez�rt az opci�kat minden esetben a "database bdb" sor k�veti �s megel�z minden tov�bbi "h�tt�r" vagy "adatb�zis" sort. A BDB be�ll�t� opci�k teljes referenci�ja a slapd-bdb k�zik�nyv oldalakon tal�lhat� (man page) (man slapd-bdb).

directory <k�nyvt�r>

Ez a direkt�va meghat�rozza azt a k�nyvt�rat, ahol a BDB adatb�zis �s a hozz� tartoz� f�jlok elhelyezkednek.

Alap�rtelmez�s:

directory /usr/local/var/openldap-data

sessionlog <sid> <limit>

This directive specifies a session log store in the syncrepl replication provider server which contains information on the entries that have been scoped out of the replication content identified by <sid>. The first syncrepl search request having the same <sid> value in the cookie establishes the session log store in the provider server. The number of the entries in the session log store is limited by <limit>. Excessive entries are removed from the store in the FIFO order. Both <sid> and <limit> are non-negative integers. <sid> has no more than three decimal digits.

The LDAP Content Synchronization operation that falls into a pre-existing session can use the session log store in order to reduce the amount of synchronization traffic. If the replica is not so outdated that it can be made up-to-date by the information in the session store, the provider slapd will send the consumer slapd the identities of the scoped-out entries together with the in-scope entries added to or modified within the replication content. If the replica status is outdated too much and beyond the coverage of the history store, then the provider slapd will send the identities of the unchanged in-scope entries along with the changed in-scope entries. The consumer slapd will then remove those entries in the replica which are not identified as present in the provider content.

A syncrepl-r�l tov�bbi inform�ci� a LDAP Sync Replication honlapon tal�lhat�.


3.6. LDBM adatb�zis lehet�s�gek

Ebben a kateg�ri�ban csak az LDBM t�pus� h�tt�r-adatb�zisokra vonatkoz� opci�k tal�lhat�k. Ez�rt az opci�kat minden esetben a "database ldbm" sor k�veti �s megel�z minden tov�bbi "database" vagy "backend" sort. A LDBM be�ll�t� opci�k teljes referenci�ja a slapd-lbdm k�zik�nyv oldalakon tal�lhat� (man page; man slapd-ldbm).

cachesize <integer>

Ez az opci� hat�rozza meg az �tmeneti mem�ri�ban t�rolt bejegyz�sek sz�m�t, amelyet az LDBM h�tt�r-adatb�zisk�r�sek tartanak fent.

Alap�rtelmez�s:

cachesize 1000

dbcachesize <integer>

Ez az opci� hat�rozza meg minden egyes nyitott index f�jlhoz rendelt �tmeneti mem�ria m�ret�t byte-ban. Ha nem t�mogatja az alapj�t k�pez� adatb�zis elj�r�s, ez az opci� kommentez�s (#) n�lk�l is figyelmen k�v�l marad. A felhaszn�lt mem�ria m�ret�nek n�vel�se dr�maian n�veli a teljes�tm�nyt, k�l�n�sen az indexek m�dos�t�sakor vagy l�trehoz�sakor.

Alap�rtelmez�s:

dbcachesize 100000

dbnolocking

Bekapcsolva ezt az opci�t az adatb�zist nem lehet z�rolni (lock). N�velheti a feldolgoz�si sebess�get, persze a biztons�g rov�s�ra.

dbnosync

Ez a lehet�s�g azt eredm�nyezi, hogy a lemezen lev� adatb�zis tartalmak nem lesznek automatikusan �s azonnal szinkroniz�lva a mem�riatartalommal, amikor valami v�ltoz�s t�rt�nik. Enged�lyezve szint�n n�velheti a sebess�get a biztons�g rov�s�ra.

directory <k�nyvt�r>

Ez a direkt�va meghat�rozza azt a k�nyvt�rat, ahol a LBDM adatb�zis �s a hozz� tartoz� f�jlok elhelyezkednek.

Alap�rtelmez�s:

directory /usr/local/var/openldap-data

index {<attrlist> | default} [pres,eq,approx,sub,none]

Ez a direkt�va meghat�rozza az adott attrib�tum karbantart�s��rt felel�s indexeket. Ha csak az <attrlist> van megadva, az alap�rtelmezett indexek lesznek csak karbantartva.

P�lda:

index default pres,eq
index uid
index cn,sn pres,eq,sub
index objectClass eq

!!!FIXME!!! Az els� sor be�ll�tja az alap�rtelmezett index k�szleteket (present (jelenl�t) �s equality (egyenl�s�g) lesz a karbantart�si szempont). A m�sodik sor objectClass �s uid attrib�tumok alapj�n kezeli tov�bb az alap�rtelmezett index k�szleteket. A harmadik sor cn �s sn attrib�tum t�pusok szerint vizsg�lja az equality (egyenl�s�g), substring �s approximate (becsl�s) index k�szleteket. !!!FIXME!!!

Alap�rtelmez�s szerint az indexeket nem tartja karban. Aj�nlott azonban legal�bb az objectClass szerinti equality (egyenl�s�g) index karbantart�sa.

index objectClass eq

mode <integer>

Ez a direkt�va hat�rozza meg az �jonnan l�trehozott adatb�zis index �llom�nyainak f�jlv�delmi m�dj�t.

Alap�rtelmez�s:

mode 0600


3.7. Hozz�f�r�s szab�lyoz�si p�ld�k:

A hozz�f�r�si eszk�zt�r, melyet az access direkt�va szab�lyoz, el�g er�teljes. Most bemutatunk n�h�ny p�ld�t a haszn�lat�ra vonatkoz�an. El�sz�r n�h�ny egyszer� p�lda:

access to * by * read 

Ez a hozz�f�r�si direkt�va mindenkinek olvas�si jogot biztos�t.

A k�vetkez� p�lda bemutatja a regexp haszn�lat�t a DN alapj�n t�rt�n� keres�shez k�t access direkt�v�ban, ahol a sorrend is fontos.

access to dn=".*, o=U of M, c=US" 
by * search 
access to dn=".*, c=US" 
by * read 

Ebben az esetben a hozz�f�r�si jogosults�gok �gy alakulnak: Keres�si (search) jogosults�ggal rendelkeznek az 'o=U of M, c=US' dn-� felhaszn�l�k, m�g a t�bbi, c=US jelzet� felhaszn�l� olvas�si (read) - eggyel magasabb szint� - jogosults�got kap. Ha ford�tva lenne a k�t access sor, a U of M-re vonatkoz� korl�toz�sok nem l�pn�nek �letbe, mivel a c=US k�rbe beletartoznak, �s a sz�k�t�s nem l�pne �letbe. (a hozz�f�r�si list�kat fel�lr�l lefel� dolgozza fel a program.)

Another way to implement the same access controls is:

access to dn.children="dc=example,dc=com"
	by * search
	access to dn.children="dc=com"
	by * read

Read access is granted to entries under the dc=com subtree, except for those entries under the dc=example,dc=com subtree, to which search access is granted. No access is granted to dc=com as neither access directive matches this DN. If the order of these access directives was reversed, the trailing directive would never be reached, since all entries under dc=example,dc=com are also under dc=com entries.

Note: Also note that if no access to directive or no "by <who>" clause matches, access is denied. That is, every access to directive ends with an implicit by * none clause and every access list ends with an implicit access to * by * none directive.

A k�vetkez� p�lda ism�t j�l mutatja a sorrend fontoss�g�t. Mind a hozz�f�r�si direkt�v�k (access), mind pedig a "by <kicsoda>" cikkely eset�ben. Bemutatja tov�bb� az attrib�tum kapcsol� haszn�lat�t, bizonyos attrib�tumok �s t�bbf�le <who> kapcsol� hozz�f�r�si jogainak be�ll�t�s�hoz.

access to dn.subtree="dc=example,dc=com" attr=homePhone
	by self write
	by dn.children=dc=example,dc=com" search
	by peername=IP:10\..+ read
access to dn.subtree="dc=example,dc=com"
	by self write
	by dn.children="dc=example,dc=com" search
	by anonymous auth

This example applies to entries in the "dc=example,dc=com" subtree. To all attributes except homePhone, an entry can write to itself, entries under example.com entries can search by them, anybody else has no access (implicit by * none) excepting for authentication/authorization (which is always done anonymously). The homePhone attribute is writable by the entry, searchable by entries under example.com, readable by clients connecting from network 10, and otherwise not readable (implicit by * none). All other access is denied by the implicit access to * by * none.

Sometimes it is useful to permit a particular DN to add or remove itself from an attribute. For example, if you would like to create a group and allow people to add and remove only their own DN from the member attribute, you could accomplish it with an access directive like this:

access to attr=member,entry 
	by dnattr=member selfwrite 

A dnattr <kicsoda> kapcsol� megmondja,hogy a hozz�f�r�sek a 'member' (tag) -jellemz�ben felsorolt elemekre vonatkoznak. A 'selfwrite' hozz�f�r�si kapcsol� pedig ezen tagoknak csak saj�t DN-j�kben t�rt�n� hozz�ad�sra �s t�rl�sre ad jogosults�got. A bejegyz�s jellemz� hozz�ad�sa k�telez�, mivel a bejegyz�shez val� hozz�f�r�s sor�n sz�ks�gszer�en a bejegyz�s jellemz�ihez is hozz� kell f�rn�nk.

A hozz�f�r�s szab�lyoz�sr�l rengeteg p�lda tal�lhat� az OpenLDAP Adminisztr�torok K�zik�nyv�ben. Kattints a linkre: Hozz�f�r�s szab�lyoz�s tov�bbi inform�ci�k�rt.


3.8. Konfigur�ci�s f�jl p�lda

A k�vetkez�kben magyar�z� sz�vegr�szekkel megszak�tva bemutatok egy konfigur�ci�s �llom�nyt. K�t adatb�zist defini�l, az X.500-as fa k�l�nb�z� r�szeinek kezel�s�re. Mindkett� BDB adatb�zis. A sorok sz�moz�sa csak a t�j�koz�d�st �s a magyar�zatot hivatott seg�teni, a m�k�d� f�jlban nincsenek sorsz�mok. N�zz�k el�sz�r az �ltal�nos be�ll�t�sokat! ( global configuration section)

1.    # example config file - global configuration section     p�lda konfig f�jl - �ltal�nos be�ll�t�sok r�sz
2.    include /usr/local/etc/schema/core.schema
3.    referral ldap://root.openldap.org
4.    access to * by * read

Az els� sor megjegyz�s. Az alap-s�ma le�r�sokat tartalmaz� k�ls� f�jl befoglal�sa a m�sodik sorban t�rt�nik meg. A harmadik sorban tal�lhat� utal�s (referral) utas�t�s azt jelenti, hogy az �sszes olyan keres�si k�relem, amelyet a helyi adatb�zis nem tud kiszolg�lni, �t lesz ir�ny�tva a hagyom�nyos LDAP kapun (389) kereszt�l a root.openldap.org szerverre.

A negyedik sor az �ltal�nos el�r�st biztos�tja. Minden bejegyz�sre �rv�nyes (minden m�s, haszn�lhat� adatb�zis hozz�f�r�s korl�toz�s ut�n).

A be�ll�t�f�jl k�vetkez� szakasz�ban a "dc=example,dc=com" �gban t�rt�n� k�r�sek kiszolg�l�s�ra szolg�l� BDB h�tt�r le�r�sa j�n. Az adatb�zis k�t szolga slapd-re lesz megkett�zve. Az els� egy t�nyleges, m�g a m�sodik egy "v�szhelyzeti" t�kr�z�s. Az indexel�sek t�bb attrib�tum szerint is karbantart�sra ker�lnek. A userPassword tulajdons�g v�dett a jogosulatlan hozz�f�r�sekt�l.

5.     # BDB definition for the example.com
6.     database bdb
7.     suffix "dc=example,dc=com"
8.     directory /usr/local/var/openldap-data
9.     rootdn "cn=Manager,dc=example,dc=com"
10.    rootpw secret
11.    # replication directives
12.    replogfile /usr/local/var/openldap/slapd.replog
13.	   replica uri=ldap://slave1.example.com:389
14.            binddn="cn=Replicator,dc=example,dc=com"
15.            bindmethod=simple credentials=secret
16.    replica uri=ldaps://slave2.example.com:636
17.            binddn="cn=Replicator,dc=example,dc=com"
18.            bindmethod=simple credentials=secret
19.    # indexed attribute definitions
20.    index uid pres,eq
21.    index cn,sn,uid pres,eq,sub
22.    index objectClass eq
23.    # database access control definitions
24.    access to attr=userPassword
25.            by self write
26.            by anonymous auth
27.            by dn.base="cn=Admin,dc=example,dc=com" write
28.            by * none
29.    access to *
30.            by self write
31.            by dn.base="cn=Admin,dc=example,dc=com" write
32.            by * read

Az 5. sor megjegyz�s. Az adatb�zis defin�ci� kezdet�t a 'database' kulcssz� jelzi (6.sor). A 7. sor hat�rozza meg a helyi adatb�zishoz tov�bb�tand� keres�sek DN-ut�tagj�t. A 8. sor jelzi az adatb�zis f�jlok hely�t.

A 9. �s 10. sor az adatb�zis fel�gyel�t azonos�tja �s a hozz�rendelt jelsz�t. This entry is not subject to access control or size or time limit restrictions. Please remeber to encrypt the rootpw using slappasswd.

Example: rootpw {SSHA}Jq4xhhkGa7weT/0xKmaecT4HEXsdqiYA

11-18. sorok a t�bbsz�r�z�si feladatot �rj�k le. B�vebben: Replication angol nyelv� oldalon.

A 20. �s 22. sorok a k�l�nb�z� attrib�tumok�rt felel�s indexeket jelzik

A 24-t�l a 32. sorok hozz�f�r�si jogosults�gokat szab�lyoznak az adab�zison. Minthogy ez az els� adatb�zis, a szab�lyoz�k �letbe l�pnek minden m�s bejegyz�sre is, amelyek nincsenek m�g adatb�zisban (mint pl. a root DSE). Minden alkalmazhat� bejegyz�sre �rv�nyes, hogy a userPassword attrib�tum �rhat� a bejegyz�s �s az 'admin' bejegyz�s �ltal. Ezt azonos�t�si c�lokra lehet haszn�lni, m�sk�l�nben nem olvashat�. Minden m�s attrib�tum �rhat� a bejegyz�s �s az 'admin' bejegyz�s �ltal (m�sok �ltal nem), �s olvashatja minden bejegyz�s (ak�r autentik�lt, ak�r nem).

A p�lda konfigur�ci�s f�jl k�vetkez� r�sze egy m�sik BDB adatb�zist is defini�l. Ez az adatb�zis a dc=example, dc=net al�g keres�seit kezeli, de ugyanaz a l�nyeg, mint az els� adatb�zis eset�ben. Figyelj�k meg, hogy a 39. sor n�lk�l olvas�si jogot mindenki, az �ltal�nos be�ll�t�sok 4. sor�nak megfelel�en kap.

33.    # BDB definition for example.net
34.    database bdb
35.    suffix "dc=example,dc=net"
36.    directory /usr/local/var/openldap-data-net
37.    rootdn "cn=Manager,dc=example,dc=com"
38.    index objectClass eq
39.    access to * by users read

Fejezet 4. Az LDAP szerver futtat�sa

Az LDAP d�mona, a slapd �n�ll�an fut� szerverk�nt haszn�lhat�. Ez lehet�v� teszi a h�tt�r sz�m�ra a cache-el�s el�nyeinek kihaszn�l�s�t, jobban tudja kezelni az adatb�zisok k�z�tti �tk�z�sek probl�m�it �s gazdas�gosabban b�nik a rendszer er�forr�saival. Futtat�sa az inetd(8)-b�l nem lehets�ges. (Kor�bban opci� volt)


4.1. Parancssori opci�k

A slapd sz�mos parancssori opci�t t�mogat (r�szletesen a manu�lban). Ebben a r�szben n�h�ny, �ltal�nosan haszn�lt opci� le�r�s�t tal�hatod meg.

-f <f�jln�v>

Ez az opci� alternat�v konfigur�ci�s f�jlt hat�roz meg a slapd sz�m�ra Alap�rtelmezett: /usr/local/etc/openldap/slapd.conf.

-h <URL-ek>

Ezzel az opci�val alternat�v port/host p�rokat �ll�thatsz be, amiken az LDAP figyel. Alap�rtelmezett: ldap:// ami arra utal, hogy az LDAP minden h�l�zati eszk�z�n figyel a TCP-n kereszt�l az alap�rtelmezett LDAP porton (389). Megadhat� speci�lis host-port p�ros is, vagy m�s protokoll s�ma (mint pl. az ldaps:// or ldapi://) is. P�ld�ul: -h "ldaps:// ldap://127.0.0.1:667" k�t figyel� csatorn�t hoz l�tre, egyiket az LDAP SSL-en kereszt�l minden eszk�zre vonatkoz�an �s a szabv�nyos LDAP/SSL porton (637), m�g a m�sikat a localhoston (127.0.0.1) a loopback eszk�z�n, TCP-n, a 667-es kapun kereszt�l. A hostokat IPv4 szerint, numerikusan, vagy n�vvel is megadhatjuk. A port �rt�k�nek numerikusan kell szerepelnie.

-n <szolg�ltalt�s-n�v>

Itt adhat� meg a napl�z�sra �s m�s c�lokra szolg�l� szolg�ltat�s neve. Alap�rtelmezett: slapd.

-l <syslog-local-user>

Ez a param�ter hat�rozza meg a helyi felhaszn�l�t a syslog(8) lehet�s�g haszn�lat�hoz. Lehets�ges �rt�kek: LOCAL0, LOCAL1, LOCAL2, ..., �s LOCAL7. Az alap�rtelmez�s: LOCAL4. Ez az opci� nem haszn�lhat� minden rendszer alatt. Tov�bbi inform�ci�kat l�sd a 6.5 fejezetben.

-u user -g group

Itt adhat� meg a felhaszn�l� �s a csoport, akinek a nev�ben fut a slapd. Mind a <user≶, mind a <group≶ megadhat� n�vvel vagy uid-del.

-r directory

Ez a param�ter hat�rozza meg a fut�s idej� k�nyvt�rat. . Ez lesz a slapd chroot(2) k�nyvt�ra az ind�t�s ut�n, m�g miel�tt felolvasn� a konfigur�ci�s f�jlokat vagy inicializ�ln� a h�ttereket.

-d <szint> | ?

Ez az opci� be�ll�tja az slapd hibakeres� �rt�k�t a <szint>-re. Amikor a szint a '?' karakter, a k�l�nb�z� hibakeres� szinteket �rja ki �s kil�p a slapd att�l f�ggetlen�l, hogy milyen egy�b opci� lett m�g be�ll�tva. A jelenlegi hibakeres� szintek a k�vetkez�k:

T�bb szint is megadhat� egyszerre ha felsoroljuk egym�s ut�n a k�v�nt szinteket, mindet k�l�n -d kapcsol�val. Mivel a hibak�vet�si szintek addit�vak egyszer� �sszead�ssal elv�gezhet� a sz�mol�s: P�ld�ul, ha a funkci�h�v�sok nyomk�vet�s�se �s a konfigur�ci�s f�jl feldolgoz�sa egyar�nt sz�ks�ges, akkor ennek a k�t hibak�vet� szintnek az �sszead�s�val (ebben az esetben 1+64=65 vagyis a kapcsol�: -d 65) egyszerre adhat� meg a k�t hibak�vet�si szint, vagy a slapd is elv�gezheti ezt helyett�nk (ekkor a kapcsol�k: -d 1 -d 64). Tov�bbi infor�ci�k az <ldap.h> f�jlban.

Figyelem!A slapd ford�t�sakor az -LDAP_DEBUG-ot defini�lni kell minden hibak�vet� funkci� haszn�lat�hoz, kiv�ve a k�t napl�z�si lehet�s�get.


Fejezet 5. Adatb�zis l�trehoz�s �s karbantart�sa

Ez a fejezet le�rja az adatb�zisok l�trehoz�s�t a semmib�l. K�t �t van az adatb�zisok l�trehoz�s�ra. L�trehozhat�k adatb�zisok az LDAP online haszn�lat�val. Enn�l az elj�r�sn�l egyszer�en a slapd ind�t�sa ut�n a tetsz�s szerinti LDAP klienssel elv�gezhet� a bejegyz�sek hozz�ad�sa. Ez az elj�r�s viszonylag kis m�ret� adatb�zisokn�l haszn�lhat� j�l (n�h�ny sz�z vagy ezer bejegyz�s, a k�vetelm�nyek f�ggv�ny�ben). Azokn�l az adatb�zisokn�l alkalmazhat�, amelyek t�mogatj�k a friss�t�st (update).

A m�sodik elj�r�s az adatb�zisok l�trehoz�s�ra a slapd speci�lis eszk�zeinek seg�ts�g�vel lehets�ges, offline m�dban. Ez a legjobb elj�r�s, ha sok ezer bejegyz�st kell l�trehozni, ami nagyon hossz� id�t venne ig�nybe az LDAP elj�r�ssal, vagy ha biztos akarsz lenni abban, hogy az adatb�zis biztosan ne legyen el�rhet� a l�trehoz�s ideje alatt. FIGYELEM! Nem minden adatb�zis t�pus t�mogatja a slapd ezen speci�lis eszk�zeit!


5.1. Adatb�zis online l�trehoz�sa

Az OpenLDAP programcsomag tartalmazza az ldapadd programot, a bejegyz�sek online hozz�ad�s�hoz, vagyis am�kor az LDAP szerver fut. Amennyiben az online m�dszert v�lasztod az adatb�zis l�trehoz�s�ra, ezt az eszk�zt kell haszn�lnod a bejegyz�sek hozz�ad�s�hoz (m�s, OpenLDAP csomagon k�v�li eszk�z�ket is haszn�lhatsz, mint amilyen az Ldap Browser). Az els� bejegyz�sek hozz�ad�sa ut�n m�g tov�bbi bejegyz�sek felv�tele is lehets�ges. Mindenk�ppen sz�ks�ges a k�vetkez� konfigur�ci�s opci�k be�ll�t�sa a slapd ind�t�sa el�tt:

suffix <dn> 

Az 3.4 fejezetben le�rtak szerint ez az opci� mondja meg, milyen bejegyz�sek ker�lnek ebbe az adatb�zisba. Be kell �ll�tani a l�trehozand� r�szfa gy�ker�nek DN �rt�k�t:

suffix "o=TUDelft, c=NL" 

Specifik�ni kell a k�nyvt�rat, ahol az index file-ok l�trej�nnek:

directory /usr/local/tudelft 

Lehet�v� kell tenni, hogy csatlakozhass a slapdhez mint c�mt�r-felhaszn�l� bejegyz�sek hozz�ad�s�nak jog�val. Be�ll�that� �gy a c�mt�r, hogy t�mogassa a super-user-t, vagy root felhaszn�l�t erre a c�lra.

Ez a k�vetkez� k�t opci� seg�ts�g�vel lehets�ges az adatb�zis l�trehoz�sa sor�n:

rootdn <dn>
rootpw <passwd>   /* Mindenk�ppen k�dolt jelsz�t haszn�lj!!! */

Ez a k�t opci� hat�rozza meg az adatb�zis adminisztr�torak�nt haszn�lhat� bejegyz�s DN-j�t �s jelszav�t (akinek minden tev�kenys�g enged�lyezett). Az itt meghat�rozott DN �s a jelsz� mindig m�k�dik, att�l f�ggetlen�l, hogy a bejegyz�s vagy a jelsz� val�ban l�tezik-e. Ez megoldja a ty�k �s a toj�s probl�m�j�t, vagyis hogyan azonos�that� az adminisztr�tor, �s hozhat�k l�tre rekordok miel�tt b�rmilyen bejegyz�s l�tezne.

A slapd meg�rti ha SHA-1 k�dol�s� jelszavakat haszn�lsz a rootpw direkt�v�ban. �n egy Java oszt�lyt haszn�ltam SHA-1 szint� jelszavak l�trehoz�s�ra, de haszn�lhat� a slappasswd parancs is jelszavak gener�l�s�ra.

slappasswd -h {SHA}
rootpw    "{SHA}5en6G6MezRroT3XKqkdPOmY/BfQ="

P�ld�ul:

        rootdn "cn=Manager,dc=example,dc=com"
        rootpw "{SHA}5en6G6MezRroT3XKqkdPOmY/BfQ="

The default output for slappasswd is to generate Secure Hash passwords {SSHA}, in this case you don't need to pass the -h parameter, just call slappasswd directly.

Amennyiben SASL-t haszn�lsz a rootpw sort ki kell szedni. Vess egy pillant�st a 3.4 �s a 6.2 (Autentik�ci�) fejezetre.

V�g�l, az adatb�zis defin�ci�inak tartalmaznia kell az sz�ks�ges indexek defin�ci�it:

index {<attrlist> | default} [pres,eq,sub,none] 

P�ld�ul, a cn, sn, uid �s objectclass attrib�tumok index�t a k�vetkez� index konfigur�ci�s sor hozza l�tre:

index cn,sn,uid pres,eq,sub
index objectClass pres,eq

Note: Megjegyz�s: figyelj arra, hogy nem minden indext�pus haszn�lhat� minden jellemz� eset�ben. N�zd meg a 3.6 fejezetben (p�ld�k).

Ha egyszer be�ll�tottad a sz�ks�ges dolgokat, ind�tsd el a slapd-t, kapcsol�dj az LDAP klienssel, �s kezdd el a bejegyz�sek hozz�ad�s�t. P�ld�ul, a TUDelft bejegyz�st k�vet� a Postmaster bejegyz�s l�trehoz�s�hoz az ldapadd r�sz�re l�tre kell hozni a /tmp/newentry f�jlt a k�vetkez� tartalommal:

o=TUDelft, c=NL
objectClass=organization 
description=Technical University of Delft Netherlands 

cn=Postmaster, o=TUDelft, c=NL 
objectClass=organizationalRole 
cn=Postmaster
description= TUDelft postmaster - postmaster@tudelft.nl 

�s ut�na a k�vetkez� parancs l�trehozza a sz�ks�ges bejegyz�st:

ldapadd -f /tmp/newentry -x -D "cn=Manager, o=TUDelft, c=NL" -w secret 

A fenti parancs felt�telezi, hogy a roodn bejegyz�s a "cn=Manager, o=TUDelft, c=NL" �s a rootpw a "secret" (vagy k�dolt jelsz� a slapd.conf-ban). Ha nem akarod beg�pelni a jelsz�t a parancsorba, haszn�ld a -W opci�t az ldapadd parancs haszn�latakor a -w"jelsz�" helyett. Felsz�l�t�st kapsz jelsz� be�r�s�ra:

ldapadd -f /tmp/newentry -x -D "cn=Manager, o=TUDelft, c=NL" -W 
Enter LDAP Password: 

5.2. Adatb�zis offline l�trehoz�sa

A m�sodik elj�r�s az adatb�zisok offline l�trehoz�sa, az al�bb le�rt slapd eszk�z�k seg�ts�g�vel. Ez a legjobb elj�r�s ha sok ezer bejegyz�s l�trehoz�sa sz�ks�ges, ami nagyon hossz� id�t venne ig�nybe a fent le�rt LDAP eszk�z�k haszn�lat�val. Ezek az eszk�z�k elolvass�k a slapd konfigur�ci�s f�jlt �s a hozz�adand� bejegyz�sek sz�veg�t tartalmaz� LDIF file-t. Ez hozza l�tre k�zveten�l az LDAP index f�jlokat . For database types which support the tools, they produce the database files directly (otherwise you must use the on-line method above). A k�vetkez� n�h�ny konfigur�ci�s lehet�s�get mindenk�ppen ismerni kell �s be kell �ll�tani a konfigur�ci�s f�jl adatb�zis-defin�ci�j�nak elej�n:

suffix <dn> 

Az el�z� bekezd�snek megfelel�en, ez az opci� hat�rozza meg, milyen bejegyz�seket fog tartalmazni az adatb�zis. Ennek a l�trehozand� r�szfa gy�ker�nek DN-j�t kell tartalmaznia. P�ld�ul:

suffix "o=TUDelft, c=NL" 

Mindenk�ppen meg kell hat�rozni az index f�jlok k�nyvt�r�t:

directory /usr/local/tudelft 

V�g�l meg kell mondanunk, milyen indexekre van sz�ks�g. Ez egy vagy t�bb index opci�val v�gezhet� el:

index {<attrlist> | default } [pres,eq,approx,sub,none]

P�ld�ul:

index cn,sn,uid pres,eq,sub
index objectClass eq

A fenti parancs l�trehozza a presence, equality �s approximate indexeket a cn,sn �s uid attrib�tumokn�l, �s equality indexet az objectClass opci�n�l. Tov�bbi inform�ci�k a konfigur�ci�s f�jl be�ll�t�sa fejezetben tal�lhat�k err�l az opci�kr�l.

Miut�n a konfigur�ci� k�sz van, l�tre kell hoznunk az els�dleges adatb�zist a hozz� tartoz� indexf�jlokkal egy�tt. Ezt a slapadd(8) programmal tehetj�k meg:

slapadd -l <inputfile> -f <slapdconfigfile> [-d <debuglevel>]
 [-n <integer>|-b <suffix>]

Az argumentmok jelent�sei:

-l <inputfile>

meghat�rozza az LDIF bemeneti f�jlt, ami a hozz�adand� bejegyz�seket tartalmazza sz�veges form�ban (A k�vetkez� fejezet err�l sz�l).

-f <slapdconfigfile>

Specifik�lja a slapd konfigur�ci�s f�jlj�t, ami meghat�rozza hol, milyen indexeket kell l�trehozni, stb.

-d <debuglevel>

Bekapcsolja a hibakeres�st a debuglevel �ltal meghat�rozott m�don. A hibakeres�s szintjei megegyeznek a slapd �rt�keivel. (l�sd a 4.1 tov�bbi r�szletek�rt.)

-n <databasenumber>

Ez az opcion�lis argumentum hat�rozza meg, hogy az adatb�zisok k�z�l melyiket haszn�lja a program. A konfigur�ci�s f�jlban szerepl� els� adatb�zis az "1", a m�sodik a "2", stb. Alap�rtelmez�sk�nt az els� adatb�zist haszn�lja. A -b argumentummal egy�tt nem haszn�lhat�.

-b <suffix>

Ez az opcion�lis argumentum hat�rozza meg, hogy az adatb�zisok k�z�l melyiket haszn�lja a program. Az ut�tagot (suffix) �sszehasonl�tja az adatb�zisban szerepl� adatb�zis direkt�va sz�m�val, �s �gy d�nti el melyik adatb�zist haszn�lja. Az -n argumentummal egy�tt nem haszn�lhat�.

N�ha sz�ks�gess� v�lik az indexek �jragener�l�sa (pl. a slapd.conf(5) m�dos�t�sa ut�n). Ezt a slapindex(8) programmal v�gezhetj�k el. A program megh�v�sa a k�vetkez�k�ppen t�rt�nik:

slapindex -f <slapdconfigfile> [-d <debuglevel>] [-n <databasenumber>|-b <suffix>]

Ahol az -f, -d, -n �s a -b kapcsol�k ugyanazok, mint a slapadd(1) program eset�ben. A slapindex �jra�p�ti az index�llom�nyokat az �ppen aktu�lis adatb�zis tartalmak alapj�n.

A slapcat programmal az adatb�zis tartalm�t egy sz�veges LDIF f�jlba tudjuk �nteni (dump). Akkor lehet hasznos, ha olvashat� adatb�zis-m�solatot szeretn�nk k�sz�teni, vagy, ha az adatb�zist off-line m�don szeretn�nk szerkeszteni. A program ind�t�sa:

slapcat -l <filename> -f <slapdconfigfile> [-d <debuglevel>] [-n <databasenumber>|-b <suffix>]

Ahol az -f opci� -n vagy -b kapcsol�ival lehet kiv�lasztani a slapd.conf(5)-ban le�rt adatb�zisok k�z�l azt, amilyre sz�ks�g�nk van. Az LDIF eredm�ny a standard kimenetre ker�l, hacsak nem hat�roztunk meg egy f�jlt a -l opci�ban..


5.3. B�vebben az LDIF form�tumr�l

Az LDAP Data Interchange Fromat (LDIF) az LDAP bejegyz�sek megjelen�t�s�re szolg�l sz�veges form�ban. Egy bejegy�s alapvet� form�ja:

#comment      megjegyz�s
dn: <distinguished name>
<attrdesc>: <attrvalue>
<attrdesc>: <attrvalue>
...

A '#' kezdet� sorok megjegyz�sek. Az attrib�tum le�r�sok (attrdesc) lehetnek egyszer�ek, mint pl. a cn, az objectClass vagy az 1.2.3 (egy attrib�tum-t�pussal azonos�tott OID) vagy opci�kat is magukba foglalhatnak, pl. cn;lang_en_US vagy userCertificate;binary.

A sorok folytathat�ak a k�vetkez� sorban egy sz�k�z vagy tab karatkerrel. P�ld�ul:

dn: cn=Barbara J Jensen, dc=example, dc=
 com
cn: Barbara J
    Jensen

megfelel ennek:

dn: cn=Barbara J Jensen, dc=example, dc=com
cn: Barbara J Jensen

T�bbsz�r�s attrib�tumok t�bb elv�lasztott sorban is specifik�lhat�ak. P�ld�ul:

cn: Barbara J Jensen
cn: Babs Jensen

Ha az <attrvalue> (attrib�tum �rt�k) nem nyomtathat� karaktereket tartalmaz, vagy sz�k�zzel, kett�sponttal (':'), kisebb jellel('<') kezd�dik, akkor az <attrdesc> (attrib�tum le�r�s)-t kett�spont k�veti, �s az �rt�k base64 k�dol�s� lesz. P�ld�ul a "begins with space" �rt�k a k�vetkez�k�ppen lesz k�dolva:

cn:: IGJlZ2lucyB3aXRoIGEgc3BhY2U=

Meghat�rozhat� egy URL-is amely az attrib�tum �rt�ket t�rolja. Pl. a k�vetkez� sor a jpegPhoto �rt�k�t az /�tvonal/a/jpeg.k�phez f�jlb�l veszi.

cn:< file://path/to/file.jpeg

A t�bbsz�r�s bejegyz�seket ugyanabban az LDIF file-ban �res sorokkal kell elv�lasztani. Egy h�rom bejegyz�st tartalmaz� LDIF file:

# Barbara's Entry  #Barbara bejegyz�se
dn: cn=Barbara J Jensen, dc=example, dc=com
cn: Barbara J Jensen
cn: Babs Jensen
objectClass: person
sn: Jensen

# Bjorn's Entry #Bj�rn bejegyz�se
dn: cn=Bjorn J Jensen, dc=example, dc=com
cn: Bjorn J Jensen
cn: Bjorn Jensen
objectClass: person
sn: Jensen
# Base64 encoded JPEG photo # Base64 k�dol�s� f�nyk�p
jpegPhoto:: /9j/4AAQSkZJRgABAAAAAQABAAD/2wBDABALD
A4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQ
ERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVG

# Jennifer's Entry #Jennifer bejegyz�se
dn: cn=Jennifer J Jensen, dc=example, dc=com
cn: Jennifer J Jensen
cn: Jennifer Jensen
objectClass: person
sn: Jensen
# JPEG photo from file # JPEG k�p f�jlb�l
jpegPhoto:< file://path/to/file.jpeg

Figyelj�k meg, hogy a Bjorn bejegyz�sben tal�hat� jpegPhoto �rt�k base64 k�dol�s�, m�g a Jennifer bejegyz�sben szerepl� jpegPhoto az URL-ben szerepl� helyen t�rol�dik.

FIGYELEM: A k�vet� sz�k�z�k benne maradnak az LDIF file-ban. A t�bbsz�r�s sz�k�z�k is megmaradnak. Ha nem sz�ks�gesek az adatokban, akkor el kell t�vol�tani �ket.


5.4. Az ldapsearch, ldapdelete �s az ldapmodify progrmok

ldapsearch - Az ldapsearch a parancs�rtelmez� �ltal el�rhet� fel�letet biztos�t az ldap_search(3) f�ggv�ny haszn�lat�hoz. Ez a program j�l haszn�lhat� bejegyz�sek keres�s�hez az LDAP adatb�zisban.

Az ldapsearch szintaktik�ja a k�vetkez� (Az opci�k jelent�se az ldapsearch man lapj�n tal�lhat�):

ldapsearch  [-n]  [-u]  [-v]  [-k]  
[-K]  [-t]  [-A] [-B] [-L]
[-R] [-d debuglevel] [-F sep] [-f file] 
[-x] [-D binddn]  [-W]  [-w bindpasswd]  
[-h ldaphost]  [-p ldapport]   [-b searchbase]   
[-s base|one|sub] 
[-a never|always|search|find] [-l timelimit] 
[-z sizelimit] filter [attrs...] 

Az ldapsearch kapcsolatot l�tes�t az LDAP szerverrel, �s a sz�r� (filter) haszn�lat�val keres�st hajt v�gre az adatb�zisban. A sz�r�nek meg kell felenie az RFC 1558-ban defini�lt LDAP sz�r�k �br�zol�s�hoz. Ha az ldapsearch egy vagy t�bb bejegyz�st tal�l, az attrs �ltal specifik�lt attrib�tumokat adja vissza, �s az �rt�keket a standard kimenetre �rja ki. Ha attrs nincs felsorolva, az �sszes attrib�tumot visszaadja.

ldapsearch -x -b 'o=TUDelft,c=NL' 'objectclass=*' 

ldapsearch -b 'o=TUDelft,c=NL' 'cn=Rene van Leuken'

ldasearch -u -b 'o=TUDelft,c=NL' 'cn=Luiz Malere' sn mail

A -b opci� a searchbase-t (a keres�s kindul�si pontja), az -u opci� a felhaszn�l�bar�t kimen� inform�ci�t m�g az -x opci� az egyszer� azonos�t�st k�pviseli.

ldapdelete - Az ldapdelete a parancs�rtelmez� �ltal el�rhet� fel�letet biztos�t az ldap_delete(3) f�ggv�ny haszn�lat�hoz. Ez a program haszn�lhat� bejegyz�sek t�rl�s�shez az LDAP adatb�zisban.

Az ldapdelete szintaktik�ja a k�vetkez� (Az opci�k jelent�se az ldapdelete man lapj�n tal�lhat�):

ldapdelete   [-n]   [-v]  [-k]  [-K]
[-c]  [-d debuglevel]  [-f file]  [-D binddn]
[-W]  [-w passwd] [-h ldaphost] [-p ldapport]
[dn]...

Az ldapdelete kapcsolatot l�tes�t az LDAP szerverrel, �s t�r�l egy vagy t�bb bejegyz�st. Ha egy vagy t�bb DN argumentum szerepel, akkor azok a Megk�l�nb�ztet� Nev� (dn) bejegyz�sek t�rl�dnek. Minden DN-nek meg kell felelnie az RFC1779-ben defini�lt karatersorral. Ha nincs dn argumentum megadva, a dn-ek list�j�t a standard bemenetr�l olvassa be (vagy az -f kapcsol�val megadott f�jlb�l).

N�h�ny p�lda k�vetkezik az ldapdelete haszn�lat�ra:

ldapdelete 'cn=Luiz Malere,o=TUDelft,c=NL'

ldapdelete -v 'cn=Rene van Leuken,o=TUDelft,c=NL' -D 'cn=Luiz Malere,o=TUDelft,c=NL' -W 

A -v opci� a b�besz�d� kimenetet, a -D a Binddn-t (az azonos�t� dn-t) �s a -W a jelsz� prompt-ot jelenti.

ldapmodify - Az ldapmodify a parancs�rtelmez� �ltal el�rhet� fel�letet biztos�t az ldap_modify(3) �s az ldap_add(3) f�ggv�nyek haszn�lat�hoz. Ez a program bejegyz�sek m�dos�t�s�hoz haszn�lhat� az LDAP adatb�zisban.

Az ldapmodify szintaktik�ja a k�vetkez� (Az opci�k jelent�se az ldapmodify man lapj�n tal�lhat�):

ldapmodify   [-a]  [-b]  [-c]  [-r]  
[-n]  [-v]  [-k]  [-d debuglevel]  
[-D binddn]  [-W]  [-w passwd] 
[-h ldaphost] [-p ldapport] [-f file] 

ldapadd [-b] [-c] [-r] [-n] 
[-v]  [-k]  [-K]  [-d debuglevel]
[-D binddn]  [-w passwd]  [-h ldaphost] 
[-p ldapport] [-f file] 

Az ldapadd megval�s�t�sa egy hard link az ldapmodify programra. Az ldapadd h�v�sakor az ldappmodify -a (�j bejegyz�s hozz�ad�sa) kapcsol�ja automatikusan bekapcsold�dik. Az ldapmodify kapcsolatot l�tes�t az LDAP szerverrel, �s egy vagy t�bb bejegyz�st m�dos�t. A bejegyz�sek inform�ci�it a standard inputr�l olvassa be, vagy pedig az -f opci�val be�ll�tott f�jlb�l.

N�h�ny p�lda az ldapmodify haszn�lat�ra:

T�telezz�k fel, hogy a /tmp/entrymods f�jl l�tezik, �s a k�vetkez�ket tartalmazza:

dn: cn=Modify Me, o=University of Michigan, c=US  #m�dos�tand� r�sz
changetype: modify 
replace: mail
mail: modme@terminator.rs.itd.umich.edu 
- 
add: title 
title: Grand Poobah 
- 
add: jpegPhoto 
jpegPhoto: /tmp/modme.jpeg 
- 
delete: description 
- 

A parancs:

ldapmodify -b -r -f /tmp/entrymods 

kicser�li a "M�dositand�" bejegyz�s (cn="Modify Me") mail attrib�tum�t a "modme@terminator.rs.itd.umich.edu"-ra, hozz�adja a "Grand Poobah" title (c�m) attrib�tumot, �s a /tmp/modme.jpeg f�jl tartalm�t, mint jpegPhoto, �s t�rli a description attrib�tumot.

A fentiekkel megegyez� m�dos�t�sok a r�gebbi ldapmodify bemeneti form�j�ban:

cn=Modify Me, o=University of Michigan, c=US 
mail=modme@terminator.rs.itd.umich.edu 
+title=Grand Poobah 
+jpegPhoto=/tmp/modme.jpeg 
-description 

�s a hozz� tartoz� parancs:

ldapmodify -b -r -f /tmp/entrymods 

T�telezz�k fel, hogy a /tmp/entrymods f�jl l�tezik, �s a k�vetkez�ket tartalmazza:

dn: cn=Barbara Jensen, o=University of Michigan, c=US 
objectClass: person
cn: Barbara Jensen 
cn: Babs Jensen 
sn: Jensen 
title: the world's most famous manager 
mail: bjensen@terminator.rs.itd.umich.edu 
uid: bjensen 

A parancs:

ldapadd -f /tmp/entrymods 

hozz�adja a bejegyz�st a k�vetkez� megk�l�nb�ztet� n�vvel: cn=Barbara Jensen, o=University of Michigan, c=US, ha eddig nem l�tezett volna. Ha l�tezik ilyen dn-� bejegyz�s, a program hib�val le�ll �s nem �rja fel�l a bejegyz�st.

T�telezz�k fel, hogy a /tmp/newentry f�jl l�tezik, �s a k�vetkez�ket tartalmazza:

dn: cn=Barbara Jensen, o=University of Michigan, c=US 
changetype: delete 

A parancs:

ldapmodify -f /tmp/entrymods 

elt�vol�tja a Barbara Jensen bejegyz�st.

Az -f opci� jelenti a f�jlt (a m�dos�t�shoz sz�ks�ges inform�ci�kat tartalmazza a standard input helyett), a -b kapcsol� jelzi a bin�ris adatokat (minden '/' karakterrel kezd�d� �rt�ket bin�risk�nt kezel), az -r kapcsol� �ll�tja be a hozz�ad�st (a l�tez� �rt�keket alap�rtelmez�sk�nt fel�l�rja).


Fejezet 6. Kieg�sz�t� inform�ci�k �s lehet�s�gek

Ebben a fejezetben tov�bbi inform�ci�k tal�lhat�k olyan hasznos t�m�kr�l, mint az azonos�t�s, napl�z�s, �s az LDAP kliens. A fejezet v�g�n tov�bbi hasznos linkeket (magyar nyelv�eket is!), k�nyveket, �s aj�nlott irodalmat, RFC-ket tal�lunk.


6.2. Azonos�t�s LDAP haszn�lat�val

Ahhoz, hogy az LDDAP szolg�ltat�st ig�nybe vehess�k, el�sz�r azonos�tani kell magunkat (a klienset) a szolg�lta�val. Ez annyib�l �ll, hogy megmondjuk a szervernek, ki akar az adatokhoz f�rni, ebb�l a szerver eld�nti, hogy mihez f�rhet�nk hozz� �s m�r mehet�nk is. Ha a kliens sikeresen azonos�tja mag�t az LDAP szervern�l, akkor ezut�n k�r�seket k�ld a szervernek, a szerver pedig ellen�rzi, hogy a k�r�s kiszolg�l�sa jogos-e vagy sem. Ez a folyamat a hozz�f�r�s-szab�lyoz�s.

Az LDAP-ban az azonos�t�st a "bind" m�velet v�gzi. Az Ldapv3 h�romf�le azonos�t�si m�dot t�mogat: anonymous, egyszer� �s SASL azonos�t�st. Azok az �gyfelek, melyek a "bind" megker�l�s�vel k�ldenek k�r�seket a szerver fel�, anonymous-k�nt lesznek kezelve. Az egyszer� azonos�t�s abb�l �ll, hogy az �gyf�l elk�ldi az LDAP szerver fel� a felhaszn�l� DN-j�t �s a felhaszn�l� egyszer� jelszav�t. Ennek a folyamatnak biztons�gi probl�m�i ad�dnak, mivel a jelsz� k�nnyen elolvashat� a h�l�zatr�l. Ennek elker�l�s�re haszn�lhat� az egyszer� azonos�t�si folyamat egy titkos�tott csatorn�n kereszt�l (mint amilyen az SSL), ezt az LDAP is t�mogatja.

V�gezet�l itt van az SASL, vagyis a Simple Authentication and Security Layer (RFC 2222). Ez a fajta azonos�t�s egy k�rd�s-v�lasz t�pus� protokoll az �gyf�l �s a szerver k�z�tt, melyen kereszt�l l�trej�n egy biztons�gos csatorna, ahol a tov�bbi tranzakci�k lebonyol�dnak. Az SASL haszn�lat�val mindenf�le olyan azonos�t�si m�d lehets�ges, amelyet a szerver �s a kliens megenged. A Cyrus-SASL csomag a k�vetkez� URL-r�l �rhet� el: http://asg.web.cmu.edu/sasl/sasl-library.html.

A felhaszn�l�k tov�bbi azonos�t�sa a c�mt�r f�ban l�v� tov�bbi inform�ci�k el�r�s�hez, az LDAP szerver m�s szolg�ltat�sokb�l sz�rmaz� felhaszn�l�kat (sendmail, login, ftp, stb. ) is k�pes azonos�tani. Ezek a specifikus felhaszn�l�i inform�ci�k eljutnak a szerverhez, majd a PAM (Pluggable Authentication Modules) mechanizmus haszn�lat�val azonos�tja a felhaszn�l�kat. Ez az azonos�t� modul az LDAP sz�m�ra el�rhet� tarball form�j�ban a k�vetkez� c�men:http://www.padl.com/OSS/pam_ldap.html


6.3. SASL konfigur�ci� : Digest-MD5 azonos�t�s

Nekem LDAP-SASL azonos�t�si rendszerem van, amely a DIGEST-MD5 mechanizmust haszn�lja. Ahhoz, hogy m�k�dj�n szigor�an ezekhez a l�p�sekhez ragaszkodva jutottam el:

Ennyi! Amennyiben jobban szeretn�d haszn�lni az SASL-t Kerberos V vagy GSSAPI mechanizmusokkal, �me egy hasznos link: http://www.openldap.org/doc/admin22/sasl.html Ez az oldal felt�telezi, hogy m�r t�l vagy az SASL telep�t�s�n �s be�ll�t�s�n. A levelez�lista seg�thet, ha elakadn�l: http://asg.web.cmu.edu/sasl/index.html#mailinglists


6.4. Grafikus LDAP eszk�z�k

A kldap egy grafikus ldap kliens a KDE k�rnyezetet sz�m�ra. A Kldap k�nyelmes fel�lettel rendelkezik, �s k�pes valamennyi, a c�mt�rban t�rolt inform�ci�s fa megjelent�t�s�re. N�h�ny k�p az alkalmaz�sr�l valamint a let�lt�si hely: http://www.mountpoint.ch/oliver/kldap/

A KDirAdm k�nyvt�r kezel� eszk�zt KDE 2 vagy �jabb k�rnyezethez �rt�k. C�lja, hogy �sszegy�jtse a leg�ltal�nosabban haszn�lt k�nyvt�r kezel� eszk�z�ket: http://www.carillonis.com/kdiradm/

A Directory Administrator(K�nyvt�r Titk�r) a legelterjedtebben haszn�lt Gnome alap� UNIX rendszer� felhaszn�l� �s csoportkezel� alkalmaz�s LDAP c�mt�r kiszolg�l�khoz. A Directory administrator lehet�v� teszi felhaszn�l�k �s csoportok l�trehoz�s�t �s t�rl�s�t, valamint a felhaszn�l�khoz tartoz� n�vjegyalbum inform�ci�k, kiszolg�l�nk�nti hozz�f�r�s-szab�lyoz�sok, �s Sendmail �tvonalv�laszt�sok kezel�s�t. http://diradmin.open-it.org/index.php

A GQegy m�sik, a Gnome k�rnyezet sz�m�ra k�sz�lt grafikus LDAP kliens, egyszer� fel�lettel. M�k�dik KDE alatt is, mint ahogy a Kldap is fut Gnome k�rnyezetben. Tov�bbi inform�ci�k �s a program let�lthet�s�ge: http://biot.com/gq/

LDAP Browser/Editor: Ez egy fantasztikus eszk�z, mindenf�le adminisztr�ci�s �s b�ng�sz�si lehet�s�ggel felszerelve. Itt megn�zhet�/let�lthet�: Ldap Browser.


Fejezet 7. Referenci�k

Ebben a fejezetben tov�bbi LDAP dokument�ci�k felsorol�sa tal�lhat�k: hasznos linkek, k�nyvek �s RFC-k.


7.3. RFC-k

Az LDAP fejleszt�ket t�mogat� RFC-k:

  • RFC 1558: A String Representation of LDAP Search Filters

  • RFC 1777: Lightweight Directory Access Protocol

  • RFC 1778: The String Representation of Standard Attribute Syntaxes

  • RFC 1779: A String Representation of Distinguished Names

  • RFC 1781: Using the OSI Directory to Achieve User Friendly Naming

  • RFC 1798: Connectionless LDAP

  • RFC 1823: The LDAP Application Programming Interface

  • RFC 1959: An LDAP URL Format

  • RFC 1960: A String Representation of LDAP Search Filters

  • RFC 2251: Lightweight Directory Access Protocol (v3)

  • RFC 2307: LDAP as a Network Information Service