0

مدیریت Active Directory با استفاده از دستورات PowerShell

2082 بازدید
مدیریت Active Directory با استفاده از دستورات PowerShell

مدیریت Active Directory با استفاده از دستورات PowerShell

ماژول Active Directory PowerShell بخشی از Remote Server Administration Tools (RSAT) در تمامی سیستم عامل های ویندوز است. مجموعه ای از cmdlet های PowerShell که انعطاف پذیری را در مدیریت اکتیو دایرکتوری ایجاد می کند.

در حالی که مدیریت AD با استفاده از ابزارهای مبتنی بر رابط کاربری گرافیکی مانند کنسول Active Directory Users and Computers امکان پذیر است، نصب Windows Active Directory PowerShell Module به شما این امکان را می دهد که تغییرات را به صورت انبوه انجام دهید. این به این دلیل است که دستورات PowerShell می توانند تغییرات را از طریق لیست اشیاء با سرعت بسیار بیشتری نسبت به رابط گرافیکی تکرار کنند.

فهرست مطالب

چرا PowerShell؟

برخی افراد تصور می‌کنند که پاورشل نسخه تکامل یافته‌ی CMD است و به دلیل این‌که هنوز هم انجام برخی از کارها با خط فرمان وجود دارد، ترجیح می‌دهند با محیط قدیمی خط فرمان کار کنند. اما بهتر است بدانید که خط فرمان مانند پاورشل اجازه نمی‌دهد به راحتی برخی از کارها را انجام دهید و در انجام برخی از کارها محدود است.

به عنوان مثال شما می‌توانید از ماوس در پاورشل استفاده کنید و محدودیت‌ های خط فرمان در ارتباط با عدم به‌کارگیری ماوس وجود ندارد. اکثر عملکرد های یک سرور سنتی به صورت cmdlets در پاورشل وجود دارد. دستوراتی که به جای باز کردن پنجره ‌های مختلف می توانید تنها با اجرای یک دستور همان کار را انجام دهید.

از کامندلت‌ ها می‌توان برای دریافت اطلاعات از یک سرور و نیز تنظیم اطلاعات و پارامترهای روی سرور استفاده کنید.cmdlets ‌ها با پیشوند های get یا set شروع می‌شوند که بیان‌گر نوع کاری است که فرمان انجام می‌دهد. هر کامندلت یکسری گزینه و متغیر دارد که بعد از فرمان قرار می‌گیرند و برای پیکربندی یا اجرای سفارشی یک فرمان استفاده می‌شوند.

نحوه اجرای PowerShell

کنسول پاورشل به‌طور پیش‌فرض در تمامی ویندوزها نصب شده است، بنابراین می‌توانید از دو روش زیر آن‌ را اجرا کنید. کافی است در کادر جست‌وجوی ویندوز فرمان PowerShell را تایپ و کلید اینتر را فشار دهید.

1- منوی استارت را باز کنید و عبارت PowerShell را تایپ کنید و کلید Enter را فشار دهید.

2- عبارت Run را در منوی استارت جستجو کنید سپس عبارت PowerShell را تایپ و OK کنید.

پاورشل

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

پاورشل

برای این کار می توانید در منوی استارت عبارت PowerShell را تایپ کنید، سپس راست کلیک کرده و گزینه Run as different user را انتخاب کنید.

پاورشل

استفاده از کلید Tab

اگر در محیط پاورشل چند حرف اول از هر دستور را تایپ کنید و کلید Tab را فشار دهید، باقیمانده عبارت به‌طور خودکار نمایش داده می‌شود. به عنوان مثال اگر فرمان get-co را تا همین مقدار تایپ کنید، سپس کلید  Tab را فشار دهید،فرمان Get-Command کامل می‌شود. امکان دارد فرمان‌های مشابهی وجود داشته باشد. کافیست چند بار دکمه فوق را فشار دهید تا دستورات مختلف به شما نشان داده شود.

همچنین دکمه Tab با نام فایل‌ ها و پوشه‌ ها کار می‌کند. مثلا فرض کنید فایل یا وصله‌ای را دانلود کرده اید و می خواهید آن‌ را روی سرور با استفاده از پاورشل نصب کنید و نمی خواهید وقت زیادی را برای تایپ نام فایل صرف کنید.شما قبلا به پوشه‌ای که فایل در آن نصب شده است، رفته اید. در این صورت کافیست چند حرف فایل را تایپ کنید و کلید Tab را فشار دهید. پاورشل به‌طور خودکار باقی‌ مانده نام فایل را پر می‌کند.

چند نمونه از cmdletهای پرکاربرد در PowerShell

Get-NetIPAddress

با این دستور می‌توانید آدرس آی‌پی سیستم را مشاهده کنید.

New-NetIPAddress

این دستور اجازه می‌دهد یک آدرس آی‌پی جدید برای کامپیوتر بسازید.

Set-NetIPAddress

با استفاده از این دستور می‌توانید آدرس آی‌پی موجود را ویرایش کنید.

Rename-Computer

برای تنظیم نام میزبان یک کامپیوتر استفاده می‌شود.

یکی از کاربردی‌ترین دستورات پاورشل دستور Get-Command است. اجرای این دستور خروجی زیر را دارد:

powershell

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

				
					Get-Command -Name *IPAddress*
				
			

فرمان Get-Command همراه با پارامتر Name به شما اجازه می‌دهد تا مواردی که به دنبال آن هستید را مشاهده کنید. خروجی دستور بالا در تصویر زیر مشاهده می کنید:

پاورشل

دستورات کاربردی در PowerShell

از مهم‌ترین دستورات پاورشل که می توانید از آن‌ها برای راحتی کار خود استفاده کنید، می توان به موارد زیر می‌توان اشاره کرد:

Get-Command

برای پیدا کردن دستورات اضافی یا دستوراتی که به دنبال آن‌ها هستید استفاده می‌شود.

Get-Command -Name *example*a

با اضافه کردن سوئیچ -Name به انتهای دستور و در واقع با فیلتر کردن دستور، تنها دستوراتی که به دنبال آن‌ها هستید را نشان می‌دهد.

GC

نام مخففی برای Get-Command است. برخی از دستورات پاورشل نام‌های مستعاری همچون gcm دارند که اجازه می‌دهند با تایپ کلیدهای کمتری یک فرمان را اجرا کنید.

Get-Alias

برای مشاهده نام‌های مستعار برای دستورات دیگر پاورشل کافی است دستور Get-Alias را تایپ کنید.

Rename-Computer

برای تغییر نام میزبان سرور از این دستور استفاده می‌شود.

Add-Computer

از فرمان فوق برای اتصال کامپیوتر ها یا سرور ها به یک دامنه استفاده می‌شود.

Hostname

فرمان فوق نام سیستمی که در حال حاضر از آن استفاده می‌کنید را نشان می‌دهد.

Logoff

این دستور برای خروج از سیستم استفاده می‌شود، به جای آن‌ که از منوی شروع و از Sign Out استفاده کنید، می توانید دستور بالا را تایپ کنید و کلید Enter را فشار دهید تا برنامه بسته شود.

Restart-Computer یا Shutdown

دو دستور shutdown یا Restart-Computer برای خاموش یا راه‌اندازی مجدد سرور استفاده می شود.اگر فرمان ساده shutdown را استفاده کنید، سیستم در کمتر از یک دقیقه خاموش می‌شود.

Query یا Query user

دستور Query user یا Query نام تمامی کاربرانی که به‌تازگی به سرور اضافه شده‌اند را  به همراه ارائه یک گزارش آماری در ارتباط با نحوه ورود (محلی یا راه‌ دور) و این‌که کاربر چه مدت است که فعال می باشد، نشان می‌دهد.

در ادامه به ساخت کاربر، گروه و واحد سازمانی و همچنین حذف آن ها با استفاده از دستورات پاورشل می پردازیم:

ساخت کاربر از طریق PowerShell

برای این کار ابتدا سرویس windows PowerShell ISE را در بخش search ویندوز اجرا خواهیم کرد.

powershell

