LAPS: إدارة كلمات مرور Local Administrator على أجهزة الكمبيوتر في Domain.
سنشرح هنا كيفية إدارة كلمات مرور Local Administrator على أجهزة كمبيوتر مرتبطة بـ Domain باستخدام أداة Microsoft الرسمية - LAPS (Local Administrator Password Solution).
مشاهدة خطوات إدارة كلمات مرور Local Administrator على أجهزة الكمبيوتر في Domain باستخدام LAPS بالفيديو
تعد مسألة إدارة كلمة المرور للحسابات الـ built-in على أجهزة الكمبيوتر داخل الـ domain أحد أهم جوانب الأمان التي تتطلب الاهتمام .
هناك العديد من الطرق لإدارة حسابات الـ local administrator في الـ domain بدءًا من تعطيلها تمامًا (disable) إلى إدارتها باستخدام الـ GPO أو إنشاء أنظمة إدارة كلمات المرور الخاصة بك.
في السابق حتى (Server 2012) كنا نستخدم الجروب بوليسي (GPP) لتغيير كلمات مرورlocal administrator على أجهزة الكمبيوتر.
تم العثور لاحقًا على ثغرة خطيرة في GPP والتي تسمح لأي مستخدم داخل الـ Domain بفك تشفير كلمة مرور مخزنة في الملف النصي في SYSVOL.
في مايو 2014 أصدرت Microsoft تحديثًا أمنيًا (MS14-025 - KB 2962486) والذي عطّل تمامًا ميزة تعيين كلمة مرور المستخدم المحلي باستخدام GPP.
كانت الأداة المساعدة LAPS تسمى AdmPwd ولكن في مايو 2015 أصدرت Microsoft إصدار AdmPwd رسمي باسم LAPS وبالتالي نقلته من third party script إلى حل مدعوم رسميًا.
أداة تسمح لك التحكم مركزيا وإدارة كلمات مرور الـ administrator على كافة أجهزة الكمبيوتر وتخزين كلمة مرور local admin وتاريخ التغيير بصورة مباشرة في الكمبيوترداخل الـ Active Directory.
تعتمد ميزات LAPS على Group Policy Client Side Extension (CSE) وعلى ة module صغير يتم تثبيته على الكمبيوتر.
تُستخدم هذه الأداة لإنشاء كلمة مرور local administrator على كل كمبيوترداخل الـ Domain.
يتم تغيير كلمة مرور الـ administrator تلقائيًا في فترة زمنية معينة (افتراضيًا كل 30 يومًا).
يتم تخزين كلمة مرور local administrator الحالية في الـ attribute لحسابات الكمبيوتر في Active Directory ، ويتم تنظيم صلاحيات الوصول لعرضها بواسطة المجموعات (security groups) داخل الـ AD.
يمكنك تنزيل LAPS هنا
يتوفر في النسختين من ملفات MSI الخاصة بالتثبيت: 32 بت ( LAPS.x86.msi ) و 64 بت ( LAPS.x64.msi ).
يتم تثبيت management module على كمبيوتر الـ administrator ويتم تثبيت الـ client على الخوادم وأجهزة الكمبيوتر التي تحتاج إلى تغيير كلمة مرور local administrator عليها بانتظام.
قم بتشغيل ملف الأداة المساعدة MSI على كمبيوتر الـ administrator وحدد جميع المكونات المراد تثبيتها (على الأقل مطلوب NET Framework 4.0.
وتتكون من جزأين:
1- AdmPwd GPO Extension
يتم تثبيتها على أجهزة الكمبيوتر.
ينشئ ويحفظ كلمة مرور الـ admin في AD وفقًا للسياسة التي تم إعدادها
2- LAPS Management Tools
- Fat client UI
أداة لعرض كلمة مرور الـ administrator
- وحدة PowerShell
- GPO Editor templates
إعداد Active Directory Schema لتنفيذ LAPS
- ms-MCS-AdmPwd
يحتوي على كلمة مرور الـ local administrator على هيئة نص عادي (plain text).
- ms-MCS-AdmPwdExpirationTime
يخزن تاريخ انتهاء صلاحية كلمة المرور.
لتوسيع مخطط AD
- افتح PowerShell واستورد (import ) الوحدة Admpwd.ps module:
Import-module AdmPwd.ps
ثم قم بتوسيع مخطط Active Directory (ستحتاج إلى صلاحيات Schema Admin):
Update-AdmPwdADSchema
تم الان إضافة اثنين attributes جديدتين إلى الـ Computer objects.
إعداد الصلاحيات (Permissions) إلى AD LAPS Attributes
ويتم تقييد الوصول إليها بواسطة آلية confidential AD attributes (مدعومة منذ Windows 2003).
يمكن قراءة MS-MCS-AdmPwd attribute بواسطة أي مستخدم في الـ Domain يتمتع بصلاحيات "All Extended Rights" .
يمكن للمستخدمين والمجموعات الذين لديهم هذه الصلاحية قراءة أي confidential AD attributes بما في ذلك ms-MCS-AdmPwd.
ولأننا لا نريد أن يقوم أي شخص بخلاف الـ domain admin (و/ أو) HelpDesk بعرض كلمات مرور الكمبيوتر يتعين علينا تحديد قائمة المجموعات التي لديها هذه الصلاحيات.
باستخدام الامر Find-AdmPwdExtendedRightsيمكنك الحصول على قائمة الحسابات والمجموعات التي لها هذه الصلاحيات على الـ OU التي اسمها Desktops:
Find-AdmPwdExtendedRights -Identity Desktops | Format-Table ExtendedRightHolders
فقط مجموعة Domain Admins لديها صلاحية القراءة .
نحتاج إلى منح الصلاحيات لحسابات الكمبيوتر (computer accounts) لتعديل الـ attributes الخاصة بها (SELF) لأنه يتم تغيير قيم ms-MCS-AdmPwd و ms-MCS-AdmPwdExpirationTime ضمن حساب الكمبيوتر نفسه.
استخدم الأمر Set-AdmPwdComputerSelfPermission.
لمنح الصلاحية لأجهزة الكمبيوتر في Desktops OU لتحديث الـ extended attributes قم بتشغيل هذا الأمر:
Set-AdmPwdComputerSelfPermission -OrgUnit Desktops
منح الصلاحيات لعرض كلمة مرور LAPS
سنمنح المستخدمين والمجموعات صلاحيات لقراءة كلمات مرور الـ local administrator المخزنة في Active Directory.
على سبيل المثال تريد منح صلاحيات قراءة كلمة المرور لأعضاء مجموعة AdmPwd:
Set-AdmPwdReadPasswordPermission -OrgUnit Desktops -AllowedPrincipals AdmPwd
يمكن السماح لمجموعة معينة من المستخدمين بإعادة تعيين كلمات مرور الكمبيوتر (في هذا المثال ، نمنحها لنفس المجموعة - AdmPwd):
Set-AdmPwdResetPasswordPermission -OrgUnit Desktops -AllowedPrincipals AdmPwd
إعدادا LAPS Group Policy
أنشئ policy باسم Password_Administrador_Local باستخدام الأمر التالي:
Register-AdmPwdWithGPO -GpoIdentity Password_Administrador_Local
افتح Domain Policy Management Console
انتقل إلى الجروب التي انشأتها وافتحها للتعديل
وانتقل إلى Computer Configuration ثم Administrative Templates ثم LAPS.
قم بتغيير الاعدادات كما هو موضح أدناه:
- Enable local admin password management
Enabled
يتيح سياسة إدارة كلمة مرور LAPS
- Password Settings
Enabled
تحدد السياسة تعقيد كلمة المرور وطولها وعمرها.
- Complexity
الحروف الكبيرة ، الحروف الصغيرة ، الأرقام ، العروض الخاصة
- Length
12 حرفًا
- Age
30 يوم
- Name of administrator account to manage
Not Configured
افتراضيًا يتم تغيير كلمة مرور حسابات المسؤول المضمنة مع SID-500
- Do not allow password expiration time longer than required by policy
Enabled
اربط السياسة Password_Administrador_Local إلى Desktops OU.
تثبيت LAPS Agent على أجهزة الكمبيوتر في الـ Domain باستخدام GPO
سنقوم بتثبيت ملف MSI باستخدام ميزة تثبيت حزمة MSI في سياسات المجموعة (GPSI) ويمكنك استخدام أي طريقة أخرى.
قم بإنشاء مجلد مشترك على خادم ملفات (أو استخدم مجلد SYSVOL ) وانسخ ملفات msi لتوزيع LAPS فيه.
وقم بالتعديل عليها من Computer Configuration ثم Policies ثم Software Settings ثم Software Installation أنشئ task لتثبيت حزمة LAPS MSI.
ما عليك سوى ربط الـ policy بالـ OU الضرورية وبعد إعادة التشغيل سيتم تثبيت LAPS client على جميع أجهزة الكمبيوتر في الـ OU.
تأكد من ظهور Local admin password management solution في الـ Control Panel.
عندما تغير الأداة المساعدة LAPS كلمة مرور local administrator يتم تسجيل event في Application log باالشكل (Event ID:12, Source: AdmPwd).
يتم أيضًا تسجيل event حفظ كلمة المرور في AD على الشكل (Event ID:13, Source: AdmPwd).
هذه هي الطريقة التي تظهر بها الـ attributes الجديدة في علامة التبويب Attribute Editor في AD computer properties .
استخدام LAPS لعرض كلمة مرور الـ Administrator
إذا قمت بتشغيل الأداة وتحديد اسم الكمبيوتر يمكنك عرض كلمة مرور local administrator وتاريخ انتهاء صلاحيتها.
يمكن تعيين تاريخ انتهاء صلاحية كلمة المرور يدويًا أو ترك هذا الحقل فارغًا ومن خلال النقر فوق " Set " أن كلمة المرور قد انتهت صلاحيتها بالفعل.
يمكن أيضًا الحصول على كلمة مرور الكمبيوتر باستخدام PowerShell:
Get-AdmPwdPassword -ComputerName <computername>
يمكن إنشاء كلمات مرور جديدة لجميع أجهزة الكمبيوتر في الـ OU باستخدام أمر PowerShell واحد.
للقيام بذلك استخدم Get-ADComputer cmdlet:
Get-ADComputer -Filter * -SearchBase “OU=Desktops,OU=NY,OU=USA,DC=woshub,DC=com” | Reset-AdmPwdPassword -ComputerName {$_.Name}
Similarly, you can display a list of current passwords for all computers in the OU:
يمكن عرض قائمة كلمات المرور الحالية لجميع أجهزة الكمبيوتر في الـ OU:
Get-ADComputer -Filter * -SearchBase “OU=Desktops,OU=NY,OU=USA,DC=woshub,DC=com” | Get-AdmPwdPassword -ComputerName {$_.Name}