Netflex Blog

Active Directory doorzoeken vanaf de command line

random

Active Directory doorzoeken vanaf de command line

Krijgt u als beheerder ook wel eens de vraag een lijst op te leveren met alle gebruikers en groepen binnen uw organisatie? Het opleveren van deze lijst kan, zeker als er diverse OU’s gebruikt worden, lastig zijn. Gelukkig heeft Microsoft hier een aantal handige (command line) tools voor.

In dit blog bespreken we er 2, namelijk DSQUERY en DSGET.

DSQUERY
DSQUERY is een command line tool die gebruikt kan worden om de AD te doorzoeken op objecten aan de hand van specifieke criteria.

De volgende commando’s kunnen worden gebruikt om specifieke objecten binnen de AD te vinden:

dsquery computer – finds computers in the directory.
dsquery contact – finds contacts in the directory.
dsquery subnet – finds subnets in the directory.
dsquery group – finds groups in the directory.
dsquery ou – finds organizational units in the directory.
dsquery site – finds sites in the directory.
dsquery server – finds AD DCs/LDS instances in the directory.
dsquery user – finds users in the directory.
dsquery quota – finds quota specifications in the directory.
dsquery partition – finds partitions in the directory.
dsquery * – finds any object in the directory by using a generic LDAP query.

DSGET
DSGET is een command line tool die gebruikt kan worden om specifieke eigenschappen van een object binnen de AD weer te geven.

De volgende commando’s kunnen worden gebruikt om specifieke eigenschappen van een object binnen de AD te vinden:

dsget computer – displays properties of computers in the directory.
dsget contact – displays properties of contacts in the directory.
dsget subnet – displays properties of subnets in the directory.
dsget group – displays properties of groups in the directory.
dsget ou – displays properties of ou’s in the directory.
dsget server – displays properties of servers in the directory.
dsget site – displays properties of sites in the directory.
dsget user – displays properties of users in the directory.
dsget quota – displays properties of quotas in the directory.
dsget partition – displays properties of partitions in the directory.

Voorbeeld 1
Q: Welke gebruikers bevinden zich in de OU “Users” en wat is hun inlognaam?
A: Om deze vraag te kunnen beantwoorden gebruiken we het commando DSQUERY, we willen immers informatie over objecten (user accounts) binnen de AD hebben.

image

In dit voorbeeld staan alle gebruikers in de OU Users

C: >dsquery user ou=users,ou=eldernet,dc=eldernet,dc=lan


“CN=Michiel Elderson,OU=Users,OU=Eldernet,DC=eldernet,DC=lan”
“CN=Donald Duck,OU=Users,OU=Eldernet,DC=eldernet,DC=lan”
“CN=Dagobert Duck,OU=Users,OU=Eldernet,DC=eldernet,DC=lan”
“CN=Katrien Duck,OU=Users,OU=Eldernet,DC=eldernet,DC=lan”

We krijgen een lijst te zien met alle gebruikers die zich in de desbetreffende OU bevinden. Uiteraard is dit niet erg leesbaar en missen we nog een aantal zaken zoals bijvoorbeeld de inlog naam van de gebruikers. Hier gebruiken we DSQUERY i.c.m. DSGET voor.

C: >dsquery user ou=users,ou=eldernet,dc=eldernet,dc=lan | dsget user -fn -ln –samid


  Samid                   fn                  ln
Michiel                Michiel          Elderson
Donald                Donald          Duck
Dagobert            Dagobert       Duck
Katrien              Katrien          Duck

Door “| dsget user -fn -ln –samid” aan het bestaande DSQUERY commando toe te voegen zal de uitkomst van het gedeelte voor het | (pipe) teken als basis gebruikt worden voor het commando achter het | teken. In het DSGET commando willen we de First name (FN), last name (LN) en het accountnaam (SAMID) achterhalen.

LET OP: Staan er meer dan 100 gebruikers in de desbetreffende OU voeg dan ”–limit 0” aan uw DSQUERY commando toe, standaard worden er niet meer dan 100 objecten getoond.

Voorbeeld 2

Q: Welke gebruikers zijn lid van de groep “Group1” en wat is hun mobile nummer?
A: Om deze vraag te kunnen beantwoorden gebruiken we het commando DSGET, we willen immers informatie over objecten (Groepen) binnen de AD hebben.

C: >dsget group cn=group1,ou=groups,ou=eldernet,dc=eldernet,dc=lan -members | dsget user -samid -fn -ln –mobile

  samid              fn                    ln                 mobile
Katrien           Katrien           Duck            06-12345678
Dagobert        Dagobert        Duck            06-12345678
Donald           Donald            Duck            06-12345678

Scroll to Top