همان گونه که در تصویر 1 مشاهده می کنید وارد سرویس ISE  شدیم. دستوراتی که مشاهده می کنید برای ساخت یک کاربر با نام و مشخصات خاص می باشد که آن را بررسی می کنیم.

				
					New-ADUser -name amir -DisplayName ”amir asadi” -State guilan - City Rasht – StreetAddress ”Shahid alame” –Homephone 0111 –Homepage www.k20.ir -Department cisco
				
			

powershell

powershell

بررسی دستورات بالا

برای ایجاد کاربر در powershell باید از دستور New-ADUser   استفاده کرد. بعد از این کار از یک خط تیره (-) قرار می دهیم (بعد از علامت خط تیره برای سهولت در نوشتن کافی کلید space فشار داده تا کلمه موردنظر به صورت اتوماتیک برایتان نمایش داده شود) که بعد از این کار لیست دستوراتی که با دستور New-ADUser  می باشد به صورت یک لیست برای ما نشان داده می شود که بسته به نیاز خود از آن استفاده خواهیم کرد. بعد از هر دستور باید خط تیره قرار بگیرد تا دستورات مربوط به دستور اصلی برای ما نمایش داده شود.

در مرحله بعد معرفی نام کاربر می باشد که باید اول name  را وارد کرده و بعد نام کاربر که در اینجا amir  می باشد وارد کرده که بعد این کار شما می توانید کد مورد نظر را بدون وارد کردن بقیه اطلاعات اجرا کنید زیرا بقیه اطلاعات تکمیل کننده کاربر می باشد. با دستور DisplayName و بعد از آن نام کامل موردنظر را وارد می کنیم.

زمانی که می خواهید یک اسم را وارد کنید و این اسم به صورت چند کلمه جدا از هم باشد حتما باید کلمات موردنظر خود را در داخل دابل کوتیشن (“”) مثل اسم “arash falahi”  قراردهید تا با خطا مواجه نشوید.

مابقی دستورات نیز برای نام استان ،شهر ،خیابان و…. می باشد که به دلخواه می توانید وارد کنید. این اطلاعات همان اطلاعات در بخش properties  یک کاربر می باشد با کلیک کردن برروی آیکون run script  دستورات اجرا شده و کاربر موردنظر ساخته می شود.

در تصویر 2  بعد از ایجاد کاربر باید رمز عبور آن را وارد کنید برای این کار دستور زیر تایپ کنید:

				
					set-ADAccountPassword amir
				
			

powershell

با وارد کردن این دستور باید نام کاربر را که در قسمت name- قراردادیم در این بخش وارد کنیم تا پنجره دریافت رمز برای شما نمایش داده شود اگر کاربر شما از قبل رمز عبور برای او  set  شده باشد باید در پنجره  current رمز موردنظرتان را وارد کنید وگرنه باید بدون واردکردن کلمه ای برروی ok کلیک کرده و بعد در بخش  desired  رمز جدید را وارد کنید و بعد برروی ok کلیک کنید و در پنجره آخر رمز را دوباره تکرار کنید برروی ok  کلیک کرده تا کاربر موردنظر دارای رمز عبور باشد.

ابتدا برای وارد کردن رمز کادر اول را به صورت خالی  ok کنید و در دوبخش current , desired  پسورد را وارد کرده تا با خطا مواجه نشوید.

تا به این لحظه یک کاربر با جزییات مشخص شده در تصویر 3 مشاهده می کنید و رمز عبور آن را هم ایجاد کردیم اگر وارد سرویس active directory users and computers  شوید در قسمت users  کاربر موردنظر به مانند شکل روبرو  غیرفعال خواهد بود که برای فعال کردن کاربر موردنظر در تصویر 4 باید از دستور زیر استفاده کنید:

				
					Enable-ADAccount amir
				
			

powershell

powershell

در این دستور باید به جای amir  نام کاربر خود را وارد کنید تا کاربر موردنظر فعال شود. برای اجرای این دستور برروی آیکن run script در بالای صفحه کلیک کنید.
همان گونه که در تصویر 5  در بالا مشاهده می کنید کاربر amir  فعال شده است و می تواند وارد سیستم خود شود.

ساخت Group با استفاده از PowerShell

برای ساخت گروه وارد PowerShell ISE می‌شویم. در این بخش طبق تصویر ۶، دستوراتی برای ساخت گروهی با نام msc20 با تنظیمات موردنظر انجام شده است که در زیر به بررسی دستورات آن می‌پردازیم:

				
					New-ADGroup -Name msc20 -ManagedBY amir -GroupCategory Security -GroupScope Global -Description "Network Learning"
				
			

powershell

powershell

 

1- دستور New-ADGroup  برای ایجاد گروه است.

2-  باید نام گروه را بادستور name- وارد کنید.

3- بعد از آن با دستور ManagedBY- مشخص کنیم که چه کاربر و یا گروهی خاص مدیر این گروه باشد که نام کاربری amir  را که در قسمت قبل ایجاد کردیم در این قسمت وارد می کنیم.

4- بعد از این کار باید نوع گروه و حوزه فعالیت گروه مشخص شود. با دستور  GroupCategory- که مشخص می کنید گروه موردنظر از نوع security باشد و یا از نوع destribution.

5-همچنین با دستور GroupScope- حوزه فعالیت گروه را که سه نوع می باشد که در این جا global  وارد کنید و اگر توضیحاتی هم بود می توانید در بخش Description- وارد کنید.

با وارد شدن به سرویس active directory users and computers  در قسمت  users  می توانید گروه مورد نظر مشاهده و با کلیک برروی آن میتوانید تنظیمات مربوط به آن را نیز مشاهده کنید.

ساخت Organizational Unit یا واحد سازمانی با استفاده از PowerShell

وارد بخش PowerShell ISE شوید و طبق تصویر ۷، دستورات زیر را اجرا کنید:

				
					New-ADOrganizationalUnit -Name sales12 -ProtectedFromAccidentalDeletion 1
				
			

powershell

powershell

 

1- با استفاده از دستور New-ADOrganizationalUnit می‌توان یک واحد سازمانی در active directory  خود ایجاد کرده ابتدا این دستور را وارد کنید.

2- بعد دستور name- که نام واحد سازمانی به نام sales12 در نظر گرفته‌ایم  را نوشته و درواقع یک واحد سازمانی ایجاد خواهید کرد.

3- دستور ProtectedFromAccidentalDeletion  1- را مشاهده می‌کنید که برای جلوگیری از حذف شدن شی موردنظر می‌باشد زمانی که عدد 1 باشد یعنی این قابلیت فعال می‌باشد و اگر 0 باشد یعنی غیرفعال شده است همان طور که مشاهده می‌کنید گروه سازمانی مورد نظر به درستی ایجاد شده است.
بعد از انجام کار در اکتیو دایرکتوری بر روی دومین خود refresh کنید تا سازمان مربوطه نمایش داده شود.

حذف User/Group/Organizational Unit از طریق PowerShell

حذف User در PowerShell

بعد از ساخت کاربران و گروه های کاربری و سازمانی از طریق پاورشل باید توانایی حذف آن را هم داشته باشیم برای حذف یک کاربر از لیست active  directory users and computer باید از دستور زیر استفاده کنید :

				
					Remove-ADuser amir
				
			

بعد از دستور بالا در پاورشل طبق تصویر 8 از شما سوال خواهد شد که آیا می خواهید کاربری به نام amir را که در قسمت users  قرار دارد حذف کنید ؟ اگر بر روی yes  و yes to all  کلیک کنید کاربر مورد نظر حذف خواهد شد.

powershell

powershell

حذف گروه

برای حذف گروه کاربری طبق تصویر 9  از دستور زیر در PowerShell  استفاده می کنیم

				
					Remove-ADGroup msc20
				
			

powershell

همان گونه که مشاهده می کنید با دستور  Remove-ADGroup  و بعد از آن نام گروه موردنظر و اجرای آن سوال می شود که آیا گروه موردنظر می خواهید حذف بشود یا خیر ؟

