Работа PowerShell с Active Directory. Продолжение.

Продолжаем изучение командлетов для работы PowerShell с Active Directory начатое
ранее. В новых ОС Windows Server 2008R2 и Windows 7 доступна группа командлетов Active Directory Module for Windows PowerShell.
Проверить доступны ли модули:

PS> Get-Module -ListAvailable
 
ModuleType Name                      ExportedCommands
---------- ----                      ----------------
Manifest   ActiveDirectory           {}
Manifest   AppLocker                 {}

Если в списке модуля нет, то чтобы его установить в Windows 7, следует инсталлировать RSAT (Microsoft Remote Server Administration Tools, technet.microsoft.com/ru-ru/library/cc730825.aspx) после чего их можно загрузить прямо из меню «Программы и компоненты» (Turn Windows Features on or off — Remote Server Administration Tools — Role Administration Tools — AD DS and LDS Tools и выбираем модуль Active Directory PowerShell snap-in).
На сервере Windows Server 2008 R2 нужный компонент ставится проще:

PS> Add-WindowsFeature RSAT-AD-PowerShell –IncludeAllSubFeature

Теперь импорртируем:

PS> Import-Module ActiveDirectory

Чтобы просмотреть настройки домена используем командлет Get-ADDomain.

Теперь контроллер домена:

PS> Get-ADDomainController

Из вывода видно в качестве операционной системы у нас используется Windows Server 2008 R2, а контроллер домена является Global Catalog-ом. Получим список членов группы Administrators:

PS> $group = Get-AdGroup Administrators
Get-ADUser -Filter {MemberOf -recursivematch $group.DistinguishedName}

Теперь можем узнать когда пользователь Administrator в последний раз менял пароль.

PS> Get-ADUser Administrator -properties PasswordLastSet

Для того что бы детально изучить список найденных серверов, берем первый сервер из списка и вводим:

PS> Get-ADComputer -LDAPFilter "(name=SRV01)" -properties *

Посмотрим список SPN (servicePrincipalName).

PS> (Get-ADComputer -LDAPFilter "(name=SRV-01)" -properties *).servicePrincipalName

Теперь посмотрим настройки DefaultDomainPasswordPolicy:

PS> Get-ADDefaultDomainPasswordPolicy

Смотрим список учетных записей у которых пароли еще не истекли:

PS> Get-ADUser -filter {PasswordNeverExpires -eq $True -AND Enabled -eq $True} | Select Distinguishedname

Можно уточнить параметр:

PS> Get-ADUser -filter {PasswordNeverExpires -eq $True -AND Enabled -eq $True} -properties PasswordLastSet | Sort PasswordLastSet | Select Distinguishedname,PasswordLastSet

Теперь наоборот учетные записи срок действия паролей для которых в настоящее время уже истек:

PS> Get-ADUser -filter {Enabled -eq $True} -properties passwordExpired | where {$_.PasswordExpired} | measure-object
Теги: ,

Понравилась статья? Оставьте комментарий или подпишитесь на RSS рассылку.

Комментарии

Со списком членов группы как-то сложно… есть отдельный командлет Get-ADGroupMember

Оставить комментарий

(required)

(required)