ضبط إشارة SNI بين معالج رسائل Edge وخادم الخلفية

أنت تعرض مستندات Apigee Edge.
انتقل إلى مستندات Apigee X.
معلومات

يسمح مؤشر اسم الخادم (SNI) بعرض خوادم HTTPS الخلفية على الجهاز نفسه عنوان IP والمنفذ بدون طلب استخدام خوادم الخلفية لشهادة بروتوكول أمان طبقة النقل (TLS) نفسها. وهو امتداد لبروتوكول أمان طبقة النقل (TLS). عند تفعيل إشارة اسم الخادم (SNI) على جهاز عميل، يجتاز العميل اسم المضيف لخادم الخلفية كجزء من تأكيد اتصال بروتوكول أمان طبقة النقل (TLS) الأولي. وهذا يسمح بروتوكول أمان طبقة النقل (TLS) لتحديد شهادة بروتوكول أمان طبقة النقل (TLS) التي يجب استخدامها للتحقق من صحة الطلب من البرنامج.

يتم تلقائيًا إيقاف إشارة اسم الخادم (SNI) على مكوِّن معالج الرسائل في Edge الخاص بالسحابة الإلكترونية الخاصة لضمان التوافق مع الأنظمة الخلفية الحالية للخوادم. إذا كان خادم الخلفية لتتوافق مع SNI، فأنت بحاجة إلى تمكين SNI على مكون معالج الرسائل. وبخلاف ذلك، سيتعذّر تنفيذ طلبات البيانات من واجهة برمجة التطبيقات التي تمرّ في Apigee Edge مع تعذّر تأكيد الاتصال من خلال بروتوكول أمان طبقة النقل (TLS).

يشرح هذا المستند كيفية إجراء ما يلي:

قبل البدء

تحديد الخادم الذي يدعم إشارة اسم الخادم (SNI)

يصف هذا القسم كيفية تحديد ما إذا تم تفعيل إشارة اسم الخادم (SNI) على خادم الخلفية أم لا.

  1. نفِّذ الأمر openssl وجرِّب الاتصال باسم مضيف الخادم ذي الصلة. (جهاز توجيه الحافة أو خادم الخلفية) بدون إدخال اسم الخادم، كما هو موضح أدناه:
    openssl s_client -connect hostname:port
    
  2. قد تحصل على الشهادات، وفي بعض الأحيان قد تلاحظ فشل تأكيد الاتصال في openssl، كما هو موضح أدناه:
    CONNECTED(00000003) 9362:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:/BuildRoot/Library/Caches/com.apple.xbs/Sources/OpenSSL098/OpenSSL098-64.50.6/src/ssl/s23_clnt.c:593
    
  3. نفِّذ الأمر openssl وجرِّب الاتصال بالخادم ذي الصلة. اسم المضيف (جهاز توجيه الحافة أو خادم الخلفية) من خلال تمرير اسم الخادم كما هو موضح أدناه:
    openssl s_client -connect hostname:port -servername hostname
    
  4. إذا لم تنجح عملية تأكيد الاتصال في الخطوة 1 أو إذا حصلت على شهادات مختلفة في الخطوة 1 و2، فإنها تشير إلى أن الخادم المحدد تم تمكين إشارة اسم الخادم (SNI) إليه.
  5. إذا كنت تريد التحقق من ذلك لأكثر من خادم خلفية واحد، عليك تكرار الخطوات المذكورة أعلاه لكل خادم خلفية.

إذا وجدت أن لديك خادمًا خلفية أو أكثر تم تمكين إشارة اسم الخادم (SNI) إليه، فأنت بحاجة إلى لتمكين إشارة اسم الخادم (SNI) في مكون معالج الرسائل كما هو موضح أدناه. بخلاف ذلك، لا يمكن واجهة برمجة التطبيقات سيتعذّر تنفيذ الطلبات التي تمرّ في Apigee Edge تعذّر تأكيد الاتصال من خلال بروتوكول أمان طبقة النقل (TLS).

