Differences

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

Link to this comparison view

saisp:labs:02:contents:05 [2013/11/11 00:46]
127.0.0.1 external edit
saisp:labs:02:contents:05 [2014/03/03 00:19] (current)
razvan.deaconescu [05. Actualizare configurare pentru server]
Line 1: Line 1:
-==== 05. Lorem ipsum ====+==== 05. [10p] Actualizare configurare pentru server ​====
  
-...+Serverul de LDAP are două tipuri de baze de dateO bază de date internă, pentru configuare, și o bază de date cu informații LDAPBaza de date internă permite serverului de LDAP configurarea acestuia tot prin comenzi LDAP; se asigură astfel o interfață unificată și, mai mult, posibilitatea de a realiza configurații fără a fi nevoie de repornirea serverului.
  
 +Pentru a urmări și configura întreaga bază de date de internă a serverului rulăm, pe stația de tip server, comanda<​code bash>
 +root@ldap-server:​~#​ ldapsearch -Y EXTERNAL -H ldapi:/// -b "​cn=config"​
 +[...]
 +</​code>​
  
 +Sunt afișate foarte multe informații,​ practic toată baza de date internă a serverului LDAP. Dacă vrem să afișăm doar informațiile ce țin de configurarea informațiilor,​ vom investiga intrarea ''​olcDatabase={1}hdb,​cn=config'':<​code bash>
 +root@ldap-server:​~#​ ldapsearch -LLL -Y EXTERNAL -H ldapi:/// -b "​olcDatabase={1}hdb,​cn=config"​
 +SASL/​EXTERNAL authentication started
 +SASL username: gidNumber=0+uidNumber=0,​cn=peercred,​cn=external,​cn=auth
 +SASL SSF: 0
 +dn: olcDatabase={1}hdb,​cn=config
 +objectClass:​ olcDatabaseConfig
 +objectClass:​ olcHdbConfig
 +olcDatabase:​ {1}hdb
 +olcDbDirectory:​ /​var/​lib/​ldap
 +olcSuffix: dc=labs,​dc=cs,​dc=pub,​dc=ro
 +[...]
 +</​code>​
 +
 +Dacă vrem să afișăm informații legate strict de configurarea serverului LDAP (număr de thread-uri folosite, nivel de jurnalizare,​ certificat) vom investiga doar baza intrării ''​cn=config'':<​code bash>
 +root@ldap-server:​~#​ ldapsearch -LLL -Y EXTERNAL -H ldapi:/// -b "​cn=config"​ -s base
 +SASL/​EXTERNAL authentication started
 +SASL username: gidNumber=0+uidNumber=0,​cn=peercred,​cn=external,​cn=auth
 +SASL SSF: 0
 +dn: cn=config
 +objectClass:​ olcGlobal
 +cn: config
 +olcArgsFile:​ /​var/​run/​slapd/​slapd.args
 +olcLogLevel:​ none
 +olcPidFile: /​var/​run/​slapd/​slapd.pid
 +olcTLSCACertificateFile:​ /​etc/​ssl/​certs/​cacert.org_root.pem
 +olcTLSCertificateFile:​ /​etc/​ssl/​certs/​slapd-cert.pem
 +olcTLSCertificateKeyFile:​ /​etc/​ssl/​private/​slapd-key.pem
 +olcToolThreads:​ 1
 +</​code>​
 +
 +Directivele de configurare în serverul LDAP sunt atribute în intrările cu dn-uri care se termină în ''​cn=config''​. Atributele încep cu prefixul ''​olc''​ însemnând //OpenLDAP Configuration//​.
 +
 +Dorim să configurăm nivelul de jurnalizare al serverului LDAP. Directiva de configurare se numește ''​olcLogLevel'',​ așa cum este documentată [[http://​www.openldap.org/​doc/​admin24/​slapdconf2.html#​cn=config|aici]]. Observăm că area valoarea ''​none''​. Vrem să-i schimbăm valoarea la ''​stats''​.
 +
 +Pentru aceasta construim un fișier LDIF:<​file none change-log-level.ldif>​
 +dn: cn=config
 +changetype: modify
 +replace: olcLogLevel
 +olcLogLevel:​ stats
 +</​file>​ apoi încărcăm fișierul în baza de date LDAP:<​code bash>
 +root@ldap-server:​~#​ ldapadd -Y EXTERNAL -H ldapi:/// -f change-log-level.ldif
 +SASL/​EXTERNAL authentication started
 +SASL username: gidNumber=0+uidNumber=0,​cn=peercred,​cn=external,​cn=auth
 +SASL SSF: 0
 +modifying entry "​cn=config"​
 +</​code>​ și verificăm faptul că a fost încărcat corespunzător:<​code bash>
 +root@ldap-server:​~#​ ldapsearch -LLL -Y EXTERNAL -H ldapi:/// -b "​cn=config"​ -s base olcLogLevel
 +SASL/​EXTERNAL authentication started
 +SASL username: gidNumber=0+uidNumber=0,​cn=peercred,​cn=external,​cn=auth
 +SASL SSF: 0
 +dn: cn=config
 +olcLogLevel:​ stats
 +</​code>​
 +
 +În exemplul de mai sus am creat un fișier LDIF care a modificat valoarea atributului ''​olcLogLevel''​ la valoarea ''​stats''​. Putem observa informațiile de jurnalizare generate de serverul de LDAP în fișierul ''/​var/​log/​syslog''​ de pe stația server; eventual facem niște cereri de interogare LDAP (folosind ''​ldapsearch''​) de pe stația client.
 +
 +**Exercițiu**:​ Modificați nivelul de jurnalizare al serverului LDAP astfel încât să jurnalizeze și mesaje de tipul ''​stats''​ și mesaje de tipul ''​stats2''​. E ceva simplu :-)
 +
 +<​solution -hidden>
 +Pentru început creăm fișierul LDIF în care valoarea atributului ''​olcLogLevel''​ este stabilită la ''​stats stats2'':<​file none update-log-level.ldif>​
 +dn: cn=config
 +changetype: modify
 +replace: olcLogLevel
 +olcLogLevel:​ stats stats2
 +</​file>​ după care încărcăm fișierul:<​code bash>
 +root@ldap-server:​~#​ ldapadd -Y EXTERNAL -H ldapi:/// -f update-log-level.ldif ​
 +SASL/​EXTERNAL authentication started
 +SASL username: gidNumber=0+uidNumber=0,​cn=peercred,​cn=external,​cn=auth
 +SASL SSF: 0
 +modifying entry "​cn=config"​
 +</​code>​ și verificăm noua configurație:<​code bash>
 +root@ldap-server:​~#​ ldapsearch -LLL -Y EXTERNAL -H ldapi:/// -b "​cn=config"​ -s base olcLogLevel
 +SASL/​EXTERNAL authentication started
 +SASL username: gidNumber=0+uidNumber=0,​cn=peercred,​cn=external,​cn=auth
 +SASL SSF: 0
 +dn: cn=config
 +olcLogLevel:​ stats stats2
 +</​code>​
 +</​solution>​
saisp/labs/02/contents/05.1384123597.txt.gz · Last modified: 2014/03/01 21:24 (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