گزارش‌گیری از اکتیو دایرکتوری با ابزار خط فرمان 1

 دانلود نسخه‌ی PDF

مقدمه
مدیریت اکتیو دایرکتوری از ویندوزهای کلاینتی
گزارش‌گیری با دستور Get-ADUser

مقدمه

فرض کنید شما وارد یک سازمان جدید شده‌اید و می‌خواهید قبل از هر کار کاربرانی که مجوز اعمال تغییرات در OU ها را دارند (برای آنها delegation انجام شده) را مشاهده کنید. فرض کنید مدت زیادی است که در یک شرکت بزرگ با چندین شعبه مشغول به کار هستید و پس از گذشت چندین سال متوجه وجود اکانت‌هایی شده‌اید که کاربران آنها از سازمان خارج شده‌اند. آیا امکان دریافت چنین لیستی از واحد منابع انسانی ممکن است؟ اگر بتوان گزارشی از اکتیو دایرکتوری دریافت کرد که لیستی که کاربرانی که در چند ماه گذشته فعالیت نداشته‌اند را به ما بدهد مشکل به سادگی حل خواهد شد. اما آیا چنین گزارشاتی از اکیتو دایرکتوری ممکن است؟ در این مجموعه مقالات سعی داریم تا روش‌ها و دستورات لازم برای فراهم کردن گزاراشات کاربردی از اکتیو دایرکتوری را به شما معرفی کنیم.

از آنجایی که برخی از ادمین‌های شبکه هنوز با ابزار RSAT که توسط مایکروسافت ارائه شده است و امکان انجام امور مربوط به اکتیو دایرکتوری را از سیستم عامل‌های کلاینتی مانند ویندوز 7، 8 یا 10 به کاربران می‌دهد آشنایی ندارند، ابتدا به روش نصب این ابزار پرداخته و سپس ابزارهای خط فرمان مانند Get-ADUser که برای گزارش‌گیری از اکتیو دایرکتوری استفاده می‌شود را معرفی خواهیم کرد.

مدیریت اکتیو دایرکتوری از ویندوزهای کلاینتی

در بسیاری از مواقع، مانند زمانی که دسترسی محدود به یک کاربر یا کارشناس به منظور تغییر، افزودن یا پاک کردن آبجکت‌ها داده می‌شود، کاربرانی که با ویندوز کلاینتی کار می‌کنند نیازمند استفاده از ابزارهایی هستند که به طور پیش‌فرض فقط بر روی ویندوز سرور قابل دسترس است. طبیعتاً هیچ مدیر شبکه‌ای امکان دسترسی مستقیم و فیزیکی سرورها را به کارمندان نخواهد داد. علاوه بر آن، برای مدیران شبکه بسیار راحت‌تر خواهد بود که به وسیله‌ی کامپیوتر یا لپ‌تاپ خود امور مدیریت اکتیو دایرکتوری را انجام دهند و مجبور به حضور فیزیکی در کنار سرور نباشند. اما این کار چگونه ممکن است؟

مایکروسافت برای حل این مشکل، ابزاری را به صورت رایگان در سایت خود قرار داده است که امکان اتصال از ویندوزهای کلاینتی به سرور اکتیو دایرکتوری را فراهم می‌کند. این ابزار که Remote Server Administration Tools یا به اختصار RSAT نام دارد از این لینک قابل دانلود است. همان‌طور که در شکل 1 مشاهده می‌کنید، امکان فعال‌سازی این ابزار به طور پیش‌فرض در ویندوزهای کلاینتی وجود ندارد.

شکل 1. عدم وجود RSAT در تنظیمات پیش‌فرض ویندوزهای کلاینتی

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

پس از نصب، وارد control panel شوید و به بخش Programs and Features بروید. سپس Turn Windows Features on or off را کلیک کنید. در صورتی که ابزار RSAT را نصب کرده باشید، گزینه‌‌های مربوطه، همان‌طور که در شکل 2 نشان داده شده‌اند، نمایان خواهند شد. بسیاری از این ابزارها بر اساس نیاز شما ممکن است کاربرد داشته باشند. آنچه ما در اینجا به آن نیاز داریم تا امکان مدیریت اکتیو دایرکتوری توسط PowerShell را داشته باشیم، Active Directory Module for Windows PowerShell می‌باشد.

