چگونه PowerShell Active Directory Module را نصب و استفاده کنیم؟

در این مقاله ما در مورد چگونگی نصب ماژول PowerShell AD در ویندوز و ویژگی های اساسی و cmdlet های محبوب برای مدیریت و ارتباط با AD صحبت میکنیم.

Installing the Powershell Active Directory Module on Windows Server

Powershell Active Directory در حال حاضر در سیستم عامل ویندوز سرور (از 2008R2 به بعد) وجود دارد ، اما به طور پیش فرض فعال نیست.

در ویندوز سرور ۲۰۱۶ ، شما می توانید از مسیر زیر به این ماژل دسترسی پیدا کنید:

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 را نه تنها در DC نصب کنید بلکه در هر سرور عضو دامنه و یا کلایت هم امکان نصب وجود دارد.

تعامل این ماژول با AD از طریق Active Directory Web Service است که باید بر روی DC خود نصب کنید (ارتباطات بیش از پورت TCP ۹۳۸۹ انجام می شود).

نحوه نصب ماژول AD PowerShell در ویندوز 10 چگونه است؟

این ماژول بخشی از بسته RSAT (ابزار مدیریت سرور از راه دور) است که می توانید آن را به صورت دستی در ویندوز 7 ، ویندوز ۸/۱ دانلود و نصب کنید. پس از نصب RSAT, شما می توانید ماژول PowerShell AD را از کنترل پنل نصب کنید :

Control Panel -> Programs and Features -> Turn Windows features on or off -> Remote Server Administration Tools-> Role Administration Tools -> AD DS and AD LDS Tools.

می توانید از این دستور PowerShell برای نصب ماژول AD استفاده کنید:

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

دستورهای Active Directory PowerShell

بسیاری از cmdlet ها برای تعامل با AD در ماژول AD برای Windows PowerShell وجود دارد. هر نسخه جدید RSAT شامل cmdlet های بیشتر از قبلی است. در ویندوز سرور ۲۰۱۶ تعداد ۱۴۷ cmdlet وجود دارد .

قبل از استفاده از cmdlet های ماژول AD ، شما باید آن را به session PowerShell خود وارد کنید (در ویندوز سرور ۲۰۱۲ R2/ویندوز ۸/۱ و جدیدتر ماژول به طور خودکار وارد می شود).

Import-Module ActiveDirectory

اگر Active Directory module نصب نشده ، می توانید آن را از DC خود وارد کنید:

$psSess = New-PSSession -ComputerName DC_or_Comp_with_ADPoSh_installed
Import-Module -PSsession $psSess -Name ActiveDirectory

شما می توانید لیست کامل cmdlet های AD موجود را با استفاده از دستور ببینید:

Get-Command –module ActiveDirectory

تعداد کل cmdlet ها در ماژول AD:

Get-Command –module ActiveDirectory |measure-object|select count

Here is how you can get help on any cmdlet:

get-help Set-ADUser

شما می توانید نمونه هایی از استفاده cmdlet های AD را به صورت زیر ببینید:

(get-help New-ADComputer).examples

Active Directory Administration with RSAT-AD-PowerShell Module

بیایید به برخی از وظایف معمولی یک مدیر که میتواند با استفاده از AD برای cmdlet های PowerShell انجام دهد نگاه کنیم.

New-ADUser: Creating AD Users

برای ایجاد یک کاربر AD جدید ، شما می توانید از cmdlet جدید-ADUser استفاده کنید. شما می توانید یک کاربر با دستور زیر ایجاد کنید:

New-ADUser -Name "Mila Beck" -GivenName "Mila" -Surname "Beck" -SamAccountName "mbeck" -UserPrincipalName "mbeck@woshub.com" -Path "OU=Users,OU=Berlin,OU=DE,DC=woshub,DC=com" -AccountPassword(Read-Host -AsSecureString "Input User Password") -Enabled $true

Get-ADComputer: Getting Computer Properties

نمایش اطلاعات در موارد خواص (نام کامپیوتر و تاریخ آخرین ورود به سیستم) ، با استفاده از Get-ADComputer cmdlet:

Get-ADComputer -SearchBase ‘OU=CA,OU=USA,DC=woshub,DC=com’ -Filter * -Properties * | FT Name, LastLogonDate -Autosize

Add-AdGroupMember: Add AD User to Groups

برای افزودن کاربر به یک security group موجود در دامنه خود ، از این فرمان استفاده کنید:

Add-AdGroupMember -Identity comanySales -Members e.braun, l.wolf

لیست کاربران دریک گروه AD را نمایش دهید و آن را به صورت یک فایل CSV ذخیره کنید:

Get-ADGroupMember comanySales -recursive| ft samaccountname| Out-File c:\ps\export_ad_users.csv

Set-ADAccountPassword: Reset a User Password in AD

به منظور تنظیم مجدد یک رمز عبور کاربر AD در PowerShell ، دستور زیر را اجرا کنید:

Set-ADAccountPassword m.lorenz -Reset -NewPassword (ConvertTo-SecureString -AsPlainText “Ne8Pa$$0rd1” -Force -Verbose) –PassThru

باز کردن حساب کاربر قفل شده ، فعال و غیر فعال کردن حساب AD

برای غیرفعال کردن حساب کاربر AD:

Disable-ADAccount m.lorenz

برای فعال کردن حساب کاربر AD:

Enable-ADAccount m.lorenz

برای باز کردن قفل یک حساب که توسط یکdomain password policy مسدود شده است:

Unlock-ADAccount s.netuser

Search-ADAccount:

برای یافتن و غیر فعال کردن تمام کامپیوترها در AD که برای بیش از ۹۰ روز وارد نشده اند ، از cmdlet جستجو-ADAccount استفاده کنید:

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

New-ADOrganizationalUnit: Create an Organizational Unit in AD

برای ایجاد سریع یک ساختار واحد سازمانی معمولی در AD ، می توانید از یک اسکریپت PowerShell استفاده کنید.

$fqdn = Get-ADDomain
$fulldomain = $fqdn.DNSRoot
$domain = $fulldomain.split(".")
$Dom = $domain[0]
$Ext = $domain[1]
$Sites = ("Nevada","Texas","California","Florida")
$Services = ("Users","Admins","Computers","Servers","Contacts","Service Accounts")
$FirstOU ="USA"
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
}
}

To move objects between AD containers, you can use the Move-ADObject cmdlet:

$TargetOU = "OU=Sales,OU=Computers,DC=woshub,DC=com"
Get-ADComputer -Filter 'Name -like "SalesPC*"' | Move-ADObject -TargetPath $TargetOU

[تعداد: 7   میانگین:  4.9/5]

درباره نویسنده: پدرام زمانیان

مشاور ای تی

مطالب زیر را حتما بخوانید

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *