آشنایی با دستورات اکتیودایرکتوری

Windows powershell

4 1,594

با سلام خدمت همه عزیزان و همراهان Theways

هدف این مقاله :

 (آشنایی با برخی از کامند های کاربردی اکتیودایرکتوری با استفاده از Powershell در ویندوزسرور۲۰۱۶)

 

راهنمای دستورات :

عبارت CN= میتواند نام یک یوزر یا کامپیوتر یا گروه باشد.

 

عبارت DC= ساختار نام دامنه دامین ما می باشد که بصورت زیر نوشته می شود :
Domain Name : Mcse.local     —->  DC=Mcse,DC=local

 

عبارت OU= برای فراخوانی یک Organizational Unit استفاده میشه.
عبارت Dsrm برای حذف کردن یک object از ADUC استفاده میشه.

 

در همه ی دستورات زیر بجای عبارت های Group_Name , User_Name,OU_Name اسم گروه یا یوزر یا OU موردنظرتان را وارد میکنید.

 

با استفاده از عبارت زیر مکان و جایگاه object مورد نظر خود را در محیط Powershell فراخوانی میکنید:
“CN= User_Name,OU=OU_Name,DC=mcse,DC=local”

 

از دستور Set-ADUser برای تغییر Attribute ها در Object های مختلف میتوانید استفاده کنید.

 

از دستور New-ADGroup برای ساخت یوزر در ADUC میتوانید استفاده کنید.

 

از دستور New-ADOrganizationalUnit برای ساخت OU جدید میتوانید استفاده کنید.

 

از دستور Rename-ADObject برای تغییرنام یوزر و گروه و … میتوانید استفاده کنید.

 

از دستور Move-ADObject برای انتقال Object ها (یوزرها و کامپیوتراکانت ها و گروه ها) میتوانید استفاده کنید.

 

از دستور Remove-ADGroupMember هم برای حذف تعدادی از یوزرها از یک گروه خاص میتوانید استفاده کنید.

 

 

 

*ساخت یوزر اکانت در اکتیودایرکتوری در یک OU خاص :

Dsadd.exe User “CN= User_Name,OU=OU_Name,DC=mcse,DC=local” -samid ” User_Name ” -fn ” User_Name ” -disabled no -mustchpwd yes -upn User_Name @mcse.local -pwd “P@ssw0rd”

*پاک کردن یک یوزر اکانت از OU موردنظر :

Dsrm “CN=User_Name,OU= OU_Name,DC=mcsa,DC=local”

 

*تغییردادن Attribute های یک یوزر خاص :

Set-ADUser  ‘CN=User_Name,OU=OU_Name,DC=mcse,DC=local’ -HomePage ‘http://Test.com’ -Department IT -street VictorHugo -email User_Name@gmail.com -City Paris

 

 

 

*ساخت گروه در اکتیودایرکتوری :

New-ADGroup “Group_Name” -Path “OU=OU_Name,DC=mcse,dc=local” -GroupCategory Security -GroupScope Global -PassThru –Verbose

 

 

 

*پاک کردن گروه از اکتیودایرکتوری:

Dsrm “CN=Group_Name,OU=OU_Name,DC=mcse,DC=local”

 

 

 

 

*گزارش گرفتن از یوزرهای موجود در Active Directory :

Get-ADUser -filter *

 

 

 

*گزارش گرفتن از گروه های موجود در Active Directory :

Get-ADGroup -filter * -properties GroupCategory | ft name,groupcategory,groupscope,memberof,members

 

 

 

 

*ساخت OU در اکتیودایرکتوری :

New-ADOrganizationalUnit “OU_Name”

 

 

 

*پاک کردن یک OU خاص :

Get-ADOrganizationalUnit -filter “Name -eq ‘OU_Name'” | Set-ADOrganizationalUnit  -ProtectedFromAccidentalDeletion $False

 

Get-ADOrganizationalUnit -filter “Name -eq ”OU_Name ‘” | Remove-ADOrganizationalUnit –Recursive

 

 

 

 

*تغییرنام یک OU خاص :

Rename-ADObject -Identity “OU=OU_Name,DC=mcse,DC=local” -NewName OU_Name

 

 

 

 

*غیرفعال کردن Protect Object برای یک OU خاص :

Set-ADOrganizationalUnit -Identity “OU=OU_Name,DC=mcse,DC=local” -ProtectedFromAccidentalDeletion $False

 

 

 

 

*انتقال یک OU به یک OU دیگر :

Set-ADOrganizationalUnit -Identity “OU=OU_Name,DC=mcse,DC=local” -ProtectedFromAccidentalDeletion $False
 
