Import module activedirectory windows 10

Содержание
  1. Adam the Automator
  2. How to Install and Import the PowerShell Active Directory Module
  3. Stuart Squibb
  4. Install RSAT (Remote Server Administration Tools)
  5. RSAT for Pre 1809 Windows 10
  6. RSAT for post-1809 Windows 10
  7. RSAT for Windows Server 2008R2 and Later
  8. How to PowerShell Load the AD Module
  9. Connecting and Authenticating
  10. Connecting to a Specific Active Directory Domain Controller
  11. Connecting to Active Directory with Alternate Credentials
  12. Summary
  13. Использование модуля Active Directory PowerShell без установки RSAT
  14. Использование модуля Active Directory for PowerShell для администрирования домена
  15. Установка модуля Active Directory для PowerShell в Windows Server
  16. Установка модуля RSAT-AD-PowerShell в Windows 10
  17. Командлеты модуля AD для PowerShell
  18. Использование модуля RSAT-AD-PowerShell для администрирования AD
  19. New-ADUser: Создание пользователя в AD
  20. Get-ADComputer: Получить информацию о компьютерах домена
  21. Add-AdGroupMember: Добавить пользователя в группу AD
  22. Set-ADAccountPassword: Сброс пароля пользователя в AD
  23. Блокировка/разблокировка пользователя
  24. Search-ADAccount: Поиск неактивных компьютеров в домене
  25. New-ADOrganizationalUnit: Создать структуру OU в AD
  26. Get-ADReplicationFailure: Проверка репликации в AD

Adam the Automator

How to Install and Import the PowerShell Active Directory Module

Stuart Squibb

Read more posts by this author.

A prerequisite for every PowerShell Active Directory (AD) task is to install the Active Directory module. This popular module allows administrators to query and make changes to Active Directory with PowerShell.

In this blog post, we’re going to dive into how to install the PowerShell Active Directory module on Windows 10. We’ll then cover how to connect to AD with PowerShell and go into the various ways you can authenticate to AD.

Table of Contents

Install RSAT (Remote Server Administration Tools)

Before we begin, you should first be aware of the RSAT package. If you are using a workstation variant of Windows then you will need to install the Remote Server Administration Tools (RSAT) package. When using a Server variant of Windows, RSAT is available already.

Without RSAT you’ll get the annoying ‘the term Get-AD* is not recognized as the name of a cmdlet, function, script file, or operable program’ type messages when you attempt to run the commands we’ll be covering.

RSAT for Pre 1809 Windows 10

Download an RSAT package if you’re on Windows 10 pre-build 1809 from Microsoft. The install is simple and straightforward.

Once you have installed RSAT, ensure the Active Directory Module for Windows PowerShell is enabled in Windows Features. By default, it should be already.

RSAT for post-1809 Windows 10

In versions of Windows from 1809 onwards the RSAT capabilities are available as optional features. There’s no need to download an external packages.

To install the ActiveDirectory module on Windows 10 post-1809, use the Add-WindowsCapability cmdlet. This enables the Rsat.ActiveDirectory.DS-LDS.Tools optional feature as shown below.

The above syntax was tested on Windows 10 Build 1903 and on Windows 7.

RSAT for Windows Server 2008R2 and Later

On Windows Server, use the PowerShell ServerManager module to enable the RSAT-AD-PowerShell feature in PowerShell.

How to PowerShell Load the AD Module

Although it’s likely PowerShell will auto-import the module when installed. But if you’d like to ensure it loads properly, you can also use the Import-Module command.

To use PowerShell to import the Active Directory module, run Import-Module ActiveDirectory . If the module is installed in the right place, you will receive no errors.

Connecting and Authenticating

Once the ActiveDirectory module is set up, you can then use the Active Directory PowerShell cmdlets.

Although the cmdlets interact with different parts of AD, nearly all of them have common parameters. Two of those parameters are Server and Credential .

Читайте также:  Windows directory statistics portable

Connecting to a Specific Active Directory Domain Controller

By default, the AD cmdlets will find a domain controller for you. However, if you need to connect to a different domain controller, you can use the Server parameter.

The Server parameter isn’t mandatory. PowerShell will attempt to find a domain controller to connect to by default. The domain controller is determined by trying the following in the listed order:

  1. Use the Server property of objects passed in on the pipeline.
  2. Use the server associated with the AD PowerShell provider drive, if in use.
  3. Use the domain of the client computer.

You can connect to a specific domain controller by providing a value for the Server parameter. You can specify several different ADDS objects in different formats such as:

  • FQDN or NETBIOS name such as domain.local or DOMAIN which will be the domain name specified
  • FQDN or NETBIOS name such as server.domain.local or SERVER that will be the domain controller.
  • A fully-qualified domain controller and port such as server.domain.local:3268

Connecting to Active Directory with Alternate Credentials

By default, the Active Directory PowerShell cmdlets will use a two-step process for determining the user account to connect to AD with.

  1. Use the credentials associated with the PowerShell AD provider drive, if the command is run from there.
  2. Utilizing the credentials of the logged-on user.

You can also specify alternate credentials using the Credential parameter.

The Credential parameter allows you to pass in a PSCredential object. If you provide a username, you will be prompted for a password and these credentials will be used.

You can see an example below of using the Get-AdUser cmdlet using an alternate credential.

You also have two possible authentication types available, controlled by the AuthType parameter. These types are Negotiate (the default) and Basic. Basic authentication is only possible over an SSL connection.

Summary

Setting up the ActiveDirectory PowerShell module is a straightforward and common process. Using the instructions provided in this article, you should be well on your way to automating all the Active Directory things!

Использование модуля Active Directory PowerShell без установки RSAT

В одной из предыдущих статей мы показывали, как использовать командлет Set-ADComputer в логон-скрипте для сохранения информации о текущем пользователе в свойствах каждого компьютера в AD. Один из комментаторов вполне резонно отметил, что в таком случае придется устанавливать RSAT с модулем Active Directory for Windows PowerShell на компьютеры всех пользователей, что довольно трудоемко. Я решил попробовать разобраться, можно ли использовать командлеты модуля PS Module for AD без его установки на компьютеры пользователей. И у меня получилось!

Итак, допустим у нас имеется сервер с Windows Server 2012 R2, на котором установлен RSAT и модуль RSAT-AD-PowerShell. Наша задача, скопировать файлы модуля RSAT-AD-PowerShell на рабочую станцию и попробовать импортировать их для запуска различных командлетов модуля AD. В качестве рабочей станции я специально использую Windows 10 LTSC (основана на 1809), чтобы показать, что старые версия модуля RSAT-AD-PowerShell поддерживаются в более новых ОС.

Сначала скопируем все необходимые файлы модуля AD с Windows Server 2012 R2. Создайте папку C:\PS\ADPoSh и скопируйте в нее содержимое каталога C:\Windows\System32\WindowsPowerShell\v1.0\Modules.

Затем из каталога C:\Windows\WinSxS скопируйте файлы:

  • Microsoft.ActiveDirectory.Management.dll
  • Microsoft.ActiveDirectory.Management.resources.dll

Теперь скопируйте каталог C:\PS\ADPoSh (в моем случае его размер составил около 1,3 Мб), на компьютер, на котором отсутствует модуль RSAT AD for Windows PowerShell. В этом примере я использую компьютер с Windows 10.

Попробуем импортировать скопированный модуль Active Directory в текущую PowerShell сессию:

Модуль успешно импортирован, теперь вы можете использовать любые командлеты модуля AD для управления и получения информации из домена AD (например get-aduser, get-adcomputer, get-adgroup и т.д.).

Читайте также:  3gb для windows что это

Вы можете найти в домене DC с ролью ADWS с помощью команды:

Доступность службы можно проверить с помощью командлета Test-NetConnection:

tnc MSK-DC01 -port 9389

Чтобы выполняить командлеты на конкретном DC, нужно использовать параметр –Server:

Get-aduser aaivanov –server msk-dc01.winitpro.ru