شکل 2. گزینه‌های فعال‌شده پس از نصب RSAT

از آنجایی که هدف ما استفاده از ابزارهای خط فرمان است، ابتدا PowerShell باز کرده و سپس به منظور فعال کردن امکانات RSAT دستور زیر را وارد کنید:

> Import-Module activedirectory

گزارش‌گیری با دستور Get-ADUser

بیش از 6 سال پیش، یکی از تکنیسین‌های مایکروسافت مقاله‌ای را تحت عنوان "چگونه می‌توان لیستی از یوزرهای غیرفعال را مشاهده کرد" نوشت. در آن مقاله راه‌حلی مبتنی بر اسکریپت نویسی به کمک VBScripts ارائه شد که تا 16 خط کد طول داشت. به جز افراد خبره و مسلط به COM-based ADO کمتر کسی توان استفاده و یا تغییر آن را داشت. هر چند راه‌حل‌هایی از این نوع هنوز قابل استفاده می‌باشند، دستورات خط فرمان و راه‌حل‌های ساده‌تری نیز ارائه شده‌اند که گزارش‌گیری از اکتیو دایرکتوری را تا حدودی ساده‌تر ساخته‌اند. پس از افزودن RSAT، از طریق کلاینت خود می‌توانید لیست کاربرانی که غیرفعال هستند را مشاهده کنید. برای این کار کافی است از دستور تک‌خطی زیر استفاده نمایید:

> Get-ADUser –Filter ‘enable –eq $false’ –Server dc1

دستور فوق نه تنها بسیار کوتاه‌تر از یک اسکریپت 16 خطی است، بلکه بسیار خوانا و قابل فهم است. حتی برای کسانی که برای اولین بار این دستور را نگاه می‌کنند، فهم اینکه این دستور چه کار می‌کند چندان دشوار نیست. دستور فوق در حقیقت کاربرانی که فیلد enable آنها برابر با false است و یا به عبارتی دیگر disable هستند را نشان می‌دهد. همان‌طور که در انتهای دستور آمده است شما سروری را که از آن می‌خواهد نتیجه دستور را مشاهده کنید را نیز می‌توانید مشخص کنید. خروجی دستور فوق در شکل 3 نشان داده شده است.

شکل 3. خروجی دستور Get-ADUser

دستورات مشابهی نیز برای گزارش‌گیری از گروه‌ها و کامپیوترها وجود دارد که به ترتیب Get-ADGroup و Get-ADComputer نام دارند. عملکرد و پارامترهای این دستورات مشابه با دستور Get-ADUser می‌باشد. برای مثال دستور زیر گروه‌هایی که از نوع security و Global می‌باشند را بازمی‌گرداند:

> Get-ADGroup -filter {GroupCategory -eq "Security" -and GroupScope -eq "Global"}

لازم به ذکر است که پارامترهای این دستورات بسیار متنوع بوده و قابلیت انعطاف زیادی را در گزارش‌گیری فراهم می‌کنند. هرچند اسکریپت‌نویسی با تمام پیچیدگی‌هایش قدرت بیشتری را در گزارش‌گیری به کاربر می‌دهد، اما استفاده از دستورات خط فرمان نسبتاً ساده و کاربردی برای مواردی که نیاز مدیریان شبکه را بر طرف می‌کند خالی از لطف نیست.

خواندن 129 دفعه

ayande.jpgdarya-navardi.jpgeghtesad-novin.jpgfolad-khozestan.jpggoldiran.jpggorgan.jpgirna.jpgmarkazi.jpgmaskan.jpgnosazi.jpgpasargad.jpgpetroshimi.jpgrefah.jpgrightel.jpgsarmayeh.jpgsepah.jpgshoraye-ali.jpgtejarat.jpg
opportunity job