تكوين وحدة استماع بوابة التطبيق للتشفير

مكتمل

لقد قمت بتكوين طبقة مآخذ توصيل آمنة (SSL) لإجراء اتصال بين Azure Application Gateway والخوادم في مجموعة الواجهة الخلفية. بالنسبة إلى مدخل الشحن، تحتاج إلى تشفير كامل وشامل. وللقيام بهذا التشفير، ستحتاج أيضاً إلى تشفير الرسائل التي يرسلها العميل إلى Application Gateway.

إنشاء منفذ الواجهة الأمامية

تتلقى بوابة التطبيق الطلبات عبر منفذ واحد أو أكثر. إذا كنت تتصل بالمدخل عبر HTTPS، فإنه يجب عليك تكوين منفذ SSL. يستخدم HTTPS المنفذ 443 في العادة. استخدم أمر az network application-gateway frontend-port create لإنشاء منفذ أمامي جديد. يوضّح المثال التالي كيفية إنشاء منفذ أمامي لمنفذ 443:

az network application-gateway frontend-port create \
    --resource-group $rgName \
    --gateway-name gw-shipping  \
    --name my-https-port \
    --port 443

تكوين وحدة استماع

تنتظر وحدة الاستماع نسبة استخدام الشبكة الواردة إلى المدخل على منفذ أمامي مُحدد. ثم يتم توجيه نسبة استخدام الشبكة هذه إلى خادم في مجموعة الواجهة الخلفية. إذا كان منفذ الواجهة يستخدم طبقة مآخذ توصيل آمنة (SSL)، فسوف تحتاج إلى الإشارة إلى الشهادة لاستخدامها في فك تشفير الرسائل الواردة. وتتضمن الشهادة المفتاح الخاص.

يمكنك إضافة الشهادة باستخدام أمر az network application-gateway ssl-cert create. ويجب أن يكون ملف الشهادة بتنسيق PFX. لأن هذا الملف يحتوي على المفتاح الخاص، فمن المحتمل أيضًا أن يكون محميًا بكلمة مرور. يُمكنك توفير كلمة المرور في وسيطة cert-password، كما هو موضح في المثال التالي.

az network application-gateway ssl-cert create \
   --resource-group $rgName \
   --gateway-name gw-shipping \
   --name shipping-ssl.crt \
   --cert-file shippingportal/server-config/shipping-ssl.pfx \
   --cert-password <password for certificate file>

ثم يُمكنك إنشاء وحدة الاستماع التي تتلقى الطلبات من المنفذ الأمامي وتفك تشفيرها باستخدام هذه الشهادة. استخدم الأمرaz network application-gateway http-listener create.

az network application-gateway http-listener create \
    --resource-group $rgName \
    --gateway-name gw-shipping \
    --name http-listener \
    --frontend-port my-https-port \
    --ssl-cert shipping-ssl.crt

حدد قاعدة ليتم إرسال طلبات HTTPS إلى الخوادم

تتمثل الخطوة الأخيرة في إنشاء قاعدة توجه الرسائل المستلمة من خلال وحدة الاستماع إلى الخوادم في مجموعة الواجهة الخلفية. يتم فك تشفير الرسائل المستلمة من المنفذ الأمامي عبر شهادة SSL المحددة لوحدة الاستماع. بالإضافة إلى ذلك، فإنك تحتاج إلى إعادة تشفير هذه الرسائل باستخدام شهادة العملي للخوادم الموجودة في مجموعة الواجهة الخلفية. يُمكنك تحديد هذه المعلومات في القاعدة.

يوضّح المثال التالي كيفية استخدام أمر az network application-gateway rule create لإنشاء قاعدة تقوم بتوصيل وحدة الاستماع بمجموعة الواجهة الخلفية. --http-settings تحدد المعلمة إعدادات HTTP التي تشير إلى الشهادة من جانب العميل للخوادم. لقد قمت بإنشاء هذه الإعدادات في الوحدة السابقة.

az network application-gateway rule create \
    --resource-group $rgName \
    --gateway-name gw-shipping \
    --name app-gw-rule \
    --address-pool ap-backend \
    --http-listener http-listener \
    --http-settings https-settings \
    --rule-type Basic
    --priority 101

من المفترض أن يكون لديك الآن تشفير كامل من طرف إلى طرف للرسائل التي يتم توجيهها من خلال بوابة التطبيق. يستخدم العملاء شهادة SSL لبوابة التطبيق من أجل إرسال الرسائل. يقوم Application Gateway بفك تشفير هذه الرسائل باستخدام شهادة SSL هذه. ثم يقوم بإعادة تشفير الرسائل باستخدام الشهادة للخوادم الموجودة في مجموعة الخلفية.