het is vrij gebruikelijk om Linux of UNIX machines op een netwerk te hebben met een Microsoft Active Directory (AD) domein. Er kunnen momenten zijn waarop u wilt of moet zoeken in Active Directory met ldapsearch.
snel voorbeeld
gebruikmakend van TLS
ldapsearch -H ldaps://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(sAMAccountName=user)"
zonder TLS
ldapsearch -H ldap://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(sAMAccountName=user)"
als u een meer diepgaande handleiding wilt of nodig hebt, lees dan verder.
LDAP instellen.conf
als u akkoord bent met een niet-versleutelde verbinding, ga dan naar de volgende sectie. Indien mogelijk moet u het certificaat van de certificeringsinstantie (CA) verkrijgen dat is gebruikt om het AD-servercertificaat te ondertekenen. Vraag uw AD-beheerder om dit voor u in PEM-formaat. Als dit niet mogelijk is en als u er redelijk zeker van bent dat uw netwerkverbinding niet in gevaar is, kunt u openssl gebruiken om het servercertificaat van de server op te halen. Het volgende voorbeeld laat zien hoe dit te doen.
tyler@desktop:~$ openssl s_client -connect ldap.tylersguides.com:636 -showcerts
kopieer en plak de certificaattekst van het onderste certificaat in een bestand. Ik gebruik /pki / cacerts.pem. De certificaattekst ziet er ongeveer zo uit:
-----BEGIN CERTIFICATE-----MIIFdDCCBFygAwIBAgIQJ2buVutJ846r13Ci/ITeIjANBgkqhkiG9w0BAQwFADBvMQswCQYDVQQGEwJTRTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFsIFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBFpu/xO28QOG8=-----END CERTIFICATE-----
open ldap.conf met een teksteditor. Hier is waar te vinden op verschillende besturingssystemen:
OS | pad |
---|---|
CentOS | / etc / openldap / ldap.conf |
Debian | / etc / ldap / ldap.conf |
OpenSUSE | / etc / openldap / ldap.conf |
voeg de regel
TLS_CACERT /pki/cacerts.pem
toe aan uw bestand. Vervang /pki / cacerts.pem met de locatie die u de AD CA cert als je besloten om het ergens anders te zetten. Voeg ook de regel
TLS_REQCERT demand
aan uw bestand toe. In het geval dat uw netwerk wordt gecompromitteerd, zal dit voorkomen dat de aanvaller van het stelen van uw referenties met een man in het midden aanval.
zoek in Active Directory met Ldapsearch
gebruik het volgende voorbeeld en vervang de gemarkeerde waarden om de zoekopdracht uit te voeren. Als u ervoor hebt gekozen geen versleutelde verbinding te gebruiken, gebruikt u ldap: / / in plaats van ldaps://
ldapsearch -H ldaps://dc.example.com -x -W -D "[email protected]" \ -b "dc=example,dc=com" "(filter)" "attr1" "attr2"
optie | uitleg |
---|---|
-H | de URI van de directoryserver die u opvraagt. |
-x | gebruik eenvoudige authenticatie in plaats van SASL. |
-W | vraagt u om uw wachtwoord. |
-D | de DN van de gebruiker waarbij u zich aanmeldt. Bij het opvragen van ADVERTENTIE, dit zal uw advertentie gebruikersnaam @ uw domein. |
-b | waar in de directory om uw zoekopdracht te starten. Als u weet wat OU de items die u zoekt zijn in, kunt u het toevoegen aan uw basis. Bijvoorbeeld, als je weet dat je wilt kijken in een OU genaamd stuff, zal je basis er zo uitzien: “ou = stuff, dc = voorbeeld, dc = com”. Als je niet weet wat OU Het is in, is het ok om gewoon gebruik maken van uw domein. Bijv. “dc=tylersguides, dc = com” |
filter | het LDAP-zoekfilter dat gebruikt wordt om items te vinden. De eenvoudigste filter is op zoek naar een attribuut met een bepaalde waarde. Bijvoorbeeld, als je op zoek bent naar een AD gebruiker met de gebruikersnaam bob, zou je het filter “(sAMAccountName=bob)”gebruiken. Als je iedereen wilt vinden die lid is van de groep CN = storage, ou = groups, dc = example, dc = com, dan gebruik je “(memberOf = CN = storage, ou = groups, dc = example, dc = com)” |
attr | de attributen die u wilt weergeven. Elk attribuut moet worden gescheiden met een spatie. Enkele veel voorkomende zijn mail en memberOf. |
als je geïnteresseerd bent, heb ik een gids geschreven over LDAP zoekfilters.