Поиск по сайту
Интересуешься IT и системным администрированием? Подпишись на наш канал, где мы делимся инсайдами, новостями и практическими советами! Прокачай свои навыки вместе с нами!
Как найти все контроллеры домена с помощью PowerShell
Перед тем как повысить функциональные уровни домена и леса Active Directory, важно убедиться, что все контроллеры домена соответствуют требованиям по версии операционной системы. Для этого вам нужно проверить, какие именно контроллеры домена используются в вашей организации.
В этой статье я расскажу вам, как с помощью PowerShell получить полный список всех контроллеров домена в лесу, чтобы вы могли провести все необходимые проверки.
Онлайн-курс: Zabbix 6. Мониторинг IT инфраструктуры предприятия.
Курс предлагает глубокое изучение Zabbix 6 и охватывает все ключевые аспекты: от установки и конфигурации до продвинутого мониторинга и автоматизации. Курс подходит как для начинающих, так и для опытных администраторов.
Содержание:
- Установка модуля Active Directory для Windows PowerShell
- Командлет Get-ADDomainController
- Получение всех контроллеров домена с полной информацией о них
- Получение списка всех контроллеров домена и их операционных систем
- Получение списка всех контроллеров домена и их IP-адресов
- Фильтр контроллеров домена
- Подсчет контроллеров домена
- Экспорт всех контроллеров домена в файл CSV
- Заключение
Установка модуля Active Directory для Windows PowerShell
Откройте PowerShell с правами администратора и выполните следующую команду для установки модуля Active Directory для Windows PowerShell:
Add-WindowsFeature RSAT-AD-PowerShell
Важно: Необходимо установить модуль Active Directory для Windows PowerShell. В противном случае он не сможет загрузить командлет Get-ADDomainController, и возникнет ошибка.
Командлет Get-ADDomainController
Командлет Get-ADDomainController - это удобный способ получения списка контроллеров домена в лесу.
Get-ADDomainController
Получение всех контроллеров домена с полной информацией о них
Для получения всех контроллеров домена необходимо выполнить командлет Get-ADDomainController с фильтром -Filter, включающим звездочку (*), как в следующем примере:
Get-ADDomainController -Filter *
В выводе PowerShell отобразятся все контроллеры домена.
В моем примере я скопировал только первую часть вывода, которая отображает контроллер домена DC01-2019.
ComputerObjectDN : CN=DC01-2019,OU=Domain Controllers,DC=exoip,DC=local
DefaultPartition : DC=exoip,DC=local
Domain : exoip.local
Enabled : True
Forest : exoip.local
HostName : DC01-2019.exoip.local
InvocationId : b44dc8cf-ce37-4046-b908-8504ff700efe
IPv4Address : 192.168.1.51
IPv6Address :
IsGlobalCatalog : True
IsReadOnly : False
LdapPort : 389
Name : DC01-2019
NTDSSettingsObjectDN : CN=NTDS Settings,CN=DC01-2019,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=exoip,DC=local
OperatingSystem : Windows Server 2019 Standard
OperatingSystemHotfix :
OperatingSystemServicePack :
OperatingSystemVersion : 10.0 (17763)
OperationMasterRoles : {SchemaMaster, DomainNamingMaster, PDCEmulator, RIDMaster...}
Partitions : {DC=ForestDnsZones,DC=exoip,DC=local, DC=DomainDnsZones,DC=exoip,DC=local, CN=Schema,CN=Configuration,DC=exoip,DC=local, CN=Configuration,DC=exoip,DC=local...}
ServerObjectDN : CN=DC01-2019,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=exoip,DC=local
ServerObjectGuid : 01218cb8-7c17-4d26-bb2a-cc80bc43059c
Site : Default-First-Site-Name
SslPort : 636
Получение списка всех контроллеров домена и их операционных систем
Мы можем выбирать только те объекты, которые хотим отобразить в выводе. Например, можно указать такие параметры, как имя, Hostname, операционная система и состояние контроллера домена (DC).
Get-ADDomainController -Filter * | ft Name,Hostname,OperatingSystem,Enabled
В выводе PowerShell будут отображаться выбранные нами параметры:
Name Hostname OperatingSystem Enabled
---- -------- --------------- -------
DC01-2019 DC01-2019.exoip.local Windows Server 2019 Standard True
DC02-2019 DC02-2019.exoip.local Windows Server 2019 Standard True
Получение списка всех контроллеров домена и их IP-адресов
Мы можем получить список контроллеров домена, включив в вывод только их IP-адреса, используя командлет с нужными параметрами.
Get-ADDomainController -Filter * | ft Name,IP*
В выводе PowerShell мы увидим:
Name IPv4Address IPv6Address
---- ----------- -----------
DC01-2019 192.168.1.51
DC02-2019 192.168.1.52
Фильтр контроллеров домена
Мы можем отфильтровать контроллеры домена и вывести список только тех DC, на которых установлена операционная система Windows Server 2019.
Get-ADDomainController -Filter {OperatingSystem -like "Windows Server 2019*"} | ft Name,Hostname,OperatingSystem,Enabled
В выводе PowerShell будет:
Name Hostname OperatingSystem Enabled
---- -------- --------------- -------
DC01-2019 DC01-2019.exoip.local Windows Server 2019 Standard True
DC02-2019 DC02-2019.exoip.local Windows Server 2019 Standard True
Подсчет контроллеров домена
Мы можем получить общее количество всех наших контроллеров домена.
В выводе PowerShell будет:
Count
-----
2
Экспорт всех контроллеров домена в файл CSV
Мы можем сохранить список всех контроллеров домена в файл формата CSV для дальнейшего использования.
Get-ADDomainController -Filter * | Select-Object Name,Hostname,IP*,Enabled | Export-Csv "C:\temp\All-Domain-Controllers.csv" -NotypeInformation
Откройте файл CSV с помощью Microsoft Excel.
Вот и все!
Заключение
Теперь вы знаете, как с помощью PowerShell получить список всех контроллеров домена. Командлет Get-ADDomainController — это удобный инструмент для вывода информации обо всех контроллерах домена в вашей организации.
Вам понравилась эта статья? Тогда вам, скорее всего, будет интересна другая полезная статья Как создать задачу в планировщика Windows с помощью PowerShell..
Интересуешься IT и системным администрированием? Подпишись на SysAdminHub в Телеграмм или Макс, чтобы узнавать обо всем первым!
Статья была полезна? Поддержи автора, и благодаря твоей помощи новые материалы будут выходить еще чаще:
