Cmdlet Dapatkan-ADDomainController dapat digunakan untuk mendapatkan informasi tentang pengontrol domain di Active Directory. Cmdlet ini adalah bagian dari modul Active Directory untuk PowerShell dan membutuhkan pemasangan komponen RSAT yang terpisah (di Windows 10 1809 dan lebih tinggi, RSAT diinstal dengan cara baru).
Konten:
- Dapatkan-ADDomainController Cmdlet
- Kami menggunakan Get-ADDomainController untuk memilih pengontrol domain sesuai dengan kondisi
- Skrip PowerShell untuk memeriksa ketersediaan semua pengontrol domain
Dapatkan-ADDomainController Cmdlet
Saat memulai Dapatkan-ADDomainController
tanpa parameter, cmdlet menampilkan informasi tentang pengontrol domain saat ini (LogonServer), yang digunakan oleh komputer ini untuk otentikasi (DC dipilih saat boot sesuai dengan topologi situs AD).
Cmdlet mengembalikan semua bidang dengan informasi pengontrol domain tersedia di AD.
ComputerObjectDN: CN = mskDC01, OU = Domain Controllers, DC = corp, DC = winitpro, DC = ru DefaultPartition: DC = corp, DC = winitpro, DC = ru Domain: corp.winitpro.ru Diaktifkan: True Forest: winitpro.ru HostName: mskDC01.corp.winitpro.ru Doa Lokasi: 96234a-7fc6-4a32-9e62-3b32343ab4ad IPv4Alamat: 10.1.10.6 IPv6Alamat: IsGlobalKatalog: True IsReadHanya Saja: Ldap PalsuPort: 389 Nama: mskDC pengaturan CNDS CN = Server, CN = MskCenter, CN = Situs, CN = Konfigurasi, DC = winitpro, DC = id OperatingSystem: Windows Server 2008 R2 Standard OperatingSystemHotfix: OperatingSystemServicePack: Paket Layanan 1 OperatingSystemVersion: 6.1 (7601) OperationMasterRoles: Partisi: Partisi: DC = ForestDnsZones, DC = winitpro, DC = ru, DC = DomainDnsZones, DC = corp, DC = winitpro, DC = ru, CN = Skema, CN = Konfigurasi, DC = winitpro, DC = ru ... ServerObjectDN: CN = mskDC01 , CN = Server, CN = MskCenter, CN = Situs, CN = Konfigurasi, DC = winitpro, DC = ru ServerObjectGuid: 8052323-e294-4430-a326-9553234431d6 Situs: MskCenter SslPo rt: 636
Anda juga dapat menemukan pengontrol domain tempat komputer Anda seharusnya dimiliki melalui mekanisme DCLocator:
Dapatkan-ADDomainController -Discover
Anda dapat menemukan DC terdekat yang tersedia dengan peran aktif Layanan Web AD:
Dapatkan-ADDomainController -ForceDiscover -Discover -Layanan ADWS
Parameter Layanan dapat digunakan untuk menemukan PDC di domain:
Dapatkan-ADDomainController -Discover -Service PrimaryDC
Jika pengontrol domain Anda tidak ditemukan atau tidak merespons, Anda dapat menemukan pengontrol domain di situs AD terdekat (ditentukan oleh berat komunikasi lintas situs):
Dapatkan-ADDomainController -Discover -ForceDiscover -NextClosestSite
Untuk membuat daftar semua pengontrol domain di domain saat ini:
Dapatkan-ADDomainController -Filter * | ft
Anda dapat menghitung jumlah pengontrol domain dalam AD menggunakan perintah:
Dapatkan-ADDomainController -Filter * | Measure-Object
Kami akan menampilkan tabel yang lebih nyaman di mana semua pengontrol domain terdaftar dengan nama, alamat IP, versi OS dan nama situs AD:
Dapatkan-ADDomainController -Filter * | Pilih Nama, ipv4Address, OperatingSystem, situs | Sortir-Nama objek
Jika Anda perlu mendapatkan informasi DC dari domain lain, Anda harus menentukan nama DC yang tersedia di domain pihak ketiga menggunakan parameter -Server (mungkin dengan kepercayaan antar domain).
Dapatkan-ADDomainController -Filter * -server dc01.contoso.cpm | Pilih Nama, ipv4Address, IsGlobalCatalog, Situs
Kami menggunakan Get-ADDomainController untuk memilih pengontrol domain sesuai dengan kondisi
Mari kita lihat beberapa cmdlet berguna yang dapat Anda gunakan untuk mendapatkan daftar pengontrol domain dalam AD dengan kriteria tertentu.
Temukan pengontrol domain dengan alamat IP-nya:
Dapatkan-ADDomainController -Identity "10.1.1.120"
Temukan semua DC dengan karakter DC04 dalam namanya:
Dapatkan-ADDomainController -Filter name -like "* dc04 *" | Pilih Nama, ipv4Address, OperatingSystem, situs
Cari semua DC yang tersedia di situs tertentu:
Get-ADDomainController -Discover -ForceDiscover -Site "Nama-Situs"
Daftar DC di situs yang namanya dimulai dengan Mos *:
Dapatkan-ADDomainController -Filter site -like "Mos *" | Pilih Nama, ipv4Address, OperatingSystem, situs
Daftar semua pengontrol domain Hanya Baca:
Dapatkan-ADDomainController -Filter IsReadOnly -eq $ true | Pilih Nama, ipv4Address, OperatingSystem, situs
Temukan DC di situs "Nama Situs", yang mencakup peran Katalog Global:
Dapatkan-ADDomainController -Filter site -eq "Nama Situs" -dan IsGlobalCatalog -eq $ true | Pilih Nama, ipv4Address, OperatingSystem, situs
Skrip PowerShell untuk memeriksa ketersediaan semua pengontrol domain
Desain berikut memungkinkan Anda untuk mengulangi semua pengontrol domain di Active Directory dan melakukan tindakan spesifik untuk masing-masing pengontrol domain:
$ AllDCs = Dapatkan-ADDomainController -Filter *
ForEach ($ DC dalam $ AllDCs)
lakukan sesuatu
Berikut ini adalah contoh skrip PowerShell sederhana yang memeriksa ketersediaan port LDAPS (TCP 636) pada setiap DC dalam domain menggunakan cmdlet Test-NetConnection. Jika port LDAPS di DC tidak tersedia, peringatan akan muncul.
$ AllDCs = Dapatkan-ADDomainController -Filter * | Select-Object Hostname, Ipv4address, isGlobalCatalog, Site, Forest, OperatingSystem
ForEach ($ DC dalam $ AllDCs)
$ PortResult = Tes-NetConnection -ComputerName $ DC.Hostname -Port 636 -InformationLevel Quiet
if ($ PortResult -ne "$ True")
write-host $ DC.Hostname "tidak tersedia" -BackgroundColor Red -ForegroundColor White
lain
host-host $ DC.Hostname "tersedia"
Hasilnya adalah skrip pemantauan ketersediaan DC sederhana. Masih ada berbagai skenario enumerasi semua DC di domain. Pada artikel sebelumnya, kami telah menunjukkan cara menggunakan Get-ADDomainController untuk mencari peristiwa tertentu di log di semua pengontrol domain. Misalnya, untuk: mencari acara penguncian akun pengguna, mencari peristiwa otentikasi NTLMv1, mencari acara ketika pengguna ditambahkan ke grup AD, dll..