Forrás: https://wiki.hup.hu/index.php/ldap http://tldp.fsf.hu/howto/ldap-howto-hu/ Budapesti Műszaki és Gazdaságtudományi Egyetem, Micskei Zoltán: Címtárak Kezelése, 2012. https://hu.wikipedia.org/wiki/c%c3%admt%c3%a1rszolg%c3%a1ltat%c3%a1sok
Mi a címtár? LINUX Szoftverrendszer, amely a címjegyzékben található információt tárolja rendezi és biztosítja a hozzáférést. A szoftverfejlesztésben a címtár egy térkép (mapping) a nevek és értékek között. Milyen címtárak vannak? DNS Domain Name System interneten Active Directory Microsoft címtár LDAP alapú, Windows Server alapeleme LDAP - Lightweight Directory Access Protocol fastuktúra alapú RedHat Directory Service, 389 DS 2 stb.
Mi az LDAP? Ez egy "directory service" (címtár szolgáltatás) amely egy hierarchikus adatbázis. A relációs adatbázistól eltérően (mint pl. az SQL adatbázis), nem táblákba van szervezve az adatbázis, hanem egy gráf felépítéséhez hasonlóan ágakra bomlik. Tipikusan olyan környezetben használjuk, ahol a lekérdezések száma jóval nagyobb a változtatások számánál gyorsaság fontos. Maga az LDAP egy protokoll, és nem egy konkrét termék. LDAP szerver szabadon elérhető verziója az OpenLDAP http://www.openldap.org 3
LDAP szerkezete Faszerkezet minden csúcsa azonos szerkezetű Megengedett tulajdonságokat speciális tulajdonságok határozzák meg objectclass objectclass, tulajdonságok: ún. schema-ba vannak rendezve Formátuma LDIF: dn: ou=group,dc=example,dc=com objectclass: organizationalunit ou: Group dn : bejegyzés azonosító, hogyan jutunk el a gyökérből dc=example,dc=com organizationalunit - tulajdonságtípus ou Organizational Unit, szervezeti egység 4
LDAP szerkezete LINUX Tulajdonságokat lehet még definiálni a bejegyzésekhez Pl. a felhasználóknak (Users): Login Password Home directory stb. 5
LDAP szerkezete Példa LINUX 6
OpenLDAP telepítés Debian-alapú rendszereken apt-get install slapd ldap-utils migrationtools apt install slapd ldap-utils migrationtools RedHat-alapú rendszereken yum install openldap-servers openldap-clients dnf install openldap-servers openldap-clients 7
OpenLDAP konfigurálás Szerver oldal: /etc/openldap/slapd.conf fájl # schema include /etc/openldap/schema/core.schema include /etc/openldap/schema/cosine.schema include /etc/openldap/schema/inetorgperson.schema include /etc/openldap/schema/nis.schema include /etc/openldap/schema/misc.schema # ACL, hozzáférések # admin írási jog, anonymous-nak azonosítás kell, user saját maga írhatja, másoknak # semmi joga access to attrs=userpassword by dn="cn=admin,dc=example,dc=com" write by anonymous auth by self write by * none # adatbázis beállítások, rootpw slappasswd -h {SSHA} database suffix rootdn rootpw bdb "dc=example,dc=com" "cn=manager,dc=example,dc=com" {SSHA}blablabla 8
OpenLDAP konfigurálás Szerver oldal: Példa, file.ldif: dn: dc=example.dc=com objectclass: dcobject objectclass: organization dc: example o: Valamilyen Szervezet LINUX dn: cn=manager,dc=example,dc=com objectclass: organizationalrole objectclass: top cn: Manager dn: cn=admin,dc=example,dc=com objectclass: organizationalrole objectclass: simplesecurityobject cn: admin description: LDAP administrator 9
OpenLDAP konfigurálás Szerver oldal: Példa, file.ldif betöltése kétféle módon: ldapmodify -a -x -D cn=manager,dc=example,dc=com -W -f file.ldif ldapadd -x -D cn=manager,dc=example,dc=com -W -f file.ldif Futtatáskor bekéri a jelszót. Rendszer userek importálása (felesleges sorok törölhetők az ldif-ből) pl.: cd /usr/share/migrationtools./migrate_group.pl /etc/group ~/groups.ldif./migrate_passwd.pl /etc/passwd ~/passwd.ldif 10
OpenLDAP konfigurálás Kliens oldal: /etc/nsswitch.conf fájl: beállítható, hogy mit szeretnénk LDAP-ból venni: # ldap-ból: passwd: ldap shadow: ldap group: ldap # ha gond van, akkor lokálisan még működjön a rendszer: /etc/pam.d/common-auth /etc/pam.d/common-password /etc/pam.d/common-session /etc/pam.d/common-account /etc/ldap.conf, /etc/openldap/ldap.conf fájl: URI ldap://127.0.0.1/ BASE dc=intranet, dc=example, dc=hu 11
OpenLDAP konfigurálás SAMBA és LDAP (like Active Directory ), smb.conf: # Standalone Server options security = user passdbbackend = ldapsam:ldap://127.0.0.1:389/ ldap suffix = dc=intranet,dc=example,dc=hu ldap user suffix = ou=people ldap group suffix = ou=group ldap admin dn = cn=manager,dc=intranet,dc=example,dc=hu ldap delete dn = no ldap password sync = yes unix password sync = yes Az OpenLDAP szerveren engedélyezni kell a samba.schema állomány betöltését! 12
Köszönöm a figyelmet! 13