خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را
Cache کردن اکانت های کاربران دامین در کلاینت ها
وقتی یک کاربر تعریف شده در اکتیو دایرکتوری با اکانت تعریف شده خود به سیستم لاگین می کند، credential وی بصورت پیشفرض در سیستم بصورت لوکال ذخیره می شود. در واقع Username و Password او در سیستم Cache می شود. پس این مورد به کاربران اجازه لاگین به سیستم هایشان حتی اگر AD domain controller در دسترس نباشد هم می دهد.
اگر Active Directory domain در دسترس نباشد ، ویندوز بررسی می کند که آیا نام کاربری و پسورد وارد شده با Cache لوکال مطابقت داشته باشد. اگر مطابقت نداشت، برای کاربر لاگین با کمک اکانتهای تعریف شده در LSD را فراهم می کند.
Credential های Cache در مسیر HKEY_LOCAL_MACHINE\Security\Cache در رجيستري ويندوز ذخیره می شوند. hash هر پسورد در پارامتر NL$x ذخیره می شود. x ایندکس دیتاهای cache شده است. به طور پیش فرض، حتی یک administrator نمی تواند محتوای این کلید رجیستری را مشاهده کند، اما در صورت نیاز می توانید دسترسی پیدا کنید.
اگر NL$x ها را حذف کنید، اعتبار کاربران در این سیستم که تعریف شده در دامین هستند را حذف می کنید. اگر credential های cache شده را حذف کنید، هنگام لاگین به کلاینت(البته وقتی کلاینت آفلاین است و دسترسی به دامین کنترلر ندارد) پیغام زیر را دریافت خواهید کرد:
به طور پیشفرض، ویندوز 10 و ویندوز سرور 2016 اعتبار 10 کاربر تازه لاگین کرده را ذخیره می کند. اما این مقدار قابل تغییر است.
اگر قصد دراید که این تنظیم روی تمام کامپیوترها در سطح دامین اعمال شود، در Root دامین یا در OU ای که همه کامپیوترها در آن ذخیره شده اند، اقدام به ایجاد یک GPO کنید. اگر فقط قصد دارید که روی کامپیوترهای یک دپارتمان خاص این تغییر اعمال شود، پس در آن OU اقدام به ایجاد این GPO کنید. باز هم تاکید می کنم این GPO باید در OU ای اکانت های کامپیوتری(و نه User ها) قرار دارند ایجاد و لینک شود.
روش های باز کردن کنسول Server Manager در ویندوز سرور
آشنایی با کنسول Server Manager ویندوز سرور
نحوه افزودن و گروه بندی کردن سرورها در کنسول Server Manager ویندوز سرور
نحوه اضافه کردن سرورهای Workgroup به کنسول Server Manager
Active Directory Organizational Unit یا Active Directory OU چیست
Distinguished Name چیست؟
مشاهده Distinguished Name اشیاء اکتیودایرکتوری با دستورات Powershell و کنسول ADUC
پس روی GPO کلیک راست کرده و گزینه Edit را بزنید.
در GPO مسیر زیر را دنبال کنید:
سپس پالیسی زیر را در این مسیر پیدا کنید. روی آن دابل کلیک کنید تا فرم تنظیمات آن باز شود
مقدار را از 0 تا 50 می توانید تغییر دهید.
مقدار بیش از 50 نمی تواند باشد. این یعنی در سیستم فقط 50 اعتبار به صورت Cache ذخیره می شوند. اگر مقدار را 0 تنظیم کنید، دیگر هیچ اعتباری در این سیستم بصورت لوکال Cache نمی شود. در نتیجه وقتی دامین کنترلر در دسترس نباشد کاربران به لاگین به سیستم هایشان نخواهد بود.
حالا یک سوال ممکن است پیش آید آنهم اینکه وقتی کاربر با اکانت Cache شده خود لاگین کند و واقعا دامین کنترلر به هر دلیلی در دسترس نباشد، کاربر از کجا باید از این موضوع اطلاع کسب کند، چگونه متوجه شویم که دامین کنترلر در دسترس نیست؟ می توانید برای اعتبارات Cache یک notification تنظیم کنیم. برای این منظور دوباره در همان GPO، مسیر زیر را دنبال کنید:
در این مسیر پالیسی Report when logon server was not available during user logon را خواهید دید. روی آن دابل کلیک کرده تا فرم تنظیمات آن باز شود. گزینه Enabled را فعال کرده و ok کنید.
در این صورت وقتی کاربران سعی در لاگین به سیستم با اکانتی دامینی خود آنهم وقتی دامین کنترلر در دسترس نیست داشته باشند، پیغام زیر را دریافت می کنند:
Local credential caching خطرات امنیتی به همراه دارد. پس از دسترسی فیزیکی به کامپیوتر/ لپ تاپ با داده های Cache شده، یک مهاجم می تواند با استفاده از یک حمله brute-force attack هش رمز عبور را رمزگشایی کند. این به طول و پیچیدگی پسورد بستگی دارد. اگر یک پسورد پیچیده باشد. بنابراین استفاده از Cache برای کاربران دارای مجوز Admin لوکال (یا domain admin) توصیه نمی شود.
Caching Domain User Credentials on Windows
اگر کاربر حداقل یک بار با اکانت دامینی خود به کلاینت لاگین کند، دوباره می تواند با همان یوزر و پسورد به سیستم لاگین کند حتی اگر دامین کنترلرها به هر دلیلی در دسترس نباشد چون اکانت آنها در همان سیستم کش شده است. پسوردهای Cache شده کاربران هرگز Expire نمی شود. اگر domain password policy یک کاربر را مجبور به تغییر پسورد کند پسورد ذخیره شده در local cache تغییر نمی کند تا زمانی که کاربر با پسورد جدید به سیستم لاگین شود. اگر پسوردکاربر در AD پس از آخرین لاگین به کامپیوتر تغییر کند و کلاینت آفلاینباشد (بدون دسترسی به شبکه دامین)، کاربر می تواند با همان پسورد قدیمی عمل لاگین به سیستم را انجام دهد.اگر Active Directory domain در دسترس نباشد ، ویندوز بررسی می کند که آیا نام کاربری و پسورد وارد شده با Cache لوکال مطابقت داشته باشد. اگر مطابقت نداشت، برای کاربر لاگین با کمک اکانتهای تعریف شده در LSD را فراهم می کند.
Credential های Cache در مسیر HKEY_LOCAL_MACHINE\Security\Cache در رجيستري ويندوز ذخیره می شوند. hash هر پسورد در پارامتر NL$x ذخیره می شود. x ایندکس دیتاهای cache شده است. به طور پیش فرض، حتی یک administrator نمی تواند محتوای این کلید رجیستری را مشاهده کند، اما در صورت نیاز می توانید دسترسی پیدا کنید.
اگر NL$x ها را حذف کنید، اعتبار کاربران در این سیستم که تعریف شده در دامین هستند را حذف می کنید. اگر credential های cache شده را حذف کنید، هنگام لاگین به کلاینت(البته وقتی کلاینت آفلاین است و دسترسی به دامین کنترلر ندارد) پیغام زیر را دریافت خواهید کرد:
There are currently no logon servers available to service the logon request.
Configuring Cached Credentials with Group Policy
با Group Policy می توانید تعداد کاربران unique را که اعتبار آنها در Cache لوکال در کامپیوترهای دامین ذخیره می شود را تنظیم کنید. برای اینکه اطلاعات کاربری در Cache لوکال ذخیره شود، کاربر باید حداقل یک بار به سیستم لاگین کند.به طور پیشفرض، ویندوز 10 و ویندوز سرور 2016 اعتبار 10 کاربر تازه لاگین کرده را ذخیره می کند. اما این مقدار قابل تغییر است.
اگر قصد دراید که این تنظیم روی تمام کامپیوترها در سطح دامین اعمال شود، در Root دامین یا در OU ای که همه کامپیوترها در آن ذخیره شده اند، اقدام به ایجاد یک GPO کنید. اگر فقط قصد دارید که روی کامپیوترهای یک دپارتمان خاص این تغییر اعمال شود، پس در آن OU اقدام به ایجاد این GPO کنید. باز هم تاکید می کنم این GPO باید در OU ای اکانت های کامپیوتری(و نه User ها) قرار دارند ایجاد و لینک شود.
روش های باز کردن کنسول Server Manager در ویندوز سرور
آشنایی با کنسول Server Manager ویندوز سرور
نحوه افزودن و گروه بندی کردن سرورها در کنسول Server Manager ویندوز سرور
نحوه اضافه کردن سرورهای Workgroup به کنسول Server Manager
Active Directory Organizational Unit یا Active Directory OU چیست
Distinguished Name چیست؟
مشاهده Distinguished Name اشیاء اکتیودایرکتوری با دستورات Powershell و کنسول ADUC
پس روی GPO کلیک راست کرده و گزینه Edit را بزنید.
در GPO مسیر زیر را دنبال کنید:
Computer Configuration -> Policies -> Windows Settings -> Security Settings -> Local Policies -> Security Options
سپس پالیسی زیر را در این مسیر پیدا کنید. روی آن دابل کلیک کنید تا فرم تنظیمات آن باز شود
Interactive logon: Number of previous logons to cache (in case domain controller is not available)
مقدار را از 0 تا 50 می توانید تغییر دهید.
مقدار بیش از 50 نمی تواند باشد. این یعنی در سیستم فقط 50 اعتبار به صورت Cache ذخیره می شوند. اگر مقدار را 0 تنظیم کنید، دیگر هیچ اعتباری در این سیستم بصورت لوکال Cache نمی شود. در نتیجه وقتی دامین کنترلر در دسترس نباشد کاربران به لاگین به سیستم هایشان نخواهد بود.
حالا یک سوال ممکن است پیش آید آنهم اینکه وقتی کاربر با اکانت Cache شده خود لاگین کند و واقعا دامین کنترلر به هر دلیلی در دسترس نباشد، کاربر از کجا باید از این موضوع اطلاع کسب کند، چگونه متوجه شویم که دامین کنترلر در دسترس نیست؟ می توانید برای اعتبارات Cache یک notification تنظیم کنیم. برای این منظور دوباره در همان GPO، مسیر زیر را دنبال کنید:
Computer configuration -> Policies -> Administrative templates -> Windows Components -> Windows Logon Options
در این مسیر پالیسی Report when logon server was not available during user logon را خواهید دید. روی آن دابل کلیک کرده تا فرم تنظیمات آن باز شود. گزینه Enabled را فعال کرده و ok کنید.
در این صورت وقتی کاربران سعی در لاگین به سیستم با اکانتی دامینی خود آنهم وقتی دامین کنترلر در دسترس نیست داشته باشند، پیغام زیر را دریافت می کنند:
A domain controller for your domain could not be contacted. You have been logged on using cached account information. Changes to your profile since you last logged on might not be available.
Local credential caching خطرات امنیتی به همراه دارد. پس از دسترسی فیزیکی به کامپیوتر/ لپ تاپ با داده های Cache شده، یک مهاجم می تواند با استفاده از یک حمله brute-force attack هش رمز عبور را رمزگشایی کند. این به طول و پیچیدگی پسورد بستگی دارد. اگر یک پسورد پیچیده باشد. بنابراین استفاده از Cache برای کاربران دارای مجوز Admin لوکال (یا domain admin) توصیه نمی شود.
نمایش دیدگاه ها (0 دیدگاه)
دیدگاه خود را ثبت کنید: