cmdlet Get-ADDomainController sa dá použiť na získanie informácií o radičoch domény v službe Active Directory. Táto rutina je súčasťou modulu Active Directory pre PowerShell a vyžaduje inštaláciu samostatnej súčasti RSAT (v systéme Windows 10 1809 a novšom je RSAT nainštalovaná novým spôsobom).
obsah:
- Get-ADDomainController Cmdlet
- Na výber radičov domény podľa podmienok používame funkciu Get-ADDomainController
- Skript PowerShell na kontrolu dostupnosti všetkých radičov domény
Get-ADDomainController Cmdlet
Pri spustení Get-ADDomainController
bez parametrov cmdlet zobrazuje informácie o aktuálnom radiči domény (LogonServer), ktorý tento počítač používa na autentifikáciu (DC sa vyberie pri zavedení v súlade s topológiou adries AD).
Rutina cmdlet vrátila všetky polia s informáciami o radiči domény dostupnými v službe AD.
ComputerObjectDN: CN = mskDC01, OU = radiče domény, DC = corp, DC = winitpro, DC = ru DefaultPartition: DC = corp, DC = winitpro, DC = ru Doména: corp.winitpro.ru Povolené: True Forest: winitpro.ru Názov hostiteľa: mskDC01.corp.winitpro.ru InvocationId: 96234a-7fc6-4a32-9e62-3b32343ab4ad IPv4Address: 10.1.10.6 IPv6Address: IsGlobalCatalog: True IsReadOnly: False LdapPort: 389 Name: mskDC01 Nastavenia CNDSet, Nastavenia NTDSS mskDC01 CN = Servery, CN = MskCenter, CN = Weby, CN = Konfigurácia, DC = winitpro, DC = sk OperatingSystem: Windows Server 2008 R2 Standard OperatingSystemHotfix: OperatingSystemServicePack: Service Pack 1 OperatingSystemVersion: 6.1 (7601) OperationMasterRoles: Partitions: DC = ForestDnsZones, DC = winitpro, DC = ru, DC = DomainDnsZones, DC = corp, DC = winitpro, DC = ru, CN = Schéma, CN = Konfigurácia, DC = winitpro, DC = ru ... ServerObjectDN: CN = mskDC01 , CN = servery, CN = MskCenter, CN = stránky, CN = konfigurácia, DC = winitpro, DC = ru ServerObjectGuid: 8052323-e294-4430-a326-9553234431d6 Site: MskCenter SslPo rt: 636
Pomocou mechanizmu DCLocator môžete tiež nájsť radič domény, do ktorého by mal váš počítač patriť:
Get-ADDomainController -Discover
Nájdete najbližšiu dostupnú DC s aktívnou úlohou AD Web Services:
Get-ADDomainController -ForceDiscover -Discover -Service ADWS
Parameter Service sa dá použiť na nájdenie PDC v doméne:
Get-ADDomainController -Discover -Service PrimaryDC
Ak sa váš radič domény nenájde alebo neodpovedá, môžete nájsť radič domény na najbližšom webe AD (určenom podľa hmotnosti komunikácií medzi lokalitami):
Get-ADDomainController -Discover -ForceDiscover -NextClosestSite
Zoznam všetkých radičov domény v aktuálnej doméne:
Get-ADDomainController -Filter * | ft
Počet radičov domén v AD môžete vypočítať pomocou príkazu:
Get-ADDomainController -Filter * | Measure-Object
Zobrazíme pohodlnejšiu tabuľku, v ktorej sú uvedené všetky radiče domény s ich menom, adresou IP, verziou OS a názvom lokality AD:
Get-ADDomainController -Filter * | Vyberte Názov, ipv4Adresa, OperatingSystem, site | Názov objektu zoradenia
Ak potrebujete získať informácie o DC z inej domény, musíte pomocou parametra určiť názov všetkých dostupných domén DC v doméne tretej strany. -server (možné s dôverou medzi doménami).
Get-ADDomainController -Filter * -server dc01.contoso.cpm | Vyberte meno, ipv4Address, IsGlobalCatalog, Site
Na výber radičov domény podľa podmienok používame funkciu Get-ADDomainController
Pozrime sa na niektoré užitočné rutiny, ktoré môžete použiť na získanie zoznamu radičov domén v AD podľa určitých kritérií.
Vyhľadajte radič domény podľa jeho adresy IP:
Get-ADDomainController -Identity "10.1.1.120"
Vyhľadajte všetky DC s písmenami DC04 v ich názvoch:
Get-ADDomainController -Filter like-like "* dc04 *" | Vyberte Názov, ipv4Adresa, OperatingSystem, web
Vyhľadajte všetky dostupné DC na konkrétnej stránke:
Get-ADDomainController -Discover -ForceDiscover -Site "Site-Name"
Zoznam DC na stránkach, ktorých mená začínajú na Mos *:
Get-ADDomainController -Filter site-like "Mos *" | Vyberte Názov, ipv4Adresa, OperatingSystem, web
Zoznam všetkých radičov domény iba na čítanie:
Get-ADDomainController -Filter IsReadOnly -eq $ true | Vyberte Názov, ipv4Adresa, OperatingSystem, web
Nájdite DC na stránke „Názov servera“, ktorá zahŕňa rolu Globálneho katalógu:
Get-ADDomainController -Filter site -eq "Site Name" - a IsGlobalCatalog -eq $ true | Vyberte Názov, ipv4Adresa, OperatingSystem, web
Skript PowerShell na kontrolu dostupnosti všetkých radičov domény
Nasledujúci návrh vám umožňuje iterovať všetky radiče domény v službe Active Directory a vykonať špecifickú akciu pre každý z nich:
$ AllDCs = Get-ADDomainController -Filter *
ForEach ($ DC v $ AllDCs)
niečo urobiť
Nasleduje príklad jednoduchého skriptu PowerShell, ktorý kontroluje dostupnosť portu LDAPS (TCP 636) na každom DC v doméne pomocou rutiny Test-NetConnection. Ak port LDAPS na DC nie je k dispozícii, zobrazí sa varovanie.
$ AllDCs = Get-ADDomainController -Filter * | Názov hostiteľa objektu Select, Ipv4address, jeGlobalCatalog, Site, Forest, OperatingSystem
ForEach ($ DC v $ AllDCs)
$ PortResult = Test-NetConnection -ComputerName $ DC.Hostname -Port 636 -InformationLevel Quiet
if ($ PortResult -ne "$ True")
write-host $ DC.Hostname "not available" -BackgroundColor Red -ForegroundColor White
else
write-host $ DC.Hostname "available"
Výsledkom bol jednoduchý skript na sledovanie dostupnosti DC. Stále existujú rôzne scenáre spočítania všetkých DC v doméne. V predchádzajúcich článkoch sme už ukázali, ako pomocou Get-ADDomainController vyhľadať konkrétnu udalosť v protokoloch na všetkých radičoch domény. Napríklad: vyhľadávanie udalostí blokovania používateľských účtov, vyhľadávanie udalostí autentifikácie NTLMv1, vyhľadávanie udalostí, keď je používateľ pridaný do skupiny AD atď..