Вы можете использовать командлеты модуля AD пока не закроете сессию PowerShell. Файлы модуля можно скопировать файлы на все компьютеры в домене через GPO,

Использование модуля Active Directory for 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

Модуль Active Directory для Windows PowerShell уже встроен в операционные системы Windows Server (начиная с Windows Server 2008 R2), но по умолчанию не активирован.

В Windows Server 2016 вы можете включить модуль AD для PoSh в Windows Server 2016 из панели управления Server Manager (Add Roles and Features -> Features -> Remote Server Administration tools -> Role Administration Tools -> AD DS and AD LDS Tools -> Active Directory module for Windows PowerShell).

Также вы можете установить модуль из командной строки с помощью PowerShell команды:

Install-WindowsFeature -Name «RSAT-AD-PowerShell» –IncludeAllSubFeature

Вы можете установить модуль RSAT-AD-PowerShell не только на контроллере домена. Подойдет любой рядовой сервер или даже рабочая станция. На контроллерах домена AD модуль устанавливается автоматически при развертывании роли ADDS (при повышении сервера до DC).

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

Установка модуля RSAT-AD-PowerShell в Windows 10

Вы можете установить модуль RSAT-AD-PowerShell не только на серверах, но и на рабочих станциях. Этот модуль входит в состав пакета RSAT (Remote Server Administration Tools), который можно скачать и установить вручную в Window 7, Windows 8.1. После установки RSAT модуль AD дл PowerShell ставится из панели управления (Control Panel -> Programs and Features -> Turn Windows features on or off -> Remote Server Administration Tools-> Role Administration Tools -> AD DS and AD LDS Tools).

В Windows 10 1809 и выше пакет RSAT уже встроен в дистрибутив (как Features on Demand), поэтому для установки модуля можно воспользоваться командой:

Add-WindowsCapability –online –Name “Rsat.ActiveDirectory.DS-LDS.Tools

Командлеты модуля AD для PowerShell

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

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

$rs = New-PSSession -ComputerName DC_or_Comp_with_ADPosh
Import-Module -PSsession $rs -Name ActiveDirectory

Вы можете вывести полный список доступных командлетов с помощью команды:

Get-Command –module activedirectory

Общее количество команд в модуле:

Get-Command –module activedirectory |measure-object

Большинство командлетов модуля RSAT-AD-PowerShell начинаются с префикса Get-, Set-или New-.

  • Командлеты класса Get- используются для получения различной информации из AD (Get-ADUser — свойства пользователей, Get-ADComputer – параметры компьютеров, Get-ADGroupMember — состав групп и т.д.). Для их выполнения не нужно быть администратором домена, любой пользователь домена может выполнять скрипты PowerShell для получения значений большинства атрибутов объектов AD (кроме защищенных, как в примере с LAPS).
  • Командлеты класса Set- служат для изменения параметров объектов в AD, например, вы можете изменить свойства пользователя (Set-ADUser), компьютера (Set-ADComputer), добавить пользователя в группу и т.д. Для выполнения этих операций у вашей учетной записи должны быть права на объекты, которые вы хотите изменить (см. статью Делегирование прав администратора в AD).
  • Команды, начинающиеся с New- позволяют создать объекты AD (создать пользователя — New-ADUser, группу — New-ADGroup).
  • Командлеты Remove- служат для удаления объектов AD.
Читайте также:  Gg покерок не запускается windows

Получить справку о любом командлете можно так:

Примеры использования командлетов Active Directory можно вывести так:

В PowerShell ISE при наборе параметров командлетов модуля удобно использовать всплывающие подсказки.

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

Рассмотрим несколько типовых задач администратора, которые можно выполнить с помощью команд модуля AD для PowerShell.

New-ADUser: Создание пользователя в AD

Для создания нового пользователя в AD можно использовать командлет New-ADUser. Создать пользователя можно командой:

