Active Directory شرح كامل: من الصفر حتى الاحتراف | Windows Server

Active Directory: الدليل الشامل للبنية وآلية العمل والمشاكل الشائعة في Windows Server

آخر تحديث: 2025 | الفئة: Windows Server – Active Directory – IT Administration

Active Directory في بيئة Windows Server

Active Directory — الإدارة المركزية للهويات والأجهزة والسياسات في Windows Server

📚 سلسلة Windows Server على كمبيوترجي:
⚠️ ملاحظة: هذا المقال موجّه لمسؤولي Windows Server ومهندسي الشبكات. يشمل شرحاً معمّقاً من المستوى المبتدئ حتى المتقدم مع أوامر PowerShell وCMD جاهزة للتطبيق.
📋 جدول المحتويات
  1. ما هو Active Directory؟ لماذا وُجد؟
  2. Kerberos — آلية المصادقة بالتفصيل
  3. LDAP — كيف تُقرأ البيانات وتُكتب؟
  4. البنية الهرمية: Forest → Tree → Domain → OU → Object
  5. علاقات الثقة (Trust Relationships)
  6. Global Catalog — الفهرس الموسّع
  7. Sites وSubnets — إدارة الفروع والمواقع
  8. قاعدة البيانات NTDS.dit والـ Partitions
  9. الـ Replication — كيف تتزامن البيانات؟
  10. FSMO Roles — الأدوار الفردية الخمسة
  11. Group Policy (GPO) — التطبيق والترتيب
  12. أدوات الإدارة
  13. أوامر PowerShell الشاملة
  14. الأمان وإدارة الصلاحيات
  15. أفضل الممارسات
  16. المشاكل الشائعة وحلولها
  17. الأسئلة الشائعة (FAQ)
  18. الخاتمة
  19. مقالات مرتبطة

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:

1
AS-REQ — طلب التذكرة الأولى

المستخدم يُرسل طلباً مشفراً لخادم KDC (Key Distribution Center) — وهو الـ Domain Controller. الطلب يحتوي اسم المستخدم وطابع زمني مُشفَّر بهاش كلمة مروره.

2
AS-REP — إصدار TGT

الـ KDC يُصدر Ticket Granting Ticket (TGT) — تذكرة رئيسية مُشفَّرة صالحة لمدة 10 ساعات افتراضياً. هذه التذكرة تُثبت هوية المستخدم دون الحاجة لإعادة إدخال كلمة المرور.

3
TGS-REQ — طلب الوصول لخدمة

عندما يريد المستخدم الوصول لمورد (خادم ملفات، قاعدة بيانات...)، يُرسل TGT الخاص به للـ KDC طالباً تذكرة خاصة بهذه الخدمة.

4
TGS-REP — إصدار Service Ticket

الـ KDC يُصدر Service Ticket مُشفَّرة بمفتاح الخادم المطلوب — المستخدم لا يستطيع فك تشفيرها، لكن الخادم يستطيع.

5
AP-REQ — الوصول للخدمة

المستخدم يُرسل Service Ticket للخادم. الخادم يفك تشفيرها ويتحقق منها — يُسمح بالوصول بدون الحاجة للتواصل مع الـ DC مرة أخرى.

🚨 ثغرة Kerberoasting: المهاجمون يطلبون Service Tickets لحسابات الخدمة ثم يحاولون فك تشفيرها offline بالـ Brute Force. الحل: استخدم Managed Service Accounts (MSA) بدلاً من حسابات الخدمة العادية، وتأكد من استخدام كلمات مرور طويلة ومعقدة جداً لحسابات الخدمة.
💡 شرط أساسي لـ Kerberos — توقيت الوقت: Kerberos يرفض التذاكر إذا كان الفرق الزمني بين الجهاز والـ DC أكثر من 5 دقائق. لهذا السبب مزامنة الوقت عبر NTP في Domain ضرورة قصوى، وهذا أيضاً أحد أسباب تعيين PDC Emulator كمرجع NTP للشبكة.

