Използване на Active Directory за PowerShell за администриране на домейн

модул Active Directory за Windows PowerShell Днес това е един от основните инструменти за администриране на домейн, управление на обекти в Active Directory и получаване на различна информация за компютри, потребители и групи. Всеки системен администратор на Windows трябва да може да използва не само графични добавки за AD (най-често това е ADUC - Active Directory Users & Computer), но и командлетите от този модул PowerShell за извършване на ежедневни задачи за администриране на Active Directory. В тази статия ще разгледаме как да инсталирате RSAT-AD-PowerShell модула, неговата основна функционалност и популярни командлети, които трябва да бъдат полезни при управление и работа с AD.

Съдържание:

  • Инсталирайте Active Directory за PowerShell на Windows Server
  • Инсталирайте RSAT-AD-PowerShell на Windows 10
  • AD модулни модули за PowerShell
  • Използване на RSAT-AD-PowerShell модул за администриране на AD

Инсталирайте Active Directory за PowerShell на Windows Server

Модулът Active Directory за Windows PowerShell вече е интегриран в операционните системи на Windows Server (започвайки с Windows Server 2008 R2), но не е активиран по подразбиране.

В Windows Server 2016 можете да активирате AD модула за PoSh в Windows Server 2016 от контролния панел Сървър мениджър (Добавяне на роли и функции -> Функции -> Инструменти за отдалечено администриране на сървъра -> Инструменти за администриране на роли -> AD DS и AD LDS Инструменти -> Модул Active Directory за Windows PowerShell).

Можете също да инсталирате модула от командния ред, като използвате командата PowerShell:

Инсталирайте-WindowsFeature -Име "RSAT-AD-PowerShell" -IncludeAllSubFeature

Можете да инсталирате RSAT-AD-PowerShell модула не само на контролер на домейн. Всеки сървър-член или дори работна станция ще го направят. На контролерите на домейн AD модулът се инсталира автоматично, когато се разгърне ролята на ADDS (при надстройка на сървъра до DC).

Модулът взаимодейства с AD чрез Web Directory Active Directory, които трябва да бъдат инсталирани на контролера на домейна (взаимодействие на TCP порт 9389).

Инсталирайте RSAT-AD-PowerShell на Windows 10

Можете да инсталирате RSAT-AD-PowerShell модула не само на сървъри, но и на работни станции. Този модул е ​​включен в пакета. RSAT (Инструменти за отдалечено администриране на сървъра), които могат да бъдат изтеглени и инсталирани ръчно в Windows 7, Windows 8.1. След инсталиране на RSAT, AD модулът за PowerShell се инсталира от контролния панел (Контролен панел -> Програми и функции -> Включване или изключване на функции на Windows -> Инструменти за администриране на отдалечен сървър-> Инструменти за администриране на роли -> AD DS и AD LDS Инструменти).

В Windows 10, 1809 и по-нови версии, пакетът RSAT вече е вграден в дистрибуторския комплект (като функции по поръчка), така че можете да използвате командата за инсталиране на модула:

Add-WindowsCapability -online -Name „Rsat.ActiveDirectory.DS-LDS.Tools ~~~~ 0.0.1.0“

AD модулни модули за PowerShell

Модулът Active Directory за Windows PowerShell има много командлети за взаимодействие с AD. Във всяка нова версия на RSAT техният брой се увеличава (147 cmdlets за AD са налични в Windows Server 2016).

Преди да използвате командлети на модули, трябва да го импортирате в сесия на PowerShell (в Windows Server 2012 R2 / Windows 8.1 модулът се импортира автоматично):

Импорт-модул ActiveDirectory

Ако модулът не е инсталиран на вашия компютър, можете да го импортирате от контролер на домейн (имате нужда от права на администратор на домейн) или от друг компютър:

$ rs = New-PSSession -ComputerName DC_or_Comp_with_ADPosh
Импорт-модул -Посещане $ rs -Име ActiveDirectory

Можете да покажете пълен списък от налични командлети с помощта на командата:

Get-Command -модул activedirectory

Общ брой команди в модула:

Get-Command -модул activedirectory | мярка-обект

Повечето командлети на модул RSAT-AD-PowerShell започват с префикса Get-, Set- или New-.

  • Клас Cmdlets получавам- използва се за получаване на различна информация от AD (Get-ADUser - потребителски свойства, Get-ADComputer - компютърни настройки, Get-ADGroupMember - членство в групата и т.н.). Не е необходимо да сте администратор на домейн, за да ги изпълнявате; всеки потребител на домейн може да изпълнява скриптове на PowerShell, за да получи стойностите на повечето атрибути на AD обекти (с изключение на защитените, както в примера с LAPS).
  • Клас Cmdlets комплект- служат за промяна на параметрите на обекти в AD, например, можете да промените свойствата на потребителя (Set-ADUser), компютър (Set-ADComputer), да добавите потребителя в групата и т.н. За да извършите тези операции, вашият акаунт трябва да има права върху обектите, които искате да промените (вижте статията Делегиране на права на администратор в AD).
  • Екипи, започващи с нов- ви позволяват да създавате AD обекти (създаване на потребител - New-ADUser, група - New-ADGroup).
  • кратки команди Премахни- изтрийте AD обекти.

Можете да получите помощ за всеки командлет като този:

получете помощ New-ADComputer

Примери за използване на командлети на Active Directory могат да бъдат написани така:

(get-help Set-ADUser). примери

В PowerShell ISE можете да използвате подсказки при въвеждане на параметри на командлета на модула.

