
نصوص PowerShell لإنشاء قواعد لـ Windows firewall تلقائياً
![Alt Text][corporate firewall]
[![إصدار ألفا][badge status]][alpha]
حل آلي بالكامل لجدار الحماية في Windows باستخدام PowerShell
يقوم Windows Firewall Ruleset بتكوين جدار حماية Windows تلقائياً ويطبق قواعد جدار حماية مقيدة خاصة بالنظام المستهدف والبرامج المثبتة عليه.
حالة هذا المشروع لا تزال ألفا، انقر على شارة "الحالة" أعلاه لمعرفة المزيد.
يتكون هذا المشروع من جزأين رئيسيين، قواعد جدار الحماية وإطار عمل جدار الحماية كما يلي:
قواعد جدار حماية Windows مرتبة في نصوص PowerShell فردية حسب:
مثل على سبيل المثال:
يتكون إطار عمل جدار الحماية من عدد من وحدات PowerShell، ونصوص برمجية وتوثيق يُستخدم لجمع معلومات البيئة ذات الصلة لبناء ونشر جدار حماية مخصص للنظام المستهدف مثل:
وبالتالي فإن هذا المستودع هو نقطة انطلاق جيدة لتوسيع جدار الحماية الخاص بك بسهولة لتشمل المزيد من القواعد والوظائف حسب الرغبة.
يوجد حالياً حوالي 800+ قاعدة لجدار الحماية، و10+ وحدات مع 100+ دالة، والعديد من النصوص البرمجية وجزء جيد من التوثيق المفيد.
يمكنك اختيار القواعد التي تريدها بشكل تفاعلي، ونشرها فقط، أو يمكنك أتمتة العملية ونشر جميع القواعد والإعدادات الضرورية على جدار الحماية الخاص بك.
[![مدار في VSCode][badge vscode]][vscode] [![PowerShell][badge language]][powershell]
تكوين جدار الحماية التفصيلي هو عملية تستغرق وقتاً طويلاً، وتتطلب الكثير من استكشاف الأخطاء وإصلاحها، وتتطلب التغييرات اختباراً وتدقيقاً أمنياً، وتزداد الأمور سوءاً إذا كنت بحاجة لنشر جدار الحماية لمئات أو آلاف أجهزة الكمبيوتر البعيدة، على سبيل المثال قد لا تحتوي جميع أجهزة الكمبيوتر على نفس البرامج أو متطلبات التقييد.
على عكس قواعد جدار الحماية في لوحة التحكم، يتم تحميل هذه القواعد في جدار حماية GPO (نهج المجموعة المحلي)، مما يعني أن تغييرات إعدادات النظام أو البرامج العشوائية التي تقوم بتثبيت قواعد كجزء من عملية التثبيت لن يكون لها أي تأثير على جدار الحماية ما لم تقم صراحةً بعمل استثناء.
القواعد المبنية على البرامج والخدمات سيتم التحقق من ملفها التنفيذي المحدد بحثاً عن التوقيع الرقمي وسيتم فحصها على VirusTotal في حالة فقدان التوقيع الرقمي، لأسباب أمنية لا يتم إنشاء القاعدة أو تحميلها في جدار الحماية إذا فشل هذا التحقق. (يمكن فرضه)
الاتجاه الافتراضي للصادر هو "منع" ما لم تكن هناك قاعدة للسماح بحركة مرور الشبكة، في معظم جدران الحماية هذا غير ممكن ما لم تحتفظ بقواعد لكل برنامج أو خدمة محتملة، وبفضل هذه المجموعة من القواعد، فإن تعيين الافتراضي للصادر على منع يتطلب القليل جداً من العمل الإضافي أو لا يتطلب أي عمل.
على عكس السيناريو المعتاد، ستعرف أي القواعد لم تعد لها تأثير أو أصبحت زائدة عن الحاجة بسبب مثلاً برنامج تم إلغاء تثبيته، أو خدمة نظام مفقودة لم تعد موجودة، أو ملف تنفيذي تمت إعادة تسميته بعد تحديث Windows وأسباب مشابهة.
على عكس قواعد جدار حماية Windows المحددة مسبقاً، هذه القواعد أكثر تقييداً مثل أنها مرتبطة بحسابات مستخدمين صريحة، تنطبق على منافذ محددة، واجهات شبكة، ملفات تنفيذية محددة، خدمات إلخ. وكل ذلك يتم تعلمه تلقائياً من النظام المستهدف.
تحديث أو تصفية أو البحث عن القواعد والسمات مثل المنافذ والعناوين وما شابه ذلك أسهل بكثير لأن هذه القواعد موجودة في نصوص برمجية، يمكنك استخدام أدوات المحرر مثل التعبير المنتظم، [المؤشر المتعدد][multicursor] أو CTRL + F لإجراء عمليات مجمعة على قواعدك، القيام بذلك في أي واجهة مستخدم لجدار الحماية غير ممكن بسبب قيود واجهة المستخدم.
جزء كبير من الكود مخصص لتقديم حل آلي لبناء وتحديد جدار حماية متخصص للنظام المستهدف والمستخدمين، مما يقلل الحاجة للقيام بأي شيء يدوياً وبالتالي يوفر لك الكثير من الوقت الإداري الثمين.
هذا المشروع Windows Firewall Ruleset مرخص بموجب رخصة MIT.
بعض النصوص البرمجية، الملفات أو الوحدات ليست مرخصة بموجب MIT أو قد يكون لها أصحاب حقوق نشر خاصة بهم، لهذا السبب يتم الاحتفاظ بإشعارات الترخيص وحقوق النشر "لكل ملف".
[![Windows][badge system]][windows]
يسرد الجدول التالي أنظمة التشغيل التي تم اختبار Windows Firewall Ruleset عليها
| OS | الإصدار | الإصدار | البنية |
|---|---|---|---|
| Windows 10 | Pro | 1809 - 22H2 | x64 |
| Windows 10 | Pro Education | 20H2 | x64 |
| Windows 10 | Enterprise | 1809 - 20H2 | x64 |
| Windows 10 | Education | 20H2 - 22H2 | x64 |
| Windows 11 | Pro Education | 21H2 | x64 |
| Windows 11 | Pro | 22H2 - 23H2 | x64 |
| Windows 11 | Enterprise | 22H2 | x64 |
| Windows Server 2019 | Essentials | 1809 | x64 |
| Windows Server 2019 | Standard | 1809 | x64 |
| Windows Server 2019 | Datacenter | 1809 | x64 |
| Windows Server 2022 | Standard | 21H2 | x64 |
| Windows Server 2022 | Datacenter | 21H2 | x64 |
sigcheck64.exe (موصى به بشدة) [تحميل sigcheck][sigcheck]جميع أنظمة Windows 10.0 (الرئيسي 10، الثانوي 0) وما فوق باستثناء إصدارات Home مدعومة، ولكن فقط الإصدارات المدرجة في الجدول أعلاه تم اختبارها.
يشير عمود "الإصدار" إلى الإصدارات التي تم اختبارها، ومع ذلك يتم اختبار أحدث إصدارات النظام فقط بشكل مستمر.
قائمة الأنظمة المدعومة الأخرى غير المختبرة والميزات موجودة في المستقبل
PowerShell Core غير مدمج في Windows، ستحتاج إلى تثبيته بشكل منفصل أو استخدام Windows PowerShell وهو جزء من نظام التشغيل.