Active Directory: الدليل الشامل للبنية وآلية العمل والمشاكل الشائعة في Windows Server
آخر تحديث: 2025 | الفئة: Windows Server – Active Directory – IT Administration
Active Directory — الإدارة المركزية للهويات والأجهزة والسياسات في Windows Server
- ما هو Active Directory؟ لماذا وُجد؟
- Kerberos — آلية المصادقة بالتفصيل
- LDAP — كيف تُقرأ البيانات وتُكتب؟
- البنية الهرمية: Forest → Tree → Domain → OU → Object
- علاقات الثقة (Trust Relationships)
- Global Catalog — الفهرس الموسّع
- Sites وSubnets — إدارة الفروع والمواقع
- قاعدة البيانات NTDS.dit والـ Partitions
- الـ Replication — كيف تتزامن البيانات؟
- FSMO Roles — الأدوار الفردية الخمسة
- Group Policy (GPO) — التطبيق والترتيب
- أدوات الإدارة
- أوامر PowerShell الشاملة
- الأمان وإدارة الصلاحيات
- أفضل الممارسات
- المشاكل الشائعة وحلولها
- الأسئلة الشائعة (FAQ)
- الخاتمة
- مقالات مرتبطة
1. ما هو Active Directory؟ لماذا وُجد؟
قبل أن نتحدث عن Active Directory، لنفهم المشكلة التي جاء ليحلها.
في بيئة Workgroup التقليدية، كل جهاز يدير حساباته المحلية بشكل مستقل. إذا كان لديك 200 موظف، فلديك 200 قاعدة بيانات مستقلة لكلمات المرور. تريد تغيير سياسة كلمة المرور؟ عليك الذهاب لكل جهاز على حدة. تريد مشاركة مجلد؟ عليك إنشاء نفس الحساب على كل خادم. هذا كابوس إداري حقيقي.
Active Directory ظهر مع Windows 2000 Server ليُنهي هذا الكابوس — قاعدة بيانات مركزية واحدة تُدار من موقع واحد وتُطبَّق على كل الأجهزة. المستخدم يُنشئ مرة واحدة ويصل لكل الموارد المصرَّح له بها في كل الشبكة.
| الجانب | Workgroup | Active Directory Domain |
|---|---|---|
| إدارة الحسابات | محلية على كل جهاز | مركزية من DC واحد |
| السياسات | يدوياً على كل جهاز | Group Policy تُطبَّق تلقائياً |
| المصادقة | محلية لكل جهاز | Single Sign-On عبر Kerberos |
| الحد الأقصى للأجهزة | 20 جهاز (عملياً) | آلاف الأجهزة |
| الأمان | هش — لا مركزية | مركزي مع Auditing وTier Model |
2. Kerberos — آلية المصادقة بالتفصيل
Kerberos هو بروتوكول المصادقة الافتراضي في Active Directory منذ Windows 2000. اسمه مأخوذ من الكلب الأسطوري ذي الرؤوس الثلاثة الذي يحرس بوابة الجحيم — وهو مناسب جداً لأن Kerberos يعتمد على ثلاثة أطراف للمصادقة.
المبدأ الأساسي: بدون إرسال كلمة المرور على الشبكة
الفكرة الجوهرية في Kerberos هي أن كلمة المرور لا تُرسَل على الشبكة أبداً — بدلاً من ذلك يُستخدم نظام "التذاكر" (Tickets).
خطوات عملية Kerberos:
المستخدم يُرسل طلباً مشفراً لخادم KDC (Key Distribution Center) — وهو الـ Domain Controller. الطلب يحتوي اسم المستخدم وطابع زمني مُشفَّر بهاش كلمة مروره.
الـ KDC يُصدر Ticket Granting Ticket (TGT) — تذكرة رئيسية مُشفَّرة صالحة لمدة 10 ساعات افتراضياً. هذه التذكرة تُثبت هوية المستخدم دون الحاجة لإعادة إدخال كلمة المرور.
عندما يريد المستخدم الوصول لمورد (خادم ملفات، قاعدة بيانات...)، يُرسل TGT الخاص به للـ KDC طالباً تذكرة خاصة بهذه الخدمة.
الـ KDC يُصدر Service Ticket مُشفَّرة بمفتاح الخادم المطلوب — المستخدم لا يستطيع فك تشفيرها، لكن الخادم يستطيع.
المستخدم يُرسل Service Ticket للخادم. الخادم يفك تشفيرها ويتحقق منها — يُسمح بالوصول بدون الحاجة للتواصل مع الـ DC مرة أخرى.
3. LDAP — كيف تُقرأ البيانات وتُكتب؟
إذا كان Kerberos يُجيب على سؤال "من أنت؟"، فإن LDAP (Lightweight Directory Access Protocol) يُجيب على سؤال "ما الذي تريده من الدليل؟"
LDAP هو البروتوكول الذي تستخدمه التطبيقات للتحدث مع Active Directory — قراءة بيانات المستخدمين، التحقق من عضوية المجموعات، البحث عن موارد الشبكة.
بنية Distinguished Name (DN)
كل كائن في AD له عنوان LDAP فريد يُسمى Distinguished Name. مثال:
- CN (Common Name): اسم الكائن نفسه.
- OU (Organizational Unit): الوحدة التنظيمية التي يقع فيها.
- DC (Domain Component): مكونات اسم الدومين.
المنافذ والأمان
| البروتوكول | المنفذ | التشفير | الاستخدام الموصى به |
|---|---|---|---|
| LDAP | 389 | بدون تشفير | تجنّب في الإنتاج |
| LDAPS | 636 | TLS/SSL | الموصى به دائماً |
| LDAP+STARTTLS | 389 | TLS مُرقَّى | بديل مقبول |
| Global Catalog LDAP | 3268 / 3269 | بدون / TLS | للبحث عبر الـ Forest |
4. البنية الهرمية: Forest → Tree → Domain → OU → Object
الهيكل الهرمي: Forest → Tree → Domain → OU → Objects
الغابة (Forest) — حدود الأمان
Forest هي الحدود الأمنية الأعلى في AD. كل ما بداخل الغابة يشترك في:
- Schema واحد: تعريفات جميع الكائنات والخصائص — يُطبَّق على الـ Forest كاملاً.
- Configuration Partition مشتركة: إعدادات البنية التحتية للـ Forest.
- Global Catalog: فهرس موسّع لكل كائنات الـ Forest.
- Transitive Trust تلقائية: الدومينات داخل نفس الـ Forest تثق ببعضها تلقائياً.
متى تحتاج Forest متعددة؟ فقط عندما تريد فصلاً أمنياً كاملاً — مثلاً شركة استحوذت على شركة أخرى تريد الاحتفاظ باستقلاليتها الكاملة.
الشجرة (Tree) — فضاء اسمي متسلسل
Tree هي مجموعة دومينات تحت فضاء اسمي متسلسل (Contiguous Namespace). مثلاً:
├── jordan.computargi.local
└── uae.computargi.local
كل Domain Child يثق تلقائياً بـ Parent Domain عبر Two-Way Transitive Trust. هذا يسمح لمستخدم في jordan.computargi.local الوصول لموارد في uae.computargi.local إذا أُذن له.
الدومين (Domain) — وحدة الإدارة
الدومين هو الوحدة الإدارية الأساسية — له سياسة كلمات مرور مستقلة، Domain Controllers خاصة به، وPartition خاصة في NTDS.dit. أي تغيير في Domain Partition لا يُنسَخ لدومينات أخرى في الـ Forest.
متى تُنشئ دومينات متعددة؟ في معظم الحالات لا تحتاجها. الدافع الحقيقي لدومينات متعددة: سياسة كلمات مرور مختلفة جداً (يمكن حلها الآن بـ Fine-Grained Password Policy)، أو تشريعات قانونية تفصل بيانات دولتين، أو بيئات Legacy.
الوحدة التنظيمية (OU) — التنظيم والتفويض
OU ليست مجرد "مجلد" لتنظيم الكائنات — لها وظيفتان رئيسيتان:
- تطبيق Group Policy: أي GPO مُرتبط بـ OU يُطبَّق على جميع الكائنات بداخلها.
- تفويض الإدارة (Delegation): يمكن منح شخص صلاحية إدارة OU بعينها دون إعطائه صلاحيات على الدومين كاملاً. مثلاً: مدير قسم HR يستطيع إنشاء/حذف مستخدمي OU=HR فقط.
├── OU=Users
│ ├── OU=IT
│ ├── OU=Finance
│ └── OU=HR
├── OU=Computers
│ ├── OU=Workstations
│ └── OU=Servers
└── OU=Groups
الكائنات (Objects) والخصائص (Attributes)
كل عنصر في AD هو كائن — له نوع (Class) يُعرَّف في Schema، وخصائص (Attributes) تُخزَّن في NTDS.dit. أنواع الكائنات الشائعة:
| نوع الكائن | Class Name | أهم الخصائص |
|---|---|---|
| مستخدم | user | sAMAccountName, UPN, mail, memberOf |
| جهاز | computer | dNSHostName, operatingSystem, lastLogon |
| مجموعة | group | groupType, member, managedBy |
| طابعة | printQueue | printerName, serverName, location |
5. علاقات الثقة (Trust Relationships)
Trust هي الآلية التي تسمح لمستخدمي دومين بالوصول لموارد دومين آخر. فهم أنواع الـ Trust ضروري لتصميم بيئات متعددة الدومينات.
| نوع الـ Trust | الاتجاه | تلقائي؟ | متى تستخدمه؟ |
|---|---|---|---|
| Parent-Child | Two-Way Transitive | نعم | دومينات داخل نفس الـ Tree |
| Tree-Root | Two-Way Transitive | نعم | دومينات في Trees مختلفة بنفس الـ Forest |
| Shortcut | One/Two-Way | يدوي | تحسين أداء المصادقة بين دومينات بعيدة |
| External | One/Two-Way Non-Transitive | يدوي | الوصول لـ Forest أخرى أو Windows NT |
| Forest Trust | Two-Way Transitive | يدوي | ربط Forests مختلفة (مثلاً بعد الاندماج) |
6. Global Catalog — الفهرس الموسّع
Global Catalog (GC) هو خادم DC خاص يُخزَّن عليه نسخة جزئية من كائنات جميع الدومينات في الـ Forest — ليس فقط دومينه الخاص.
لماذا نحتاج Global Catalog؟
عند تسجيل دخول مستخدم في دومين متعدد، يحتاج الـ DC للتحقق من عضوية المجموعات في دومينات أخرى لتطبيق الصلاحيات الصحيحة. بدون GC، سيحتاج الاتصال بكل DC في كل دومين — بطيء جداً. مع GC: استعلام واحد يُعطي الصورة الكاملة.
يعمل GC على منفذ 3268 (LDAP) و3269 (LDAPS).
في الـ Forest التي تحتوي دومين واحد فقط: كل DC هو تلقائياً GC. في الـ Forests متعددة الدومينات: فعّل GC على DC في كل موقع جغرافي.
إدارة Global Catalog يحتاج Admin
التحقق من GC Servers وإدارتها.
التحقق من GC Servers في الـ Forest
Get-ADDomainController -Filter {IsGlobalCatalog -eq $true} | Select Name,Siteالتحقق إذا كان DC محدد هو GC
Get-ADDomainController -Identity "DC01" | Select Name,IsGlobalCatalog
7. Sites وSubnets — إدارة الفروع والمواقع
AD Sites هي تمثيل منطقي للمواقع الجغرافية في شبكتك. تُستخدم لـ:
- التحكم في الـ Replication: تزامن بين المواقع يحدث وفق جدول محدد لتوفير Bandwidth.
- توجيه المستخدمين للـ DC الأقرب: مستخدم في دبي يُصادَق عبر DC دبي لا DC الرياض.
- تحسين أداء تسجيل الدخول: GPO وKerberos يُوجَّهان للـ DC في نفس الـ Site.
مكونات Sites:
- Site: اسم منطقي للموقع (مثل: Dubai-Site).
- Subnet: عنوان IP المرتبط بالموقع (مثل: 192.168.10.0/24 → Dubai-Site).
- Site Link: يُعرّف التكلفة (Cost) والجدول الزمني للـ Replication بين موقعَين.
- Site Link Bridge: يُتيح الـ Replication عبر مواقع متعددة.
إدارة Sites وSubnets يحتاج Admin
الاستعلام عن بنية Sites في AD.
عرض جميع Sites
Get-ADReplicationSite -Filter *
عرض Subnets المرتبطة بـ Sites
Get-ADReplicationSubnet -Filter * | Select Name,Site
عرض Site Links
Get-ADReplicationSiteLink -Filter * | Select Name,Cost,ReplicationFrequencyInMinutes
8. قاعدة البيانات NTDS.dit والـ Partitions
NTDS.dit هي ملف قاعدة البيانات الفعلي لـ Active Directory — تقنياً هي قاعدة بيانات ESE (Extensible Storage Engine). تُخزَّن في:
تنقسم إلى أربعة Partitions:
- Schema Partition: يحتوي تعريفات Class وAttribute لجميع الكائنات. مشترك بين الـ Forest كاملاً. لا يُعدَّل إلا نادراً (عند تثبيت Exchange مثلاً).
- Configuration Partition: إعدادات الـ Forest: المواقع، Site Links، FSMO Roles، الـ Services. مشترك بين الـ Forest كاملاً.
- Domain Partition: المستخدمون، الأجهزة، المجموعات، الـ GPOs لدومين محدد. يُنسَخ فقط بين DCs نفس الدومين.
- Application Partition: اختيارية — تُستخدم لـ DNS Zones المُدمجة مع AD. يمكن تحديد أي DCs تأخذ نسخة منها.
النسخ الاحتياطي والتشخيص يحتاج Admin
أوامر أساسية للنسخ الاحتياطي وفحص NTDS.
أخذ System State Backup (يشمل NTDS.dit)
wbadmin start systemstatebackup -backuptarget:D:
عرض النسخ الاحتياطية المتاحة
wbadmin get versions
فحص سلامة NTDS.dit (في DSRM Mode)
ntdsutil "activate instance ntds" "files" "integrity" quit quit
معرفة حجم وموقع NTDS.dit
ntdsutil "activate instance ntds" "files" "info" quit quit
9. الـ Replication — كيف تتزامن البيانات؟
AD يعتمد على نموذج Multi-Master Replication — أي DC يمكنه كتابة التغييرات، ثم تُنشر لباقي الـ DCs. هذا يختلف عن نموذج Master-Slave حيث الكتابة على خادم واحد فقط.
آلية الـ Replication بالتفصيل
- USN (Update Sequence Number): كل تغيير على أي DC يحصل على رقم تسلسلي متزايد. كل DC يتذكر آخر USN استلمه من كل DC آخر — يطلب فقط التغييرات الجديدة.
- Originating Update vs Replicated Update: التغيير الأصلي يحدث مرة واحدة، ثم ينتشر كـ Replicated Update لباقي DCs — لا يُعاد حساب USN في كل مرحلة.
- KCC (Knowledge Consistency Checker): يُنشئ تلقائياً Replication Topology مثالية بين الـ DCs — يتأكد أن أي DC على بُعد خطوتَين maximum من أي DC آخر داخل الـ Site.
- Intra-Site Replication: داخل نفس الـ Site: يحدث في غضون 15 ثانية من أي تغيير.
- Inter-Site Replication: بين المواقع: يحدث وفق جدول Site Link — افتراضياً كل 180 دقيقة (3 ساعات)، وعادةً خلال ساعة في السيناريوهات العملية.
حل تعارضات الكتابة
ماذا يحدث لو عدّل مسؤولان نفس الكائن في DCs مختلفَين في نفس الوقت؟ AD يحل هذا بـ:
- Attribute-level Replication: الـ Replication يعمل على مستوى الـ Attribute لا الكائن كاملاً — فقط الـ Attribute المُغيَّر يُنسَخ.
- Last Write Wins: إذا تعارض نفس الـ Attribute، التغيير الأحدث زمنياً يفوز.
- Version Number: إذا تساوى الوقت، الـ Attribute ذو الـ Version Number الأعلى يفوز.
إدارة وتشخيص الـ Replication يحتاج Admin
أوامر شاملة لتشخيص مشاكل الـ Replication.
عرض حالة Replication لجميع الـ DCs
repadmin /showrepl
ملخص سريع — يُظهر الأخطاء فقط
repadmin /replsummary
إجبار Replication فوري مع جميع Partners
repadmin /syncall /AdeP
إعادة بناء Replication Topology
repadmin /kcc
فحص شامل لـ Domain Controller
dcdiag /v
اختبار الاتصال بين DC محدد وباقي الـ DCs
dcdiag /test:connectivity /s:DC01
10. FSMO Roles — الأدوار الفردية الخمسة
رغم أن AD يعتمد Multi-Master Replication، هناك 5 عمليات تتطلب قراراً فردياً — لا يمكن لـ DCَين تنفيذها في نفس الوقت. لهذا تُسند لـ DCs محددة تُسمى FSMO Roles (Flexible Single Master Operations).
أدوار مستوى الـ Forest (واحدة لكل Forest)
1. Schema Master
المسؤول الوحيد عن تعديل Schema — إضافة Classes أو Attributes جديدة. يُعدَّل نادراً جداً (عند تثبيت Exchange أو ترقية Forest Functional Level). إذا كان غير متاح، لا يمكن تعديل Schema لكن AD يعمل بشكل طبيعي.
2. Domain Naming Master
يتحكم في إضافة وحذف الدومينات من الـ Forest. ضروري فقط عند إضافة/حذف دومين — إذا كان غير متاح، لا يمكن تنفيذ هذه العمليات لكن بقية AD تعمل طبيعياً.
أدوار مستوى الـ Domain (واحدة لكل دومين)
3. PDC Emulator — الأهم والأكثر نشاطاً
يؤدي وظائف متعددة وحساسة:
- مرجع الوقت NTP للدومين — يحتاج مزامنة دقيقة مع مصدر خارجي.
- معالجة قفل الحسابات — عند فشل تسجيل الدخول، يُرسَل لـ PDC Emulator للتحقق.
- تطبيق Group Policy — التغييرات في GPO تُكتَب على PDC Emulator أولاً.
- توافق Windows NT — Legacy clients تتحدث مع PDC Emulator.
4. RID Master (Relative ID Master)
كل كائن في AD له SID (Security Identifier) فريد = Domain SID + RID. RID Master يُوزّع "مجمعات" من أرقام RID على كل DC (كل مجموعة 500 رقم افتراضياً). إذا نفدت أرقام RID من DC ولم يستطع الحصول على مجموعة جديدة — لا يمكن إنشاء كائنات جديدة.
5. Infrastructure Master
يُحدّث المراجع عبر الدومينات — عندما تكون مجموعة في دومين تضم مستخدمين من دومينات أخرى. يتحقق أن هذه المراجع محدَّثة. ملاحظة مهمة: إذا كان كل DC في دومينك هو Global Catalog، لا تضع Infrastructure Master على Global Catalog Server (وإلا لن يعمل بشكل صحيح في بيئات متعددة الدومينات).
إدارة FSMO Roles يحتاج Admin
التحقق من مواقع الأدوار ونقلها عند الحاجة.
عرض جميع FSMO Roles ومواقعها
netdom query fsmo
نقل PDC Emulator لـ DC آخر
Move-ADDirectoryServerOperationMasterRole -Identity "DC02" -OperationMasterRole PDCEmulator
نقل جميع FSMO Roles لـ DC آخر دفعة واحدة
Move-ADDirectoryServerOperationMasterRole -Identity "DC02" -OperationMasterRole SchemaMaster,DomainNamingMaster,PDCEmulator,RIDMaster,InfrastructureMaster
Seize دور بالقوة (عند فقدان DC صاحب الدور نهائياً)
ntdsutil "activate instance ntds" "roles" "connections" "connect to server DC02" quit "seize PDC" quit quit
11. Group Policy (GPO) — كيف تُطبَّق السياسات؟
Group Policy هي الأداة التي تُتيح تطبيق آلاف الإعدادات على المستخدمين والأجهزة بشكل مركزي وتلقائي — من خلفية سطح المكتب حتى إعدادات الأمان وتثبيت التطبيقات.
ترتيب تطبيق GPO — LSDOU
GPOs تُطبَّق بترتيب محدد يُعرَّف بـ LSDOU:
| الترتيب | المستوى | ما يغطيه | الأولوية |
|---|---|---|---|
| L | Local | الجهاز نفسه | الأضعف |
| S | Site | موقع AD | ↑ |
| D | Domain | الدومين كاملاً | ↑↑ |
| OU | Organizational Unit | OU محددة | الأقوى |
الـ GPO الأخير يفوز — أي OU GPO يتجاوز Domain GPO الذي يتجاوز Site GPO. لكن Enforced GPO يكسر هذه القاعدة ولا يمكن لأي GPO تحته تجاوزه.
إدارة وتشخيص GPO يحتاج Admin
أوامر إدارة Group Policy وتشخيص تطبيقها.
تطبيق Group Policy فوراً (Computer وUser)
gpupdate /force
تطبيق GPO للمستخدم فقط
gpupdate /target:user /force
ملخص السياسات المُطبَّقة على الجهاز الحالي
gpresult /r
تقرير HTML مفصّل بكل GPOs
gpresult /h C:\Temp\gp_report.html
عرض جميع GPOs في الدومين
Get-GPO -All | Select DisplayName,GpoStatus,CreationTime
إنشاء GPO جديد وربطه بـ OU
New-GPO -Name "IT-Security-Policy" | New-GPLink -Target "OU=IT,DC=computargi,DC=local"
12. أدوات إدارة Active Directory
| الأداة | الاستخدام | الوصول |
|---|---|---|
| Active Directory Users & Computers | إدارة المستخدمين والمجموعات والأجهزة والـ OUs | dsa.msc |
| Group Policy Management | إنشاء وإدارة وتشخيص GPOs | gpmc.msc |
| AD Sites and Services | إدارة Sites وSubnets والـ Replication | dssite.msc |
| AD Domains and Trusts | إدارة علاقات الثقة والـ Functional Levels | domain.msc |
| Active Directory Administrative Center | AD Recycle Bin وFine-grained Passwords | dsac.exe |
| ADSI Edit | تعديل Attributes مباشرة — بحذر شديد | adsiedit.msc |
| LDP.exe | استعلامات LDAP مباشرة للتشخيص | ldp.exe |
13. أوامر PowerShell الشاملة
تحضير البيئة يحتاج Admin
استيراد وحدة AD قبل أي أمر.
استيراد وحدة Active Directory
Import-Module ActiveDirectory
عرض جميع الأوامر المتاحة في الوحدة
Get-Command -Module ActiveDirectory
إدارة المستخدمين يحتاج Admin
العمليات الأساسية على حسابات المستخدمين.
عرض مستخدمين في OU محددة
Get-ADUser -Filter * -SearchBase "OU=IT,DC=computargi,DC=local" | Select Name,Department,Enabled
عرض معلومات كاملة لمستخدم
Get-ADUser -Identity "ahasn" -Properties *
إنشاء مستخدم جديد
New-ADUser -Name "Ali Hasan" -SamAccountName "ahasn" -UserPrincipalName "ahasn@computargi.local" -Path "OU=IT,DC=computargi,DC=local" -AccountPassword (ConvertTo-SecureString "P@ss123!" -AsPlainText -Force) -Enabled $true
تعطيل حساب
Disable-ADAccount -Identity "ahasn"
تفعيل حساب
Enable-ADAccount -Identity "ahasn"
إعادة تعيين كلمة مرور
Set-ADAccountPassword -Identity "ahasn" -Reset -NewPassword (ConvertTo-SecureString "NewP@ss123" -AsPlainText -Force)
حذف مستخدم
Remove-ADUser -Identity "ahasn" -Confirm:$false
عرض المستخدمين غير النشطين منذ 90 يوم
Get-ADUser -Filter {LastLogonDate -lt (Get-Date).AddDays(-90)} -Properties LastLogonDate | Select Name,LastLogonDateإدارة المجموعات يحتاج Admin
إدارة Security Groups وDistribution Groups.
عرض جميع المجموعات
Get-ADGroup -Filter * | Select Name,GroupCategory,GroupScope
عرض أعضاء مجموعة
Get-ADGroupMember -Identity "IT-Admins" -Recursive | Select Name,ObjectClass
إضافة مستخدم لمجموعة
Add-ADGroupMember -Identity "IT-Admins" -Members "ahasn"
إزالة مستخدم من مجموعة
Remove-ADGroupMember -Identity "IT-Admins" -Members "ahasn" -Confirm:$false
إدارة الأجهزة والـ OU يحتاج Admin
إدارة كائنات الأجهزة والوحدات التنظيمية.
عرض جميع الأجهزة في الدومين
Get-ADComputer -Filter * -Properties OperatingSystem | Select Name,OperatingSystem,LastLogonDate
إنشاء OU جديدة
New-ADOrganizationalUnit -Name "Finance" -Path "DC=computargi,DC=local" -ProtectedFromAccidentalDeletion $true
نقل كائن لـ OU أخرى
Move-ADObject -Identity "CN=Ali Hasan,OU=IT,DC=computargi,DC=local" -TargetPath "OU=Finance,DC=computargi,DC=local"
14. الأمان وإدارة الصلاحيات
AD هو أكثر هدف جذباً للمهاجمين في البنية التحتية لـ Windows — من يسيطر على AD يسيطر على الشبكة كاملاً. إليك أهم ممارسات الأمان:
Tier Model — الفصل الهرمي للصلاحيات
النموذج الأكثر أهمية في أمان AD:
- Tier 0 — Domain Controllers: أعلى مستوى. فقط مسؤولو AD. لا يجوز لأي شخص Tier 1 أو 2 تسجيل الدخول هنا.
- Tier 1 — Servers: خوادم التطبيقات والبيانات. مسؤولو الخوادم فقط.
- Tier 2 — Workstations: أجهزة المستخدمين. فنيو الدعم الفني فقط.
القاعدة الذهبية: لا يسجّل دخوله لـ Tier أدنى من مستواه. مسؤول Tier 0 لا يُستخدَم حسابه على Workstation عادية أبداً.
Protected Users Security Group
مجموعة خاصة في AD (Windows Server 2012 R2+) — أي مستخدم فيها يخضع لقيود أمنية إضافية تلقائياً:
- لا يُسمح بـ NTLM Authentication — Kerberos فقط.
- لا DES أو RC4 في Kerberos — AES فقط.
- لا Credential Caching — لا تُخزَّن بيانات الاعتماد محلياً.
- TGT مدته 4 ساعات فقط (بدلاً من 10).
فحص وتحسين الأمان يحتاج Admin
أوامر لتشخيص ثغرات الأمان الشائعة.
عرض حسابات Domain Admins
Get-ADGroupMember "Domain Admins" | Select Name,SamAccountName
البحث عن حسابات بكلمات مرور لا تنتهي صلاحيتها
Get-ADUser -Filter {PasswordNeverExpires -eq $true} -Properties PasswordNeverExpires | Select Name,SamAccountNameالبحث عن حسابات لم تُستخدَم منذ 90 يوم
Search-ADAccount -AccountInactive -TimeSpan 90.00:00:00 -UsersOnly | Select Name,LastLogonDate
إضافة حساب لـ Protected Users Group
Add-ADGroupMember -Identity "Protected Users" -Members "admin_user"
15. أفضل الممارسات
| الممارسة | الفائدة | التطبيق العملي |
|---|---|---|
| DC ثانٍ على الأقل | استمرارية الخدمة | DC ثانٍ في موقع جغرافي مختلف |
| فصل OUs بشكل منطقي | سهولة GPO والإدارة | OU لكل قسم، OU منفصلة للـ Servers |
| System State Backup | استعادة الدومين | يومياً على الأقل |
| تطبيق GPO على OU تجريبية أولاً | تجنّب إخراج المستخدمين | OU Test بمستخدمين تجريبيين |
| Monitoring وEvent Logs | كشف الاختراقات مبكراً | مراقبة Event ID 4624, 4625, 4740, 4672 |
| رفع Forest/Domain Functional Level | مزايا أمنية حديثة | بعد إزالة جميع DCs القديمة |
16. المشاكل الشائعة وحلولها
1. فشل الـ Replication
أكثر مشاكل AD خطورةً — يُسبّب تعارضاً في البيانات بين DCs.
الأسباب الشائعة: مشاكل DNS، فرق في الوقت، انقطاع الشبكة، Lingering Objects.
تشخيص Replication يحتاج Admin
الأوامر الضرورية عند مشاكل التزامن.
ملخص حالة Replication
repadmin /replsummary
التفاصيل الكاملة مع الأخطاء
repadmin /showrepl * /errorsonly
إجبار مزامنة فورية
repadmin /syncall /AdeP
2. مشاكل DNS
قاعدة: 80% من مشاكل AD سببها DNS. دائماً ابدأ بـ DNS.
تشخيص DNS يحتاج Admin
فحص DNS المرتبط بـ AD.
فحص شامل لـ DNS
dcdiag /test:dns /v
التحقق من SRV Records
nslookup -type=SRV _ldap._tcp.computargi.local
إعادة تسجيل DNS Records
ipconfig /registerdns
إعادة تسجيل Netlogon SRV Records
nltest /dsregdns
3. قفل الحسابات المتكرر
تشخيص Account Lockout يحتاج Admin
تحديد مصدر قفل الحسابات.
البحث عن أحداث القفل في Event Log
wevtutil qe Security /q:"*[System[EventID=4740]]" /c:10 /f:text
عرض معلومات قفل حساب
Get-ADUser -Identity "ahasn" -Properties LockedOut,BadLogonCount,LastBadPasswordAttempt
فتح حساب مقفول
Unlock-ADAccount -Identity "ahasn"
4. بطء تسجيل الدخول
تشخيص بطء الدخول يحتاج Admin
فحص Kerberos وGroup Policy.
عرض Kerberos Tickets الحالية
klist
مسح الـ Tickets لإعادة المصادقة
klist purge
التحقق من توفر PDC Emulator
nltest /sc_verify:computargi.local
17. الأسئلة الشائعة (FAQ)
18. الخاتمة
Active Directory ليس مجرد "خادم مستخدمين" — هو نظام متكامل يضم بروتوكولات مصادقة (Kerberos)، دليل بيانات (LDAP)، قاعدة بيانات (NTDS.dit)، آلية تزامن (Replication)، نظام سياسات (GPO)، وهيكل هرمي يمتد من الغابة حتى الكائن الفردي.
فهم كل طبقة من هذه الطبقات يُمكّنك من تصميم بنية تحتية محكمة، تشخيص المشاكل قبل أن تتفاقم، والرد على الحوادث الأمنية بثقة وسرعة. ابدأ بـ Lab على Proxmox أو Hyper-V لتطبيق ما تعلمته — لا شيء يعوض التجربة العملية.
19. مقالات مرتبطة
© 2025 – جميع الحقوق محفوظة | كمبيوترجي