تفعيل إشارة اسم الخادم (SNI) بين معالِجات الرسائل في Edge وخادم الخلفية

يوضح هذا القسم كيفية تمكين SNI بين معالج رسائل Edge والخلفية الخادم. يمكن تفعيل إشارة اسم الخادم (SNI) من خلال الموقع jsse.enableSNIExtension على مكون معالج الرسائل. لإعداد أي خاصية في معالج الرسائل، استخدم الرمز المميز وفقًا للبنية الموضحة في كيفية إعداد Edge

لتفعيل إشارة اسم الخادم (SNI) في معالِجات الرسائل، عليك تنفيذ الخطوات التالية:

  1. تحديد موقع الرمز المميّز للموقع jsse.enableSNIExtension
  2. تفعيل إشارة اسم الخادم (SNI) في "معالج الرسائل"

تحديد موقع الرمز المميّز للموقع الإلكتروني jsse.enableSNIExtension

توضح الخطوات التالية كيفية تحديد موقع الرمز المميز الخاصية "jsse.enableSNIExtension":

  1. البحث عن السمة jsse.enableSNIExtension في مصدر "معالج الرسائل" الدليل /opt/apigee/edge-message-processor/source باستخدام الأمر التالي:
    grep -ri "jsse.enableSNIExtension" /opt/apigee/edge-message-processor/source
    
  2. تعرِض نتيجة هذا الأمر الرمز المميّز لخاصية معالج الرسائل. jsse.enableSNIExtension على النحو التالي:
    /opt/apigee/edge-message-processor/source/conf/system.properties:jsse.enableSNIExtension={T}conf_system_jsse.enableSNIExtension{/T}
    

    حيث تكون السلسلة بين علامتَي {T}{/T} هي اسم الرمز المميّز الذي التي يمكنك تعيينها في ملف .properties معالج الرسائل.

    بالتالي، سيكون الرمز المميّز للسمة jsse.enableSNIExtension على النحو التالي:

    conf_system_jsse.enableSNIExtension
    

تفعيل إشارة اسم الخادم (SNI) في معالج الرسائل

توضّح الخطوات التالية كيفية تفعيل إشارة اسم الخادم (SNI) في مكوِّن معالج الرسائل في Apigee.

  1. في جهاز معالج الرسائل، افتح الملف التالي في محرر. وإذا لم يحدث ذلك موجودة بالفعل، ثم قم بإنشائه.
    /opt/apigee/customer/application/message-processor.properties
    

    على سبيل المثال، لفتح الملف باستخدام vi، أدخِل الأمر التالي:

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. أضف سطرًا بالتنسيق التالي إلى ملف الخصائص:
    conf_system_jsse.enableSNIExtension=true
    
  3. احفظ التغييرات.
  4. تأكد من أن ملف الخصائص هذا ملك لمستخدم apigee كما هو موضح أدناه:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. أعد تشغيل معالج الرسائل كما هو موضح أدناه:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. التحقق من تحديث تهيئة إشارة اسم الخادم (SNI) على معالج الرسائل.
  7. إذا كان لديك أكثر من معالج رسائل واحد، فكرر هذه الخطوات أعلاه على جميع معالِجات الرسائل.

إيقاف إشارة اسم الخادم (SNI) بين معالِجات الرسائل في Edge وخادم الخلفية

وبوجه عام، من المفترض ألا تظهر أي مشاكل بعد تفعيل إشارة اسم الخادم (SNI). ومع ذلك، إذا لاحظت أي مشكلات في الاتصال بين معالج رسائل Edge وخادم الخلفية بعد لتمكين إشارة اسم الخادم، يمكنك دائمًا تعطيل إشارة اسم الخادم من خلال تنفيذ الخطوات التالية.

