مجموعتا عملاء وخادم واحد: أين تُفرض السياسة
الشبكات الفرعية توسم المجموعات ولا تعزلها. حدّد أي مسار إعادة توجيه يملك القاعدة، ثم اكتب المصفوفة التي يجب على التنفيذ فرضها.
وضع مجموعتي عملاء على شبكتين فرعيتين مختلفتين يبدو كعزل، وليس كذلك. العناوين تصف من أين يبدو أن الحزمة قادمة، أما الإذن فهو قرار يتخذه من يعيد توجيهها. ويُجاب عن هذا السؤال بالإعداد لا بالقناع، فحدّد أي مكوّن يعيد توجيه حركة الأقران قبل أن تكتب أي قاعدة.
الشبكة الفرعية وسم لا قاعدة
تخصيص تجمّع واحد لكل مجموعة يمنحك عناوين مقروءة ولا شيء آخر. العميل الذي يقبل مسارًا إضافيًا اكتسب إمكانية وصول، وإمكانية الوصول ليست تفويضًا. إذن التحدث يقع في قرار إعادة التوجيه، الذي قد يسكن في الخادم الخفي أو في النواة بحسب كيفية إعداد الخادم.
ملكية العنوان هي ما يجعل البادئة صالحة كمُحدِّد مجموعة. يجب أن تُسقط كل هوية موثّقة إلى عنوان أو نطاق متوقع، ويفشل هذا الإسقاط بمجرد أن تتشارك عدة أجهزة وثيقة اعتماد واحدة وتخصيصًا واحدًا. احسم الهوية والتزامن قبل الاعتماد على بادئة المصدر، لأن سياسة تخمّن أي جهاز يتصل تُفوّض الجهاز الخطأ في أسوأ لحظة.
اختر المسار الذي يحمل حركة الأقران
عندما يعيد الخادم الخفي توجيه حزم الأقران داخل عمليته الخاصة، فإن تلك الحزم لا تصل أبدًا إلى خطاف إعادة التوجيه في المضيف، لذا لا تستطيع قاعدة في النواة رؤيتها. عطّل إعادة التوجيه الداخلي هذه تصبح النواة نقطة إعادة التوجيه، حيث تنطبق قواعد إعادة التوجيه العادية.
# peer forwarding inside the daemon: enforce with per-group policy instead of FORWARD rules
client-to-client
# kernel forwarding path: remove the line above, then filter in the forward chain
تنشر قنوات البيانات المُفرّغة والخوادم التي تديرها المنتجات نماذج فرض خاصة بها، فتأكد من أيها تعمل بدلًا من افتراض سلوك المجتمع. الفشل الجدير بالتجنب هو قاعدة تبدو صحيحة في المراجعة ولا يُستشار بها أبدًا أثناء التشغيل.
اكتب المصفوفة قبل كتابة القواعد
مصفوفة قصيرة أسهل في المراجعة من مجموعة قواعد، وهي العقد الذي يجب أن يستوفيه التنفيذ: أقران المجموعة نفسها مسموحون، أقران المجموعتين المختلفتين ممنوعون، وكلا المجموعتين مسموح له بخدمة مشتركة واحدة محددة، وكل ما عدا ذلك ممنوع. اكتب هذه الأسطر الأربعة قبل أن تفتح محرر جدار الحماية. المراجع الذي لا يقرأ صياغة القواعد يمكنه مع ذلك فحص المصفوفة. عندئذ لا على التنفيذ إلا مطابقة الأسطر.
| Source | Destination | Decision |
|---|---|---|
| Group A address | Another Group A address | Allow |
| Group A address | A Group B address | Deny |
| Either group | The shared internal service | Allow |
| Either group | Anything not listed | Deny |
أبقِ أصناف الوجهات الثلاثة منفصلة أثناء الكتابة. فخدمة على مضيف VPN هي إدخال محلي، وعميل آخر هو عبور أقران، وجهاز خلف البوابة هو مسار إعادة توجيه مختلف. قاعدة واحدة كريمة قد تمنح الثلاثة بالخطأ، وهكذا تتحول سياسة مجموعة إلى شبكة مسطحة بخطوات إضافية. اكتب الصنف بجانب كل صف حتى يبقى القصد بعد التعديل التالي.
ضع القواعد حيث تبقى
أضف القرارات في المكان نفسه الذي تُصان فيه بقية جدار الحماية، قبل أي قاعدة متسامحة كانت ستلتهمها. ترتيب القواعد جزء من السياسة، والقاعدة الصحيحة الموضوعة بعد قبول واسع لا تفرض شيئًا على الإطلاق. سجّل أرقام القواعد قبل التغيير وبعده. السياسة الموجودة في محرر لكن ليس في مجموعة القواعد الجارية خطة، لا ضابط.
حدّد ما يحدث للتدفقات القائمة عند تغيّر السياسة، لأن جلسة فُتحت قبل التغيير قد تستمر بعده. إذا كان على عضو مغادر أن يفقد الوصول فورًا، فتحتاج مجموعة القواعد طريقة لإنهاء تلك الحالة بدلًا من انتظار إغلاق الاتصال من تلقاء نفسه.
ثبّت القواعد عبر الآلية التي تملك بقية جدار الحماية، وسجّل المصفوفة بجانبها. السياسة غير المسجلة يُعاد اشتقاقها من الذاكرة في الحادثة التالية، عادة على يد شخص مستعجل.
أثبتها من الجانبين
اختبر إمكانية الوصول داخل المجموعة نفسها، وفشل العبور بين المجموعتين، والخدمة المشتركة من عميل واحد في كل مجموعة. اختبار واحد من عميل واحد يثبت نصف المصفوفة، والنصف الذي يتركه هو عادة النصف الخطأ. كرر اتجاه الرفض مرتين، لأن جلسة مخزّنة قد تخفي خطأ فرض. سجّل أي زوج اختبرته حتى لا يكرره الشخص التالي.
كرر الفحص على IPv6 إذا كان النفق يحمله، وأبقِ مصادقة التطبيقات العادية في مكانها. بادئة المصدر ليست حسابًا، لذا اجتياز سياسة الشبكة لا يعني أنه ينبغي لخدمة أن تثق بالمتصل.