حذف واحدهای سازمانی

برای حذف واحدهای سازمانی باید از دستور زیر استفاده کنید:

				
					Remove-ADOrganizationalUnit sales12
				
			

powershell

Sales 12  نام واحد سازمانی می باشد که در مرحله قبل آن را ساختیم و می خواهیم آن را حذف کنیم. بعد از اجرای دستور با error بالا مواجه خواهید شد:
در تصویر 10 دستور مقابل با خطا مواجه شده و به خاطر این می باشد که شی موردنظر پیدا نشده و برای حل این مشکل باید دستور را به صورت زیر تغییر دهید تا شی موردنظر در دسترس باشد.

				
					Remove-ADOrganizationalUnit "OU=Sales12,DC=hiva,DC=local"
				
			

powershell

در دستور بالا برای پیدا کردن شی sales 12  باید طبق دستور زیر عمل کنید: نام گروه‌ را در داخل دو علامت “” قرار دهید. نام کامل گروه شما ابتدا ou=sales12 است که بعد از آن کاما قرار داده و نام دومین خود را وارد می‌کنید.در اینجا Domain ما hiva است. یک کاما دیگر می‌گذارید و سپس dc=local را قرار دهید. این بدین معناست که ابتدا باید نام واحد سازمانی و نام دومین نوشته شود تا خطای مرحله قبل از بین برود.

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

				
					Set-ADOrganizationalUnit "OU=Sales12,DC=hiva,DC=local" -ProtectedFromAccidentalDeletion 0
				
			

powershell

طبق این دستور شی sales 12  را با دستور Set-ADOrganizationalUnit انتخاب خواهیم کرد.

با دستور ProtectedFromAccidentalDeletion 0-  محافظت آن را غیر فعال می‌کنیم (عدد صفر به‌معنای غیر فعال شدن می باشد)

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

طبق تصویر 12 مشاهده می کنید که دستورات به صورت پشت سرهم تایپ شده در دو خط و به راحتی شی مورد نظر حذف می شود

powershell

طبق تصویر 13 مشاهده می کنید که گروه مورد نظر به نام sales 12  از لیست سرویس به صورت کامل حذف گردید.

powershell

powershell

در این مقاله نکات مهمی را درباره مدیریت Active Directory با استفاده از دستورات PowerShell آموختید. در ابتدا آموختید که PowerShell مزیت‌های بسیاری نسبت به CMD دارد و با cmdletهای پرکاربرد آن آشنا شدید. یاد گرفتید که چگونه دستورات مختلف را در PowerShell اجرا کنید، با کمک آن‌ها کاربر ایجاد کنید. آن‌ها را به گروه‌ها و واحدهای سازمانی اضافه کنید و در نهایت آن‌ها را حذف کنید. مرور بخش خطاهایی که ممکن است با آن‌ها مواجه شوید، می‌تواند در آینده کمک شایانی در troubleshootهای کاریتان بکند. امیدواریم این مقاله برای شما مفید واقع شده باشد.

هیواشبکه

خدمات ما در مجموعه هیواشبکه شامل :

شرکت فنی و مهندسی هیوانوآوران داده گستر : مجری طراحی ، پیاده سازی ، پشتیبانی پروژه های شبکه و امنیت در استان گیلان – رشت و شهرها و استانهای همجوار
آموزشگاه تخصصی هیواشبکه : برگزار کننده دوره های تخصصی شبکه و امنیت ، پیکربندی سرور HP ، مجازی سازی ، MCSA 2022 ، نتورک و … به صورت حضوری با مجوز از سازمان فنی و حرفه ای و آموزش کارکنان دولت در رشت ، استان گیلان و به صورت مجازی در سراسر کشور

آیا این مطلب را می پسندید؟
https://hivanetwork.ir/?p=21608
اشتراک گذاری:
آرش صفرزاده
مطالب بیشتر
برچسب ها:

نظرات

0 نظر در مورد مدیریت Active Directory با استفاده از دستورات PowerShell

دیدگاهتان را بنویسید

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

هیچ دیدگاهی نوشته نشده است.