Move-ADObject -Identity “OU=OU_Name,DC=mcse,DC=local” -TargetPath “OU=OU_Name,DC=mcse,DC=local”

 

برای فعال کردن Protect object در انتهای دستور همانند تصویر زیر از $True استفاده کنید :

 

 

 

*انتقال یک کامپیوتر یا یک یوزراکانت از یک OU به یک OU دیگر:

Move-ADObject -Identity “CN=User_Name,OU=OU_Name,DC=mcse,DC=local” -TargetPath “OU=OU_Name,DC=mcse,DC=local”

 

 

 

*عضو کردن یک یوزر در یک گروه :

Get-ADUser -SearchBase ‘CN=User_Name,OU=OU_Name,DC=mcse,DC=local’ -Filter * | ForEach-Object {Add-ADGroupMember -Identity ‘Group_Name’ -Members $_ }

 

 

 

 

*عضوکردن یوزرهای موجود در یک OU در یک گروه خاص :

Get-ADUser -SearchBase ‘OU=OU_Name,DC=mcse,DC=local’ -Filter * | ForEach-Object {Add-ADGroupMember -Identity ‘Group_name’ -Members $_ }

 

 

 

 

*عضوکردن گروه های موجود در یک OU در یک گروه خاص :

Get-ADGroup -SearchBase ‘OU= OU_Name,DC=mcse,DC=local’ -Filter * | ForEach-Object {Add-ADGroupMember -Identity ‘Group_name’ -Members $_ }

 

 

 

 

*عضوکردن یک یوزرخاص در چند گروه :

Group_Name1″,” Group_Name2″ | Add-ADGroupMember -Members `

 (Read-Host -Prompt “Enter User Name”)

 

 

 

*عضو کردن همه ی یوزرهای موجود دریک گروه در گروه دیگر :

Get-ADGroupMember “Group_Name” | Get-ADUser | ForEach-Object {Add-ADGroupMember -Identity “Group_Name” -Members $_}

 

 

 

 

*پاک کردن یک یا چند یوزر یا کامپیوتراکانت یا گروه از یک گروه خاص:

Remove-ADGroupMember -Identity Group_Name -Members User_Name

 

 

 

 

*پاک کردن یک یوزراکانت از همه ی گروه های موجود در اکتیودایرکتوری :

Get-ADUser ‘CN= User_Name,OU= OU_Name,DC=mcse,DC=local’ -Properties MemberOf | ForEach-Object {
  $_.MemberOf | Remove-ADGroupMember -Members $_.DistinguishedName -Confirm:$false}

 

 

 

 

*پاک کردن یک گروه خاص از همه ی گروه های موجود در اکتیودایرکتوری :

Get-ADGroup ‘CN= Group_Name,OU= OU_Name,DC=mcse,DC=local’ -Properties MemberOf | ForEach-Object {
  $_.MemberOf | Remove-ADGroupMember -Members $_.DistinguishedName -Confirm:$false}

 

 

خیلی ممنون که همراه ما بودید.

نویسنده : Mahdi Faraji

Theways سایتی جهت ارائه مطالب آموزشی در حوزه IT

80%
Awesome
  • Design
4 نظرات
  1. فرهاد خانلری می گوید

    سلام مهندس فرجی ، خیلی عالی بود و پر از نکته تشکر از زمانی که گذاشتید.

    1. مهدی فرجی می گوید

      سلام مهندس عزیز ، خواهش میکنم شما لطف دارید

  2. میلاد اسحاقی می گوید

    عالی بود مهندس فرجی عزیز ، واقعا این کامند ها و Cmdlet ها با وجود کوچیک بودن ! خیلی وقت ها کارهای بزرگی انجام میدن و بسیار کاربردی هستن
    مخصوصا که خیلی وقت ها همه کانفیگ های که از نظر محیط GUI شدنی نیستن از طریق CLI کاملا قابل انجام هستن ، کاملا توی روال مایکروسافت مشهود که حرکت به سمت CLI با سرعت خیلی زیاد در حال رشد و گسترش هست
    من از این بیشتر از همه خوشم اومد : ” عضو کردن همه ی یوزرهای موجود دریک گروه در گروه دیگر ”
    ممنون از وقتی که گذاشتی

    1. مهدی فرجی می گوید

      سلام مهندس اسحاقی عزیز ، ممنونم ،‌ بله دقیقا همان طور که فرمودید این دستورات خیلی وقت ها برای پیاده سازی سناریویی که در ذهن داریم و قادر به انجام آن در محیط GUI نیستیم کاربردی هستند.
      خواهش میکنم انجام وظیفه بود.

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.