Използване на RSAT-AD-PowerShell модул за администриране на AD

Нека разгледаме няколко типични задачи на администратора, които могат да бъдат изпълнени с помощта на команди AD модул за PowerShell..

Полезни примери за използване на различни командлети на AD модул за PowerShell вече са описани на сайта. Следвайте връзките в текста за подробни инструкции..

New-ADUser: Създаване на потребител в AD

Можете да използвате командлета New-ADUser, за да създадете нов потребител в AD. Можете да създадете потребител с командата:

New-ADUser -Name "Andrey Petrov" -GivenName "Andrey" -Имено "Petrov" -SamAccountName "apetrov" -UserPrincipalName "[email protected]" -Path "OU = Потребители, OU = Ufa, DC = winitpro, DC = loc "-AccountPassword (Read-Host -AsSecureString" Въведена парола ") -Enabled $ true

За повече информация за екипа на New-ADUser (включително пример за масово създаване на акаунти в даден домейн) вижте статията .

Get-ADComputer: Получете информация за компютрите с домейни

За да покажете информация за компютрите в определен OU (име на компютъра и дата на последната регистрация в мрежата), използвайте командлета Get-ADComputer:

Get-ADComputer -SearchBase 'OU = Русия, DC = winitpro, DC = ru' -Filter * -Properties * | Име на FT, LastLogonDate -Autosize

Add-AdGroupMember: Добавяне на потребител към AD групата

За да добавите потребители към съществуваща група за сигурност в домейна AD, изпълнете командата:

Add-AdGroupMember -Идентичност MskSales -Членци apterov, divanov

Списък на потребителите в групата AD и го качете във файл:

Get-ADGroupMember MskSales -рекурсивен | ft самосметка | Изходен файл c: \ script \ export_users.csv

Научете повече за управлението на AD групите от PowerShell..

Set-ADAccountPassword: Нулиране на паролата на потребителя в AD

За да нулирате потребителска парола в AD от PowerShell, направете:

Set-ADAccountPassword apterov -Reset -NewPassword (ConvertTo-SecureString -AsPlainText „P @ ssw0rd1” -Force -Verbose) -PassThru

Потребителско заключване / отключване

Деактивиране на акаунта:

Disable-ADAccount apterov

Активиране на акаунта:

Активиране-ADAccount apterov

Разблокирайте акаунта след блокиране на правилата за паролата:

Отключване-ADAccount apterov

Търсене-ADAccount: Търсене на неактивни компютри в даден домейн

За да намерите и блокирате всички компютри в домейна, които не са регистрирани в мрежата повече от 100 дни, използвайте командлета Search-ADAccount:

$ timespan = New-Timespan -Days 100
Търсене-ADAccount -AccountInactive -ComputersOnly -TimeSpan $ timepan | Disable-ADAccount

New-ADOrganizationalUnit: Създайте OU структура в AD

За бързо създаване на типична структура на организационната единица в AD, можете да използвате скрипта PowerShell. Да предположим, че трябва да създадем няколко OU с градове, в които да създадем стандартни контейнери. Ръчно създаването на такава структура чрез графичната конзола ADUC е доста дълго време, а AD модулът за PowerShell ви позволява да решите този проблем за няколко секунди (без да броите времето за писане на скрипта):

$ fqdn = Get-ADDomain
$ fulldomain = $ fqdn.DNSRoot
$ domain = $ fulldomain.split (".")
$ Dom = $ домейн [0]
$ Ext = $ домейн [1]
$ Sites = ("SPB", "MSK", "Sochi")
$ Services = ("Потребители", "Администратори", "Компютри", "Сървъри", "Контакти")
$ FirstOU = "Русия"
New-ADOrganizationalUnit -Name $ FirstOU -Описание $ FirstOU -Path "DC = $ Dom, DC = $ EXT" -ProtectedFromAccidentalDeletion $ false
foreach ($ S в $ Сайтове)

New-ADOrganizationalUnit -Name $ S -Описание "$ S" -Path "OU = $ FirstOU, DC = $ Dom, DC = $ EXT" -ProtectedFromAccidentalDeletion $ false
foreach ($ Серв в $ Услуги)

New-ADOrganizationalUnit -Name $ Serv -Описание "$ S $ Serv" -Path "OU = $ S, OU = $ FirstOU, DC = $ Dom, DC = $ EXT" -ProtectedFromAccidentalDeletion $ false


След изпълнение на скрипта получихме такава структура на OU в AD.

За да прехвърляте обекти между AD контейнери, можете да използвате командлета Move-ADObject:

$ TargetOU = "OU = Buhgalteriya, OU = Компютри, DC = corp, DC = winitpro, DC = ru"
Get-ADComputer -Filter 'Име -подобно "BuhPC *"' | Преместване-ADObject -TargetPath $ TargetOU

Get-ADReplicationFailure: Проверете репликацията в AD

С помощта на командлета Get-ADReplicationFailure можете да проверите състоянието на репликация между контролерите на домейна на AD:

Вземете-ADReplicationFailure -Carget DC01, DC02

Изтеглете информация за всички DC в домейн, като използвате командлета Get-AdDomainController:

Get-ADDomainController -filter * | изберете име на хост, IPv4Address, IsGlobalCatalog, IsReadOnly, OperatingSystem | format-table -auto

И така, в тази статия разгледахме основните характеристики и характеристики на използването на AD модула за PowerShell за администриране на AD. Надявам се тази статия да ви насърчи да проучите допълнително възможностите на този модул и да автоматизирате повечето задачи за управление на AD..