3. LDAP — كيف تُقرأ البيانات وتُكتب؟

إذا كان Kerberos يُجيب على سؤال "من أنت؟"، فإن LDAP (Lightweight Directory Access Protocol) يُجيب على سؤال "ما الذي تريده من الدليل؟"

LDAP هو البروتوكول الذي تستخدمه التطبيقات للتحدث مع Active Directory — قراءة بيانات المستخدمين، التحقق من عضوية المجموعات، البحث عن موارد الشبكة.

بنية Distinguished Name (DN)

كل كائن في AD له عنوان LDAP فريد يُسمى Distinguished Name. مثال:

CN=Ali Hasan,OU=IT,DC=computargi,DC=local
  • 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

الهيكل الهرمي في Active Directory: Forest إلى Domain إلى OU إلى Objects

الهيكل الهرمي: Forest → Tree → Domain → OU → Objects

الغابة (Forest) — حدود الأمان

Forest هي الحدود الأمنية الأعلى في AD. كل ما بداخل الغابة يشترك في:

  • Schema واحد: تعريفات جميع الكائنات والخصائص — يُطبَّق على الـ Forest كاملاً.
  • Configuration Partition مشتركة: إعدادات البنية التحتية للـ Forest.
  • Global Catalog: فهرس موسّع لكل كائنات الـ Forest.
  • Transitive Trust تلقائية: الدومينات داخل نفس الـ Forest تثق ببعضها تلقائياً.

متى تحتاج Forest متعددة؟ فقط عندما تريد فصلاً أمنياً كاملاً — مثلاً شركة استحوذت على شركة أخرى تريد الاحتفاظ باستقلاليتها الكاملة.

الشجرة (Tree) — فضاء اسمي متسلسل

Tree هي مجموعة دومينات تحت فضاء اسمي متسلسل (Contiguous Namespace). مثلاً:

computargi.local ← Root Domain
├── 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 فقط.
computargi.local
├── 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 أهم الخصائص
مستخدمusersAMAccountName, UPN, mail, memberOf
جهازcomputerdNSHostName, operatingSystem, lastLogon
مجموعةgroupgroupType, member, managedBy
طابعةprintQueueprinterName, 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 مختلفة (مثلاً بعد الاندماج)
📌 Transitive vs Non-Transitive: إذا A يثق بـ B، وB يثق بـ C — في الـ Transitive Trust: A يثق بـ C تلقائياً. في الـ Non-Transitive: A لا يثق بـ C تلقائياً. الـ Trust داخل Forest دائماً Transitive.

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). تُخزَّن في:

C:\Windows\NTDS\NTDS.dit

تنقسم إلى أربعة 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 تأخذ نسخة منها.
🚨 تحذير أمني: NTDS.dit يحتوي على هاشات كلمات مرور جميع المستخدمين بما فيهم المسؤولون. أي مهاجم يحصل على هذا الملف يستطيع فك تشفير الهاشات offline أو استخدامها مباشرةً في هجمات Pass-the-Hash. الحماية: تشفير القرص بـ BitLocker، تقييد الوصول الفيزيائي للـ DC، وعدم تشغيل DC كـ VM بدون حماية إضافية.

النسخ الاحتياطي والتشخيص يحتاج 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 يحل هذا بـ:

  1. Attribute-level Replication: الـ Replication يعمل على مستوى الـ Attribute لا الكائن كاملاً — فقط الـ Attribute المُغيَّر يُنسَخ.
  2. Last Write Wins: إذا تعارض نفس الـ Attribute، التغيير الأحدث زمنياً يفوز.
  3. 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:

الترتيب المستوى ما يغطيه الأولوية
LLocalالجهاز نفسهالأضعف
SSiteموقع AD
DDomainالدومين كاملاً↑↑
OUOrganizational UnitOU محددةالأقوى