New-ADUser -Name «Andrey Petrov» -GivenName «Andrey» -Surname «Petrov» -SamAccountName «apetrov» -UserPrincipalName «apetrov@winitpro.ru » -Path «OU=Users,OU=Ufa,DC=winitpro,DC=loc» -AccountPassword(Read-Host -AsSecureString «Input Password») -Enabled $true

Более подробно о команде New-ADUser (в том числе пример массового создания учетных записей в домене) читайте в статье .

Get-ADComputer: Получить информацию о компьютерах домена

Чтобы вывести информацию о компьютерах в определённом OU (имя компьютера и дата последней регистрации в сети) используйте командлет Get-ADComputer:

Get-ADComputer -SearchBase ‘OU=Russia,DC=winitpro,DC=ru’ -Filter * -Properties * | FT Name, LastLogonDate -Autosize

Add-AdGroupMember: Добавить пользователя в группу AD

Чтобы добавить пользователей в существующую группу безопасности в домене AD, выполните команду:

Add-AdGroupMember -Identity MskSales -Members apterov, divanov

Вывести список пользователей в группе AD и выгрузить его в файл:

Get-ADGroupMember MskSales -recursive| ft samaccountname| Out-File c:\script\export_users.csv

Set-ADAccountPassword: Сброс пароля пользователя в AD

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

Блокировка/разблокировка пользователя

Отключить учетную запись:

Включить учетную запись:

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

Search-ADAccount: Поиск неактивных компьютеров в домене

Чтобы найти и заблокировать в домене все компьютеры, которые не регистрировались в сети более 100 дней, воспользуйтесь командлетом Search-ADAccount:

$timespan = New-Timespan –Days 100
Search-ADAccount -AccountInactive -ComputersOnly –TimeSpan $timespan | Disable-ADAccount

New-ADOrganizationalUnit: Создать структуру OU в AD

Чтобы быстро создать типовую структуры Organizational Unit в AD, можно воспользоваться скриптом PowerShell. Допустим, нам нужно создать несколько OU с городами, в которых создать типовые контейнеры. Вручную через графическую консоль ADUC такую структуру создавать довольно долго, а модуль AD для PowerShell позволяет решить такую задачу за несколько секунд (не считая время на написание скрипта):

$fqdn = Get-ADDomain
$fulldomain = $fqdn.DNSRoot
$domain = $fulldomain.split(«.»)
$Dom = $domain[0]
$Ext = $domain[1]
$Sites = («SPB»,»MSK»,»Sochi»)
$Services = («Users»,»Admins»,»Computers»,»Servers»,»Contacts»)
$FirstOU =»Russia»
New-ADOrganizationalUnit -Name $FirstOU -Description $FirstOU -Path «DC=$Dom,DC=$EXT» -ProtectedFromAccidentalDeletion $false
foreach ($S in $Sites)
<
New-ADOrganizationalUnit -Name $S -Description «$S» -Path «OU=$FirstOU,DC=$Dom,DC=$EXT» -ProtectedFromAccidentalDeletion $false
foreach ($Serv in $Services)
<
New-ADOrganizationalUnit -Name $Serv -Description «$S $Serv» -Path «OU=$S,OU=$FirstOU,DC=$Dom,DC=$EXT» -ProtectedFromAccidentalDeletion $false
>
>
После выполнения скрипта у нас в AD появилась такая структура OU.

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

$TargetOU = «OU=Buhgalteriya,OU=Computers,DC=corp,DC=winitpro,DC=ru»
Get-ADComputer -Filter ‘Name -like «BuhPC*»‘ | Move-ADObject -TargetPath $TargetOU

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

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

Get-ADReplicationFailure -Target DC01,DC02

Получить информацию обо всех DC в домене с помощью командлета Get-AdDomainController:

Get-ADDomainController –filter * | select hostname,IPv4Address,IsGlobalCatalog,IsReadOnly,OperatingSystem | format-table –auto

Итак, в этой статье мы рассмотрели базовые возможности и особенности использования модуля AD для PowerShell для администрирования AD. Надеюсь, эта статья подтолкнет вас к дальнейшему исследованию возможностей этого модуля и автоматизации большинства задач управления AD.

Оцените статью