#تجربه

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

بخشی حیاتی از این فرآیند، شناسایی کامپیوترهای غیرفعال یا “مرده” (Stale Computers) است. این‌ها حساب‌های کامپیوتری (Computer Accounts) هستند که در اکتیو دایرکتوری وجود دارند اما به هیچ ماشین فیزیکی یا مجازی فعالی متصل نیستند. این حساب‌ها باید ابتدا شناسایی، سپس غیرفعال (Disable) و پس از اطمینان کامل، از دیتابیس AD حذف شوند تا از بروز مشکلات امنیتی و مدیریتی جلوگیری شود.

برای استخراج اطلاعات مورد نیاز جهت این تحلیل، می‌توانیم از دستورات پاورشل بهره ببریم. سه ویژگی (Attribute) کلیدی در این زمینه به ما کمک می‌کنند:

یک OperatingSystem: نوع و نسخه سیستم‌عامل را مشخص می‌کند.
و PasswordLastSet: نشان‌دهنده آخرین زمانی است که رمز عبور حساب کامپیوتر در AD تغییر کرده است. به طور پیش‌فرض، این اتفاق هر ۳۰ روز یک بار رخ می‌دهد.
وLastLogonDate: آخرین باری که کامپیوتر با یک دامین کنترلر ارتباط برقرار کرده را ثبت می‌کند. این تاریخ، معیار بسیار خوبی برای تشخیص فعالیت یک سیستم است.


دستور پاورشل پایه برای جمع‌آوری اطلاعات:

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




Get-ADComputer -Filter * -Properties OperatingSystem, LastLogonDate, PasswordLastSet |
Sort-Object OperatingSystem |
Select-Object Name, OperatingSystem, LastLogonDate, PasswordLastSet

دستور پیشرفته برای شناسایی کامپیوترهای غیرفعال:

برای یک تحلیل دقیق‌تر و شناسایی سیستم‌های غیرفعال، می‌توانیم دستور را به شکل زیر بهینه کنیم. در این کامند جدید، ما یک متغیر برای تعیین بازه زمانی عدم فعالیت (مثلاً ۹۰ روز) تعریف کرده و سپس فقط کامپیوترهایی را فیلتر می‌کنیم که در این مدت هیچ فعالیتی نداشته‌اند. خروجی نیز برای خوانایی بهتر فرمت‌بندی شده است.


# تعریف بازه زمانی؛ کامپیوترهایی که بیش از 90 روز غیرفعال بوده‌اند را پیدا کن
$inactiveDays = 90
$inactiveDate = (Get-Date).AddDays(-$inactiveDays)

# دریافت کامپیوترهای غیرفعال، مرتب‌سازی بر اساس آخرین تاریخ لاگین و نمایش اطلاعات کلیدی
Get-ADComputer -Filter {LastLogonDate -lt $inactiveDate -or LastLogonDate -notlike "*"} -Properties OperatingSystem, LastLogonDate, PasswordLastSet, Enabled |
Sort-Object LastLogonDate |
Format-Table Name, OperatingSystem, Enabled, @{Name="Last Logon"; Expression={$_.LastLogonDate}}, PasswordLastSet -AutoSize

این دستور پیشرفته به مدیران شبکه کمک می‌کند تا به سرعت کامپیوترهای نیازمند بررسی را شناسایی کرده و برای غیرفعال یا حذف کردن آن‌ها اقدام نمایند

مرجع: درس سطح ۱ امنیت آکادمی روزبه


لیست دوره های من رو میتونید از واتس اپ و بله 09902857290 دریافت کنید.

Comments

Be the first to add a comment