الـ 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إدارة المستخدمين والمجموعات والأجهزة والـ OUsdsa.msc
Group Policy Managementإنشاء وإدارة وتشخيص GPOsgpmc.msc
AD Sites and Servicesإدارة Sites وSubnets والـ Replicationdssite.msc
AD Domains and Trustsإدارة علاقات الثقة والـ Functional Levelsdomain.msc
Active Directory Administrative CenterAD Recycle Bin وFine-grained Passwordsdsac.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)

❓ كم Domain Controller أحتاج كحد أدنى؟
الحد الأدنى الموصى به 2 DCs لكل دومين في موقعَين جغرافيَّين مختلفَين. إذا سقط DC واحد، الثاني يستمر. في المواقع الكبيرة: DC لكل موقع جغرافي لتجنّب الاعتماد على WAN للمصادقة.
❓ ما الفرق بين Security Group وDistribution Group؟
Security Group: يُستخدم لمنح الصلاحيات — إضافة مجموعة لـ ACL لمجلد مثلاً. Distribution Group: للبريد الإلكتروني فقط — قائمة توزيع في Exchange. لا يمكن استخدام Distribution Group لمنح الصلاحيات.
❓ ما الفرق بين Universal وGlobal وDomain Local Groups؟
Domain Local: أعضاؤها من أي دومين، تُستخدَم لتعيين الصلاحيات داخل نفس الدومين فقط. Global: أعضاؤها من نفس الدومين، تُستخدَم في أي دومين. Universal: أعضاؤها من أي دومين، تُستخدَم في أي دومين — مُخزَّنة في Global Catalog. القاعدة: AGDLP (Accounts → Global Groups → Domain Local Groups → Permissions).
❓ ما الفرق بين OU والـ Container؟
OU قابلة لربط GPO وتفويض الصلاحيات — تُنشئها أنت. Container (مثل CN=Users وCN=Computers) مدمجة في AD ولا يمكن ربط GPO بها مباشرة. لهذا يُنصح بنقل الكائنات من Containers الافتراضية لـ OUs مُخصَّصة.
❓ كيف أرفع Forest Functional Level؟
أولاً تأكد أن جميع DCs في الـ Forest تعمل على إصدار Windows Server المطلوب. ثم:
Set-ADForestMode -Identity "computargi.local" -ForestMode Windows2016Forest
تحذير: لا يمكن التراجع عن رفع Functional Level.

18. الخاتمة

Active Directory ليس مجرد "خادم مستخدمين" — هو نظام متكامل يضم بروتوكولات مصادقة (Kerberos)، دليل بيانات (LDAP)، قاعدة بيانات (NTDS.dit)، آلية تزامن (Replication)، نظام سياسات (GPO)، وهيكل هرمي يمتد من الغابة حتى الكائن الفردي.

فهم كل طبقة من هذه الطبقات يُمكّنك من تصميم بنية تحتية محكمة، تشخيص المشاكل قبل أن تتفاقم، والرد على الحوادث الأمنية بثقة وسرعة. ابدأ بـ Lab على Proxmox أو Hyper-V لتطبيق ما تعلمته — لا شيء يعوض التجربة العملية.

🏷️ الكلمات الدلالية:
Active Directory Kerberos LDAP FSMO Roles Group Policy Replication NTDS.dit Trust Relationships Global Catalog Windows Server PowerShell
🗄️
شرح NTDS Partitions

تعمّق في بنية قاعدة بيانات AD والأقسام الأربعة.

اقرأ المقال ←
🌐
ما هو DNS وكيف يعمل؟

DNS العمود الفقري لـ AD — فهمه ضروري.

اقرأ المقال ←
🪟
الفرق بين Windows Client و Server

أيهما يناسب بيئتك؟ شرح كامل.

اقرأ المقال ←
💻
VM vs Containers في Proxmox VE

كيف تُشغّل DC في بيئة Virtualization.

اقرأ المقال ←

↑ العودة إلى أعلى الصفحة

© 2025 – جميع الحقوق محفوظة | كمبيوترجي

google-playkhamsatmostaqltradent