Differences

This shows you the differences between two versions of the page.

Link to this comparison view

saisp:labs:01:contents:05 [2013/11/11 00:46]
127.0.0.1 external edit
saisp:labs:01:contents:05 [2014/02/18 13:56] (current)
razvan.deaconescu [05. [15p] Adăugare intrări în baza de date LDAP]
Line 1: Line 1:
-==== 05. Lorem ipsum ====+==== 05. [15p] Adăugare intrări în baza de date LDAP ====
  
-...+Vrem să populăm baza de date LDAP cu intrăriPentru aceasta trebuie redactate fișiere de configurare în format LDIF care să fie apoi adăuagate în baza de date LDAP.
  
 +Fișierele de configurare se găsesc în format LDIF pe stația client în directorul ''/​etc/​ldap/​ldif/'':<​code bash>
 +root@ldap-client:/​etc/​ldap/​ldif#​ ls
 +o-protoss.ldif ​   ou-khalai.ldif ​  ​uid-amengsk.ldif ​ uid-zeratul.ldif
 +o-terran.ldif ​    ​ou-nerazim.ldif ​ uid-artanis.ldif
 +ou-dominion.ldif ​ ou-raiders.ldif ​ uid-raynor.ldif
 +</​code>​
  
 +Pentru a adăuga intrări în baza de date LDAP folosim comanda ''​ldapadd''​. Trebuie să precizăm care este ''​dn''​-ul contului de administrator (parola este ''​student''​):<​code bash>
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f o-terran.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f ou-dominion.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​ou=Dominion,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f ou-raiders.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​ou=Raiders,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f uid-raynor.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​uid=raynor,​ou=Raiders,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f uid-amengsk.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​uid=amengsk,​ou=Dominion,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +</​code>​
 +
 +Opțiunea ''​-D''​ precizează ''​dn''​-ul utilizatorului privilegiat. Opțiunea ''​-f''​ precizează fișierul format LDIF care va fi adăugat. Iar opțiunea ''​-W''​ precizează că se va introduce parola de la intrarea standard.
 +
 +Intrările adăugate se găsesc acum în baza de date LDAP:<​code bash>
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapsearch -x -LLL dn
 +dn: dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: ou=Dominion,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: ou=Raiders,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: uid=raynor,​ou=Raiders,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: uid=amengsk,​ou=Dominion,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +</​code>​
 +
 +Adăugați și celelate intrări din fișierele LDIF din directorul ''/​etc/​ldap/​ldif/''​. Există lipsuri în anumite fișiere pe care trebuie să le rezolvați.
 +
 +<note hint>
 +Acolo unde vă solicită un câmp completați cu o valoare potrivită.
 +</​note>​
 +
 +Creați două noi fișiere:
 +  * ''​uid-vmengsk.ldif''​ conține informații despre ''​Valerian Mengsk''​ (Dominion).
 +  * ''​uid-horner.ldif''​ conține informații despre ''​Matt Horner''​ (Raiders).
 +Adăugați aceste fișiere la baza de date LDAP.
 +
 +<note tip>
 +Se recomandă să porniți de la fișiere existente și să le modificați pe acelea. Puteți porni de la fișierele ''​uid-amengsk.ldif''​ și ''​uid-raynor.ldif''​.
 +</​note>​
 +
 +În final listați conținutul bazei de date.
 +
 +<​solution -hidden>
 +Adăugăm intrări în baza de date LDAP:<​code bash>
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f o-protoss.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f ou-khalai.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​ou=Khalai,​o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f ou-nerazim.ldif ​
 +Enter LDAP Password: ​
 +ldapadd: invalid format (line 4) entry: "​ou=Nerazim,​o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +</​code>​
 +
 +Problema fișierului ''​ou-nerazim.ldif''​ este absența caracterului '':''​ (două puncte) în cadrul liniei cu atributul ''​description''​. Trebuie să fie așa:<​code>​
 +description:​ Protoss Dark Templar caste
 +</​code>​
 +
 +Adăugăm apoi fișierele:<​code bash>
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f ou-nerazim.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​ou=Nerazim,​o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f uid-artanis.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​uid=artanis,​ou=Khalai,​o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +ldap_add: Object class violation (65)
 + additional info: object class '​inetOrgPerson'​ requires attribute '​sn'​
 +</​code>​
 +
 +Observăm că atributul ''​sn''​ (nume de familie -- //​surname//​) este obligatoriu pentru intrările din clasa ''​inetOrgPerson''​. Adăugăm în fișierele ''​uid-artanis.ldif''​ și ''​uid-zeratul.ldif''​ linia:<​code>​
 +sn: Templar
 +</​code>​
 +
 +Adăugăm acum fișierele:<​code bash>
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f uid-artanis.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​uid=artanis,​ou=Khalai,​o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f uid-zeratul.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​uid=zeratul,​ou=Nerazim,​o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +</​code>​
 +
 +Generăm apoi fișiere LDIF pentru ''​uid-vmengsk.ldif''​ și pentru ''​uid-horner.ldif''​ pornind de la cele existente:<​code>​
 +root@ldap-client:/​etc/​ldap/​ldif#​ cp uid-amengsk.ldif uid-vmengsk.ldif
 +root@ldap-client:/​etc/​ldap/​ldif#​ vi uid-vmengsk.ldif
 +root@ldap-client:/​etc/​ldap/​ldif#​ cp uid-raynor.ldif uid-horner.ldif
 +root@ldap-client:/​etc/​ldap/​ldif#​ vi uid-horner.ldif
 +</​code>​
 +
 +Apoi adăugăm fișierele generate în baza de date LDAP:<​code bash>
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f uid-vmengsk.ldif
 +Enter LDAP Password: ​
 +adding new entry "​uid=vmengsk,​ou=Dominion,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapadd -x -D cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro -W -f uid-horner.ldif ​
 +Enter LDAP Password: ​
 +adding new entry "​uid=horner,​ou=Raiders,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro"​
 +</​code>​
 +
 +Ulterior putem urmări toate intrările din baza de date LDAP:<​code bash>
 +root@ldap-client:/​etc/​ldap/​ldif#​ ldapsearch -x -LLL dn
 +dn: dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: cn=admin,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: ou=Dominion,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: ou=Raiders,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: uid=raynor,​ou=Raiders,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: uid=amengsk,​ou=Dominion,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: ou=Khalai,​o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: ou=Nerazim,​o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: uid=artanis,​ou=Khalai,​o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: uid=zeratul,​ou=Nerazim,​o=Protoss,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: uid=vmengsk,​ou=Dominion,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +
 +dn: uid=horner,​ou=Raiders,​o=Terran,​dc=labs,​dc=cs,​dc=pub,​dc=ro
 +</​code>​
 +</​solution>​
saisp/labs/01/contents/05.1384123597.txt.gz · Last modified: 2014/01/24 18:50 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0