dość powszechne jest posiadanie maszyn z Linuksem lub Uniksem w sieci z domeną Microsoft Active Directory (AD). Może się zdarzyć, że będziesz chciał lub musiał przeszukiwać Active Directory za pomocą ldapsearch.
szybki przykład
używanie TLS
ldapsearch -H ldaps://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(sAMAccountName=user)"
bez TLS
ldapsearch -H ldap://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(sAMAccountName=user)"
jeśli chcesz lub potrzebujesz bardziej szczegółowego przewodnika, Czytaj dalej.
Skonfiguruj ldap.conf
jeśli nie masz dostępu do niezaszyfrowanego połączenia, przejdź do następnej sekcji. Jeśli to możliwe, należy uzyskać certyfikat urzędu certyfikacji używany do podpisania certyfikatu serwera AD. Poproś administratora reklamy, aby dostarczył Ci to w formacie PEM. Jeśli nie jest to możliwe i masz pewność, że Twoje połączenie sieciowe nie zostało naruszone, możesz użyć openssl do pobrania certyfikatu serwera z serwera. Poniższy przykład pokazuje, jak to zrobić.
tyler@desktop:~$ openssl s_client -connect ldap.tylersguides.com:636 -showcerts
skopiuj i wklej tekst certyfikatu z dolnego certyfikatu do pliku. Używam/pki / cacerts.pem. Tekst certyfikatu będzie wyglądał mniej więcej tak:
-----BEGIN CERTIFICATE-----MIIFdDCCBFygAwIBAgIQJ2buVutJ846r13Ci/ITeIjANBgkqhkiG9w0BAQwFADBvMQswCQYDVQQGEwJTRTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFsIFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBFpu/xO28QOG8=-----END CERTIFICATE-----
Otwórz ldap.conf z edytorem tekstu. Oto, gdzie można go znaleźć na różnych systemach operacyjnych:
OS | ścieżka |
---|---|
CentOS | /etc/openldap / ldap.conf |
Debian | /etc/LDAP/LDAP.conf |
OpenSUSE | /etc/openldap / ldap.conf |
Dodaj linię
TLS_CACERT /pki/cacerts.pem
do swojego pliku. Zastąp / pki / cacerts.pem z lokalizacją, w której umieściłeś certyfikat AD CA, jeśli zdecydowałeś się umieścić go gdzie indziej. Dodaj również linię
TLS_REQCERT demand
do swojego pliku. W przypadku naruszenia Twojej sieci, uniemożliwi to atakującemu kradzież Twoich danych uwierzytelniających za pomocą ataku man in the middle.
wyszukaj Active Directory za pomocą Ldapsearch
użyj poniższego przykładu, zastępując podświetlone wartości, aby wykonać wyszukiwanie. Jeśli zdecydowałeś się nie używać połączenia szyfrowanego, użyj ldap: / / zamiast ldaps://
ldapsearch -H ldaps://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(filter)" "attr1" "attr2"
opcja | Wyjaśnienie |
---|---|
-H | URI serwera katalogowego, którego szukasz. |
-x | używa prostego uwierzytelniania zamiast SASL. |
-W | |
-D | DN użytkownika, którego uwierzytelniasz. Podczas odpytywania reklamy będzie to nazwa użytkownika reklamy @ Twoja domena. |
-b | gdzie w katalogu, aby rozpocząć wyszukiwanie. Jeśli wiesz, w jakich wpisach są szukane, możesz dodać je do swojej bazy. Na przykład, jeśli wiesz, że chcesz szukać w ou nazwie rzeczy, twoja baza będzie wyglądać tak: ou=stuff, dc = example, dc=com (ang.). Jeśli nie wiesz, w czym to jest, możesz po prostu użyć swojej domeny. Np. „dc = tylersguides, dc = com” |
filtr | filtr wyszukiwania LDAP używany do wyszukiwania wpisów. Najprostszym filtrem jest szukanie atrybutu o określonej wartości. Na przykład, jeśli szukasz użytkownika reklamy o nazwie użytkownika bob, użyjesz filtra ” (sAMAccountName=bob)”. Jeśli chcesz znaleźć wszystkich członków grupy cn = storage,ou=groups, dc = example, dc = com, użyjesz „(memberOf = cn=storage, ou=groups, dc = example, dc = com)” |
attr | atrybuty, które chcesz wyświetlić. Każdy atrybut powinien być oddzielony spacją. Niektóre z nich to mail i memberOf. |
jeśli jesteś zainteresowany, napisałem przewodnik na temat filtrów wyszukiwania LDAP.