إنشاء بوابة التطبيق وتكوينها
تتألف بوابة التطبيق من سلسلة من المكونات التي تجمع بين توجيه الطلبات إلى مجموعة من خوادم الويب والتحقق من صحة تلك الخوادم على الويب. لنلق نظرة على مدى صلة تلك المكونات والدور الذي تلعبه في بوابة التطبيق.
عنوان IP الطرفي
يتم تلقي طلبات العميل من خلال عنوان IP طرفي. يمكنك تكوين بوابة التطبيق للحصول على عنوان IP عام أو عنوان IP خاص أو كليهما. لا يمكن أن يكون لدى بوابة التطبيق أكثر من عنوان IP أحدهما عام والآخر خاص.
وحدة الاستماع
تستخدم بوابة التطبيق وحدة واحدة أو أكثر من وحدات الاستماع لتلقي الطلبات الواردة. توافق وحدات الاستماع على نسبة استخدام الشبكة التي تصل إلى تركيبة محددة من بروتوكول المنفذ، والمضيف، وعنوان IP. توجه كل وحدة استماع الطلبات إلى تجمع من الخوادم الخلفية التالية التي توجه القواعد التي تحددها. قد تكون وحدة الاستماع أساسية أو متعددة المواقع. تعمل وحدة الاستماع الأساسية على توجيه طلب يستند إلى المسار في عنوان موقع ويب (URL). يمكن لوحدة استماع متعددة المواقع توجيه الطلبات باستخدام عنصر اسم المضيف في عنوان موقع ويب (URL).
تعالج وحدات الاستماع أيضًا شهادات SSL لتأمين التطبيق الخاص بك بين المستخدم وبوابة التطبيق.
قواعد التوجيه
تربط قاعدة التوجيه وحدة الاستماع بالتجمعات الطرفية. تحدد القاعدة كيفية تفسير اسم المضيف وعناصر المسار في عنوان موقع ويب (URL) للطلبات ولتوجيه الطلبات إلى تجمع خلفي مناسب. كما تحتوي قاعدة التوجيه على مجموعة مقترنة من إعدادات HTTP. تشير تلك الإعدادات إلى ما إذا كان يتم تشفير (وكيفية) نسبة استخدام الشبكة بين بوابة التطبيق والخوادم الخلفية ومعلومات التكوين الأخرى، مثل:
- بروتوكول (HTTP أو HTTPS).
- الالتصاق بالجلسة، لتمرير كل الطلبات في جلسة عمل العميل إلى خادم الويب ذاته بدلاً من توزيعها عبر الخوادم مع موازنة التحميل.
- سحب الاتصال، لتمكين الإزالة الآمنة للخوادم من تجمع نهاية خلفية.
- فترة انتهاء مهلة الطلب، بالثواني.
- الفحوصات الصحية، تحديد فحص URL، وفترات انتهاء المهلة، والمعلمات الأخرى المُستخدمة لتحديد توّفر خادم في تجمع النهاية الخلفية من عدمه.
التجمعات الخلفية
يُشير التجمع الخلفي إلى مجموعة من خوادم الويب. يمكنك توفير عنوان IP لكل خادم ويب وكذلك المنفذ الذي ينصت إلى الطلبات عند تكوين التجمع. يمكن لكل تجمع أن يحدد مجموعة ثابتة من الأجهزة الظاهرية، أو مجموعة مقياس الجهاز الظاهري، أو تطبيقًا تستضيفه خدمات تطبيقات Azure، أو مجموعة من الخوادم المحلية. كل تجمع خلفية له موازن تحميل مقترنة بتوزيع العمل عبر التجمع
جدار حماية تطبيق الويب
جدار حماية تطبيق الويب هو مكون اختياري يعالج الطلبات الواردة قبل أن تصل إلى وحدة الاستماع. يتحقق جدار حماية تطبيق الويب من صحة كل طلب فيما يتعلق بالعديد من التهديدات الشائعة، استنادًا إلى مشروع أمان تطبيق ويب المفتوح. وتشمل هذه القيود ما يلي:
- حقن لغة الاستعلامات المركبة SQL
- البرمجة النصية للمواقع المشتركة
- حقن الأوامر
- طلب تهريب HTTP
- تقسيم استجابة HTTP
- تضمين الملف عن بُعد
- الروبوت، متتبعات الزحف، والماسحات الضوئية
- انتهاكات بروتوكول HTTP والحالات الخارجة عن المألوف
عرّف OWASP مجموعة من القواعد العامة للكشف عن الهجمات. يُشار إلى تلك القواعد باسم مجموعة القواعد الأساسية (CRS). تخضع مجموعات القواعد للمراجعة المستمرة مع تطور الهجمات فيما يتعلق بالتعقيد. يدعم جدار حماية تطبيق الويب مجموعتين من القواعد، CRS 2.2.9 وCRS 3.0. 3.0 CRS هي الافتراضية وأحدث مجموعات القواعد. إذا لزم الأمر، يمكنك تحديد قواعد محددة فقط في مجموعة قواعد، تستهدف تهديدات معينة. بالإضافة إلى ذلك، يمكنك تخصيص جدار الحماية لتحديد العناصر التي في الطلبات لفحصها، والحد من حجم الرسائل لمنع التحميلات الضخمة من سحق خوادمك.
يتم تمكين جدار حماية تطبيق الويب على بوابة التطبيق الخاصة بك عن طريق تحديد WAF الطبقة عند إنشاء البوابة.
الفحوصات الصحية
تُعد الفحوصات الصحية جزءًا مهمًا من مساعدة موازن التحميل لتحديد الخوادم المتوفرة لموازنة التحميل في تجمع خلفي. تستخدم بوابة التطبيق الفحوصات الصحية لإرسال طلب إلى الخادم. عند إرجاع الخادم استجابة HTTP مع رمز حالة بين 200 و399، يعتبر الخادم صحيحًا.
إذا لم تقم بتكوين الفحوصات الصحية، تقوم بوابة التطبيق بإنشاء فحوصات افتراضية من الانتظار 30 ثانية قبل تقرير عدم توفر الخادم.
متطلبات شبكة بوابة التطبيق
تتطلب بوابة التطبيق شبكة اتصال ظاهرية للعمل فيها. ينبغي إنشاء هذه الشبكة الظاهرية وشبكة فرعية مخصصة قبل إعداد بوابة التطبيق. تستخدم بوابة التطبيق عددًا من العناوين الخاصة للاستخدام الداخلي وللاتصال مع كل مثيل إذا كانت البوابة تتوسع. على سبيل المثال، إذا كنت تخطط للتوسيع إلى أربع مثيلات، قم بإنشاء شبكة فرعية بحجم / 28. إذا كان من المحتمل التحجيم إلى مزيد من المثيلات، فقم بإنشاء شبكة فرعية أكبر.
يمكنك كشف بوابة التطبيق من خلال عنوان IP عام، أو يمكنك الحفاظ على خصوصيتها فقط من خلال إعطاءها عنوان IP خاص داخل الشبكة الظاهرية. يُعد ذلك مفيدًا إذا كانت لديك المواقع الداخلية التي ترغب في استخدام بوابة التطبيق لتوفير موازنة التحميل.
خيارات بوابة التطبيق
يمكنك إنشاء بوابة تطبيق على المستوى القياسي أو على مستوى جدار حماية تطبيق الويب. لديك أيضًا خيار من ثلاثة أحجام فيما يتعلق بالأداء والتسعير وقابلية التطوير: صغير ومتوسط وكبير.
تتوفر المستويات القياسيةوجدار حماية تطبيق الويب في إصدارين: الإصدار الأول والإصدار الثاني. يدعم الإصدار الثاني مناطق توفر Azure، ولكنه حاليًا قيد التجربة.
تدعم بوابة التطبيق القياس اليدوي والتحجيم التلقائي. عند تحديد التحجيم التلقائي سيتم توسيع نطاق بوابة التطبيق بشكل تلقائي وفقًا لنسبة استخدام الشبكة للتطبيق. يمكنك تحديد الحد الأقصى والحد الأدنى من مثيلات بوابة التطبيق.
إنشاء البوابة وتكوينها
يمكنك إنشاء وتكوين بوابة التطبيق باستخدام البوابة الإلكترونية Azure أو Azure PowerShell أو CLI Azure. أمّا CLI Azure، فاستخدم az network application-gateway create الأمر لإنشاء بوابة جديدة. إذا كنت تفضل PowerShell، يمكنك استخدام New-AzApplicationGateway cmdlet. يمكنك أيضًا استخدام مدخل Azure لتنفيذ معظم العمليات.
يمكنك فحص وتعديل تكوين المكونات في البوابة باستخدام az network application-gateway http-listener أوامرaz network application-gateway rule وaz network application-gateway address-pool وaz network application-gateway http-settings وaz network application-gateway front-end-port من CLI Azure. توفر سلاسل Get-AzApplicationGateway* وSet-AzApplicationGateway* من cmdlets العمليات ذاتها من أجل PowerShell.
دعونا نقم بإنشاء وتكوين بوابة تطبيق لمواقع ويب قسم السيارات التي نشرناها.
هل تحتاج إلى مساعدة؟ راجع دليل استكشاف الأخطاء وإصلاحها الذي نقدمه أو يمكنك توفير ملاحظات معينة عبر الإبلاغ عن مشكلة.