Kilka ćwieczeń jak przeszukiwać bazę danych ldap-a z linii poleceń.
Instalacja koniecznego oprogramowania
Fedora Core 7
Aby korzystać z ćwiczeń z tego tematu należy mieć zainstalowany pakiet openldap-clients oraz oczywisie mieć możliwosc podłączenia do zdalnego lub lokalnego serwera LDAP. Pakiet openldap-clients można zainstalować przy pomocy polecenia:
yum install openldap-clients
Domyślny kontekst
W pliku /etc/openldap/ldap.conf mamy zdefiniowany domyślny kontekst przeszukiwania w zmiennej BASE. Jeżeli jesteście tak samo leniwi jak ja i nie chce się wam cały czas podawać kontekstu przeszukiwania, ustawcie tą zmienną:
BASE dc=unix4you,dc=net
Określenie kontekstu nazw
ldapsearch -x -h localhost -s base -b "" +
Dokładniej:
ldapsearch -x -h SERVER -s base -b "" + | grep "namingContexts:"
Przeglądanie wpisów w katalogu
ldapsearch -x -h localhost -b "dc=linuxexpert,dc=pl" -s one
Przejrzenie osób w katalogu
ldapsearch -x -h localhost -b "dc=linuxexpert,dc=pl" "(&(objectclass=person)(ou=accounting))"
Przeszukiwanie katalogu połączeniem szyfrowanym i nieszyfrowanym
Jak wiadomo, serwer może koumnikować się z klientem w sposób szyfrowany lub nie. W przypadku zadawania pytań, różnia polega na okresleniu adresu docelowego serwera. W przypadku drogi nieszyfrowanej jest to:
ldapsearch -v -b "dc=linuxexpert,dc=pl" -LLL -D "cn=admin,dc=linuxexpert,dc=pl" -H "ldap://127.0.0.1/" -W -x
W przypadku drogi szyfrowanej jest to:
ldapsearch -v -b "dc=linuxexpert,dc=pl" -LLL -D "cn=admin,dc=linuxexpert,dc=pl" -H "ldaps://127.0.0.1/" -W -x
Jak widać różnica polega na wskazaniu innego protokołu przy okreslaniu docelowego serwera. Aby sprawdzić czy faktycznie komunikacja przebiega szyfrowanym kanałem należy użyć jakiegos sniffera.
Przegląd podstawowych przełączników
-x | użycie prostej autoryzacji zamiast autoryzacji opartej na SASL |
-h host | Alternatwyny host z serwerem LDAP |
-s base|one|sub | Określenie zakresu przeszukiwania bazy, może być jedną z : baza (obiekt bazy) (base), pojedyńczy obiekt (one), lub podrzewo (sub) Domyślnie jest to sub. |
-b searchbase | Ustawienie „searchbase” jako punktu startowego do przeszukiwań w zamian za domyślny punkt startu. |
Przegląd atrybutów
* | Wszystkie atrybuty użytkownika zostaną zwrócone |
+ | Wszystkie operacyjne atrybuty zostaną zwrócone |
brak | Wszstkie atrybuty użytkownika zostaną zwrócone |
1.1 | Zadne atrybuty nie zostaną zwrócone |