
ويندوز سيرفر للمحترفين #4: الخدمات، لأن الخادم الذي لا يخدم لا قيمة له
Murtaja
🧭 قبل أن نبدأ
في الحلقات السابقة ثبّتنا الخادم وجهّزنا تخزينه. اليوم نصل إلى جوهر الموضوع مع الفصل الرابع: إدارة الخدمات من كتاب Microsoft Windows Server Administration Essentials. الكاتب يعتبر هذا الفصل من أهم فصول الكتاب، ولذلك وضعه مبكرًا عن قصد: سنتعرف على أهم خدمات ويندوز، وكيف نضبطها ونشغّلها ونوقفها، وكيف نحل مشكلاتها.
⚙️ الفصل الرابع: إدارة الخدمات (Administering Services)
يبدأ الكاتب بجملة يسمّيها هو نفسه "فلسفية":
"If a server does not offer services, it provides no value. The entire purpose for a server's existence is to offer services." — "إذا لم يقدّم الخادم خدمات فلا قيمة له. الغاية الوحيدة من وجوده هي تقديم الخدمات."
ثم يضيف ثلاث كلمات تختصر الفكرة: "A service serves"، أي أن الخدمة وُجدت لتخدم. والمعنى العملي عنده أنك إذا تذكّرت هذه الحقيقة فلن تنفّذ إلا التقنيات التي تضيف قيمة للمؤسسة، فتقل التكاليف وتزيد الكفاءة.
📖 ما هي الخدمة؟
الخدمة (Service): تطبيق أو مكوّن أصيل في النظام يعمل في الخلفية بلا واجهة مرئية، ويخدم الجهاز المحلي أو الشبكة أو كليهما. ولا ينبغي الخلط بين الخدمة نفسها وأداة إدارتها.
كيف تُثبَّت الخدمات؟
- خدمات الأدوار والميزات: تُثبَّت تلقائيًا عبر Server Manager.
- الخدمات المثبّتة مسبقًا: تحتاج فقط إلى تفعيل، ولا يمكن غالبًا إزالتها.
- خدمات الأطراف الثالثة: تُثبَّت كأي برنامج عادي عبر
SETUP.EXE.
⚠️ إذا طلب منك برنامج التثبيت إعادة تشغيل الخادم، فأعد تشغيله قبل استخدام الخدمة. وإلا قد لا تُحفظ إعداداتك أو يصبح النظام غير مستقر.
🗂️ أهم خدمات ويندوز التي يجب أن تعرفها
| الخدمة | لماذا هي مهمة؟ |
|---|---|
| Application Identity | لازمة لتطبيق سياسات AppLocker التي تمنع تشغيل تطبيقات محددة |
| BITS | تنقل البيانات في الخلفية أثناء أوقات الخمول، ويعتمد عليها Windows Update |
| Cryptographic Services | تدير الشهادات وتتحقق من التواقيع الرقمية للتعريفات والبرامج |
| DHCP Client | تحصل على إعدادات IP. وفي 2003 R2 وما قبله كانت تسجّل اسم الخادم في DNS الديناميكي، لذا كانت لازمة حتى مع IP ثابت |
| DNS Client | تحلّل الأسماء وتحفظ النتائج في ذاكرة مؤقتة (Cache) |
| EFS | التشفير على NTFS. إذا توقفت لا يمكن الوصول إلى البيانات المشفرة |
| EAP | مصادقة 802.1X للشبكات السلكية واللاسلكية وVPN وNAP |
| Group Policy Client | تطبيق سياسات المجموعة، بما فيها Group Policy Preferences |
| IP Helper | أنفاق IPv6 فوق شبكات IPv4 (6to4 وISATAP وTeredo) |
| IPSec Policy Agent | تطبيق سياسات IPSec، ومنها الحماية من هجمات الإعادة (Replay Attacks) |
| Netlogon | تسجيل الدخول إلى النطاق، ولا يمكن ضم جهاز للنطاق بدونها |
| Print Spooler | طابور الطباعة، ويمكن إيقافها بأمان على خادم لا يطبع |
| Remote Desktop Services | التحكم بسطح مكتب الخادم عن بُعد |
| Remote Registry | الوصول إلى السجل (Registry) من جهاز آخر |
| Server / Workstation | الأولى تشارك الملفات عبر SMB، والثانية تتصل بمشاركات الأجهزة الأخرى |
| Task Scheduler | تنفيذ المهام المجدولة، مثل إلغاء التجزئة كل أربعاء الساعة 1:00 صباحًا |
| Volume Shadow Copy | النسخ الظلية لاسترجاع إصدارات سابقة من الملفات |
| Windows Event Log | تسجيل الأحداث وأرشفتها والاشتراك في أحداث أجهزة أخرى |
| WMI | لنظام ويندوز ما يمثّله SNMP لأجهزة الشبكة: مراقبة الحالة والإعدادات |
| WinRM | الإدارة عن بُعد وجمع الأحداث |
| Windows Update | يجب أن تعمل حتى لو عطّلت التحديثات التلقائية |
🔐 هجوم الإعادة (Replay Attack): يلتقط المهاجم حزمة بيانات من الشبكة، ثم يعيد إرسالها، وربما بعد تعديل محتواها.
➕ الخدمات الإضافية (Add-On Services)
SQL Server مثال جيد على أن التطبيق الواحد قد يتكوّن من عدة خدمات: محرك قاعدة البيانات، وSQL Server Agent للمهام المجدولة، وخدمة مراقبة تسمح بتعدد النسخ على الجهاز نفسه. ومن الخدمات الإضافية الأخرى من مايكروسوفت: Exchange للبريد، وSharePoint للتعاون، وThreat Management Gateway كبروكسي للإنترنت، وDPM للنسخ الاحتياطي، وDynamics لأنظمة ERP وCRM. وهناك أيضًا خدمات من أطراف ثالثة، منها المجاني مثل Apache ومنها المدفوع. ولفتة الكاتب هنا واقعية جدًا:
"In many cases, the only difference between a paid product and a free product from a different vendor is the included support." — "في كثير من الحالات، الفرق الوحيد بين منتج مدفوع ومنتج مجاني من مورّد آخر هو الدعم الفني المرفق معه."
💡 هذه النقطة مهمة إذا كنت تفكر في بيع منتجات برمجية: كثير من العملاء لا يدفعون مقابل البرنامج نفسه، بل مقابل الدعم والطمأنينة.
🛠️ إعداد الخدمات
أنواع بدء التشغيل
| النوع | المعنى |
|---|---|
| Automatic | تبدأ مع إقلاع النظام |
| Automatic (Delayed Start) | تبدأ بعد انتهاء كل الخدمات التلقائية |
| Manual | لا تبدأ وحدها، لكن مستخدمًا أو تطبيقًا يمكن أن يشغّلها |
| Disabled | لا يمكن تشغيلها حتى يدويًا قبل تغيير نوعها |
لا يستطيع ضبط الخدمات إلا أعضاء Account Operators أو Domain Admins أو Enterprise Admins أو Administrators المحلية.
خيارات الاسترداد (Recovery)
عند فشل الخدمة يمكنك أن تختار: إعادة تشغيل الخدمة، أو تشغيل سكربت صيانة، أو إعادة تشغيل الخادم، أو عدم فعل شيء. ويمكنك تحديد إجراء مختلف للفشل الأول والثاني والتالي، مع عدّاد يحدد الفترة الزمنية التي تُحسب فيها مرات الفشل.
حساب التشغيل (Log On)
معظم الخدمات تعمل بحساب Local System، أي بكامل صلاحيات النظام. ويمكن تشغيلها بحساب مستخدم محدد، فتكون صلاحياتها هي صلاحيات ذلك الحساب فقط.
▶️ التشغيل والإيقاف وإعادة التشغيل
يمكنك إدارة الخدمات من ثلاث واجهات. الأولى رسومية:
Start → services.msc → Enter
الثانية موجه الأوامر، وتحتاج فيها اسم الخدمة (Service Name) لا اسم العرض (Display Name). اسم Print Spooler مثلًا هو spooler:
net stop spooler
net start spooler
⚠️ لا يوجد خيار
restartمع الأمرnet، فتحتاج إلى إيقاف الخدمة ثم تشغيلها، أو استخدام الأمرsc.
والثالثة PowerShell:
Start-Service spooler
Stop-Service spooler
Restart-Service spooler
💡 أوامر PowerShell لا تُظهر أي رسالة عند النجاح، وتظهر رسالة فقط عند حدوث مشكلة. فلا تقلق إن لم ترَ شيئًا بعد التنفيذ.
متى تعيد تشغيل الخدمة؟ حين تظهر حالتها "Started" لكنها لا تستجيب، أو لتطبيق إعدادات جديدة.
🩺 استكشاف أعطال الخدمات: ثلاثة أسباب رئيسية
- الاعتماديات (Dependencies): بعض الخدمات تعتمد على غيرها. يشبّه الكاتب ذلك بدمج مخطط Excel داخل PowerPoint: لا بد أن يكون البرنامجان مثبتين معًا. تجد هذه العلاقات في تبويب Dependencies، وهي باتجاهين: ما تعتمد عليه هذه الخدمة، وما يعتمد عليها.
- الإعداد (Configuration): قد يكون نوع البدء Manual بدلًا من Automatic. وبعض الخدمات تُضبط من أدوات خاصة بها، فالجدار الناري مثلًا يُضبط من Windows Firewall with Advanced Security، أما
services.mscفيحدد فقط طريقة تشغيل الخدمة وصلاحياتها. - الصلاحيات وحسابات الخدمة: قد تحتاج الخدمة إلى الملفات أو السجل أو الشبكة أو العتاد. امنحها ما تحتاجه فقط.
🔒 مبدأ الحد الأدنى من الصلاحيات (Least Privilege)
"If it is running with least privilege, in the worst case scenario, the attacker could do whatever the service could do and nothing more." — "إذا كانت الخدمة تعمل بأقل الصلاحيات، ففي أسوأ الأحوال لن يتمكن المهاجم إلا مما تتمكن منه الخدمة، ولا شيء أكثر."
خطوات تطبيقه:
- حدّد الإجراءات التي ستقوم بها الخدمة.
- حدّد الصلاحيات اللازمة لتلك الإجراءات.
- أنشئ حسابًا بتلك الصلاحيات فقط.
- شغّل الخدمة بذلك الحساب.
💎 اقتباسات هذا الجزء تستحق التوقف عندها
- "الخادم الذي لا يقدّم خدمات لا قيمة له.": قيّم أي تقنية بما تضيفه فعلًا.
- "الخدمة تخدم.": التعريف كله في اسمها.
- "الفرق بين المدفوع والمجاني غالبًا هو الدعم.": درس في التقنية وفي نموذج الأعمال معًا.
- "بأقل الصلاحيات لن يفعل المهاجم أكثر مما تفعله الخدمة.": الأمان يبدأ من تقليل ما يمكن أن يُسرق.
🎯 خلاصة الجزء
الخدمات تطبيقات تعمل في الخلفية، وتُضبط لتبدأ تلقائيًا أو يدويًا أو تُعطّل. تُدار من services.msc أو بأوامر net أو بأوامر PowerShell. وعند أي عطل افحص ثلاثة أشياء: الاعتماديات، والإعدادات، والصلاحيات، واجعل مبدأ الحد الأدنى من الصلاحيات قاعدتك الثابتة.
في الحلقة القادمة ندخل عالم Active Directory مع الفصل الخامس: البنية التحتية: النطاقات والأشجار والغابات ووحدات التحكم وDNS. 🚀