يمكن إيقاف إشارة اسم الخادم (SNI) من خلال ضبط السمة jsse.enableSNIExtension مرة أخرى إلى false في مكون معالج الرسائل.

إيقاف إشارة اسم الخادم (SNI) في معالِجات معالجة الرسائل

توضّح الخطوات التالية كيفية إيقاف إشارة اسم الخادم (SNI) في معالِجات بيانات Apigee.

  1. في جهاز معالج الرسائل، افتح الملف التالي في محرر. وإذا لم يحدث ذلك موجودة بالفعل، ثم قم بإنشائه.
    /opt/apigee/customer/application/message-processor.properties
    

    على سبيل المثال، لفتح الملف باستخدام vi، أدخِل الأمر التالي:

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. إذا كان السطر conf_system_jsse.enableSNIExtension=true موجودًا في /opt/apigee/customer/application/message-processor.properties، ثم عدِّله على أنّه التالي:
    conf_system_jsse.enableSNIExtension=false
    
  3. احفظ التغييرات.
  4. تأكد من أن ملف الخصائص هذا ملك لمستخدم apigee كما هو موضح أدناه:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. أعد تشغيل معالج الرسائل كما هو موضح أدناه:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. التحقق من تحديث تهيئة إشارة اسم الخادم (SNI) على معالج الرسائل.
  7. إذا كان لديك أكثر من معالج رسائل واحد، فكرر الخطوات المذكورة أعلاه على جميع معالِجات الرسائل.

التحقق من تهيئة إشارة اسم الخادم (SNI) في معالِجات معالجة الرسائل

يوضّح هذا القسم كيفية التحقّق من نجاح ضبط إشارة اسم الخادم (SNI) التي تم تحديثها في معالجات الرسائل.

وعلى الرغم من استخدام الرمز المميز conf_system_jsse.enableSNIExtension من أجل تهيئة إشارة اسم الخادم (SNI) في معالج الرسائل، يلزمك التحقق من الموقع الفعلي تم ضبط jsse.enableSNIExtension على القيمة الجديدة.

  1. في جهاز "معالج الرسائل"، ابحث عن السمة jsse.enableSNIExtension في الدليل /opt/apigee/edge-message-processor/conf وتحقَّق مما إذا كان يحتوي على بالقيمة الجديدة على النحو الموضّح أدناه:
    grep -ri "jsse.enableSNIExtension" /opt/apigee/edge-message-processor/conf
    
  2. فإذا تم تحديث تهيئة إشارة اسم الخادم (SNI) بنجاح في معالج الرسائل، فعندئذ القيمة الجديدة في ملف system.properties.

    النتيجة النموذجية من الأمر أعلاه بعد تفعيل إشارة اسم الخادم (SNI) في معالج الرسائل هي على النحو التالي:

    /opt/apigee/edge-message-processor/conf/system.properties:jsse.enableSNIExtension=true
    

    وبالمثل، فإن النتيجة النموذجية من الأمر أعلاه بعد تعطيل SNI على في ما يلي معالج الرسائل:

    /opt/apigee/edge-message-processor/conf/system.properties:jsse.enableSNIExtension=false
    

    في المثال أعلاه، لاحِظ أنّ السمة jsse.enableSNIExtension تم تعديلها إلى القيمة الجديدة true أو false في system.properties ويشير ذلك إلى أنّه قد تمّ تفعيل إشارة اسم الخادم (SNI) بنجاح أو في معالج الرسائل.

  3. إذا استمر ظهور القيمة القديمة للسمة jsse.enableSNIExtension، عليك التأكّد من أنّك قد اتّبعت جميع الخطوات الموضّحة في القسم المناسب لتفعيل أو إيقاف SNI بشكل صحيح. إذا فاتتك أي خطوة، فكرر جميع الخطوات مرة أخرى بشكل صحيح.
  4. في حال استمرار عدم تمكّنك من تفعيل/إيقاف إشارة اسم الخادم (SNI)، تواصَل مع دعم Apigee Edge