ضبط مجموعات الرموز على الأجهزة المضيفة وأجهزة التوجيه الافتراضية

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

يشرح هذا المستند كيفية تكوين مجموعات الرموز على الأجهزة المضيفة الافتراضية وأجهزة التوجيه في Apigee Edge.

مجموعة التشفير هي مجموعة من الخوارزميات التي تساعد في تأمين اتصال شبكة يستخدم بروتوكول أمان طبقة النقل (TLS). يجب أن يتفق العميل والخادم على مجموعة التشفير المحددة التي سيتم استخدامها في تبادل الرسائل. وفي حال لم يتّفق العميل والخادم على مجموعة تشفير، سيتعذّر تنفيذ الطلبات مع تعذُّر تأكيد الاتصال من خلال بروتوكول أمان طبقة النقل (TLS).

في Apigee، يجب الاتفاق على مجموعات التشفير بين تطبيقات العميل وأجهزة التوجيه.

قد ترغب في تعديل مجموعات الرموز في Apigee Edge للأسباب التالية:

  • لتجنُّب أي عدم تطابق بين مجموعات الرموز وأجهزة توجيه Apigee
  • استخدام مجموعات تشفير أكثر أمانًا لإصلاح أي ثغرات أمنية أو لتحسين مستوى الأمان

يمكن إعداد مجموعات الرموز إما على الأجهزة المضيفة الافتراضية أو أجهزة توجيه Apigee. يُرجى ملاحظة أنّ Apigee لا تقبل مجموعات الرموز إلا بتنسيق سلاسل تشفير OpenSSL في كل من المضيف الظاهري وجهاز التوجيه. توفّر صفحة رموز OpenSSL مجموعات رموز طبقة المقابس الآمنة أو بروتوكول أمان طبقة النقل (TLS) استنادًا إلى المواصفات ذات الصلة وما يعادلها من OpenSSL.

على سبيل المثال:

إذا كنت تريد ضبط مجموعة رموز TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 في المضيف الافتراضي أو جهاز توجيه Apigee، عليك تحديد سلسلة رموز OpenSSL المقابلة من صفحة رموز OpenSSL. سلسلة رموز OpenSSL لمجموعة الرموز TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 هي ECDHE-RSA-AES128-GCM-SHA256.، لذلك عليك استخدام سلسلة رموز OpenSSL ECDHE-RSA-AES128-GCM-SHA256 أثناء ضبط مجموعة الرموز في المضيف الظاهري أو على جهاز توجيه Apigee.

قبل البدء

  • للتعرّف على سلاسل رموز OpenSSL لمجموعات الرموز المختلفة، راجِع صفحة رموز OpenSSL.
  • إذا لم تكن مُلِمًا بمواقع المضيف الافتراضية، يمكنك الاطّلاع على مرجع موقع المضيف الافتراضي.
  • إذا لم تكن على دراية بكيفية ضبط خصائص Edge على السحابة الإلكترونية الخاصة، يُرجى الاطّلاع على المقالة كيفية إعداد Edge.

تكوين مجموعات التشفير على الأجهزة المضيفة الظاهرية

يوضح هذا القسم كيفية تهيئة مجموعات الرموز في المضيفات الافتراضية المرتبطة بالمؤسسة والبيئة. يمكن إعداد مجموعات الرموز في المضيف الافتراضي من خلال الموقع ssl_ciphers، الذي يمثل قائمة مجموعات الرموز التي يتيحها المضيف الافتراضي.

راجِع مجموعات الرموز المتوافقة للحصول على قائمة بمجموعات الرموز المتوافقة مع Apigee.

يمكنك تهيئة المضيف الظاهري باستخدام إحدى الطرق التالية:

  • استخدام واجهة مستخدم Edge
  • استخدام واجهة برمجة تطبيقات Edge

استخدام واجهة مستخدم Edge

لتكوين المضيف الظاهري باستخدام واجهة مستخدم Edge، قم بما يلي:

  1. سجِّل الدخول إلى واجهة مستخدم Edge.
  2. انتقِل إلى المشرف > المضيفون الافتراضيون.
  3. اختَر بيئة معيّنة تريد إجراء هذا التغيير فيها.
  4. اختر المضيف الظاهري المحدد الذي تريد تهيئة مجموعات التشفير له.
  5. ضمن الخصائص، حدِّث قيمة الرموز بقائمة من سلاسل الرموز OpenSSL المفصولة بنقطتين.

    على سبيل المثال، إذا كنت تريد السماح بمجموعتَي الرموز TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 وTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 فقط، عليك تحديد سلاسل رموز OpenSSL المقابلة من صفحة رموز OpenSSL، كما هو موضّح في الجدول التالي:

    مجموعة الرموز سلسلة ترميز OpenSSL
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    أضف سلسلة تشفير OpenSSL مع فصل النقطتين كما هو موضح في الشكل التالي:

    مثال على الرموز

  6. احفظ التغيير.

استخدام واجهة برمجة تطبيقات Edge

لتكوين مجموعات الرموز على مضيف افتراضي باستخدام واجهة برمجة تطبيقات Edge، قم بما يلي:

  1. احصل على الإعدادات الحالية للمضيف الافتراضي باستخدام واجهة برمجة التطبيقات الحصول على المضيف الافتراضي كما هو موضّح أدناه:

    مستخدم السحابة الإلكترونية العامة:

    curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    

    مستخدم Cloud خاص:

    curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    
    {
      "hostAliases": [
        "api.myCompany,com"
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    
  2. أضِف الخاصية ssl_ciphers إلى حمولة JSON الحالية لإعدادات المضيف الافتراضي ضمن properties باستخدام سلاسل رموز OpenSSL المناسبة.

    على سبيل المثال، إذا كنت تريد السماح بمجموعتَي الرموز TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 وTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 فقط، عليك تحديد سلاسل رموز OpenSSL المقابلة من صفحة رموز OpenSSL، كما هو موضّح في الجدول التالي:

    مجموعة الرموز سلسلة ترميز OpenSSL
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    إضافة مجموعة رموز properties التالية:

    نموذج إعداد المضيف الافتراضي المحدَّث:

    {
      "hostAliases": [
        "api.myCompany,com",
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "properties": {
        "property": [
          {
            "name": "ssl_ciphers",
            "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256"
          }
        ]
      },
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    
  3. احفظ إعدادات المضيف الافتراضي المعدَّلة في ملف. مثلاً: virtualhost-payload.json
  4. عدِّل إعدادات virtualhost من خلال إدخال التغيير باستخدام واجهة برمجة التطبيقات تحديث المضيف الافتراضي API على النحو التالي:

    مستخدم السحابة الإلكترونية العامة:

    curl -v -X POST Content-Type: application/json
    https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
    

    مستخدم Cloud خاص:

    curl -v -X POST Content-Type: application/json
    http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
    

مجموعات الرموز المتوافقة

تتوافق Apigee مع مجموعات الرموز التالية:

ECDHE-RSA-AES256-GCM-SHA384
ECDHE-RSA-AES256-SHA384
ECDHE-RSA-AES256-SHA
DHE-RSA-AES256-GCM-SHA384
DHE-RSA-AES256-SHA256
DHE-RSA-AES256-SHA
DHE-RSA-CAMELLIA256-SHA
AES256-GCM-SHA384
AES256-SHA256  
AES256-SHA
CAMELLIA256-SHA
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-RSA-AES128-SHA256
ECDHE-RSA-AES128-SHA
DHE-RSA-AES128-GCM-SHA256
DHE-RSA-AES128-SHA256
DHE-RSA-AES128-SHA
DHE-RSA-CAMELLIA128-SHA
AES128-GCM-SHA256
AES128-SHA256   
AES128-SHA 
CAMELLIA128-SHA

التحقق من مجموعات الرموز على الأجهزة المضيفة الافتراضية

يوضّح هذا القسم طريقة التحقّق من أنّه تم تعديل مجموعات الرموز بنجاح على المضيف الافتراضي باستخدام واجهة برمجة تطبيقات Edge.

  1. نفِّذ واجهة برمجة تطبيقات الحصول على مضيف افتراضي للحصول على إعدادات virtualhost كما هو موضّح أدناه:

    مستخدم السحابة الإلكترونية العامة:

    curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    

    مستخدم Cloud خاص:

    curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    
  2. تحقَّق من ضبط السمة ssl_ciphers على القيمة الجديدة.

    نموذج إعداد المضيف الافتراضي المحدَّث:

    {
      "hostAliases": [
        "api.myCompany,com",
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "properties": {
        "property": [
          {
            "name": "ssl_ciphers",
            "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256"
          }
        ]
      },
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    

    في المثال أعلاه، لاحظ أنه قد تم ضبط ssl_ciphers بالقيمة الجديدة.

  3. إذا كانت القيمة القديمة لـ ssl_ciphers لا تزال تظهر لك، تأكَّد من أنّك اتّبعت جميع الخطوات الموضّحة في ضبط مجموعات الرموز على الأجهزة المضيفة الافتراضية بشكلٍ صحيح. إذا فاتتك أي خطوة، كرِّر جميع الخطوات مرة أخرى بشكلٍ صحيح.
  4. إذا كنت لا تزال غير قادر على تحديث مجموعات الرموز أو إضافتها إلى المضيف الافتراضي، يُرجى التواصل مع فريق دعم Apigee Edge.

تكوين مجموعات التشفير على أجهزة التوجيه

يوضح هذا القسم كيفية تهيئة مجموعات الرموز على أجهزة التوجيه. يمكن إعداد مجموعات الرموز من خلال سمة جهاز التوجيه conf_load_balancing_load.balancing.driver.server.ssl.ciphers، التي تمثّل مجموعات الرموز المقبولة المفصولة بنقطتين.

لإعداد مجموعات الرموز على أجهزة التوجيه، يمكنك إجراء ما يلي:

  1. على جهاز التوجيه، افتح الملف التالي في أحد برامج التعديل. إذا لم يكن متوفّرًا من قبل، عليك إنشاؤه.

    /opt/apigee/customer/application/router.properties
    

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

    vi /opt/apigee/customer/application/router.properties
    

  2. أضِف سطرًا بالتنسيق التالي إلى ملف properties، مع استبدال قيمة colon_separated_cipher_suites:
    conf_load_balancing_load.balancing.driver.server.ssl.ciphers=colon_separated_cipher_suites
    

    على سبيل المثال، إذا كنت تريد السماح بمجموعتَي الرموز TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 وTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 فقط، عليك تحديد سلاسل رموز OpenSSL المقابلة من صفحة رموز OpenSSL، كما هو موضّح في الجدول التالي:

    مجموعة الرموز سلسلة ترميز OpenSSL
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    ثم أضِف السطر التالي:

    conf_load_balancing_load.balancing.driver.server.ssl.ciphers=DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
    
  3. احفظ التغييرات.
  4. تأكَّد من أنّ ملف السمات هذا يملكه مستخدم apigee كما هو موضّح أدناه:
    chown apigee:apigee /opt/apigee/customer/application/router.properties
    
  5. أعِد تشغيل جهاز التوجيه كما هو موضّح أدناه:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    
  6. إذا كان لديك أكثر من جهاز توجيه، يمكنك تكرار الخطوات السابقة على جميع أجهزة التوجيه.

التحقق من مجموعة الرموز على أجهزة التوجيه

يشرح هذا القسم كيفية التحقق من تعديل مجموعات الرموز بنجاح على أجهزة التوجيه.

  1. في جهاز التوجيه، ابحث عن السمة conf_load_balancing_load.balancing.driver.server.ssl.ciphers باستخدام أداة البحث Apigee من مجلد /opt/apigee وتحقَّق من ضبطها باستخدام القيمة الجديدة كما يلي:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.server.ssl.ciphers
    
  2. في حال تم ضبط مجموعات الرموز الجديدة بنجاح على جهاز التوجيه، سيعرِض الأمر السابق القيم الجديدة.

    في ما يلي نموذج نتيجة الأمر search عندما تم تعديل مجموعة الرموز إلى DHE-RSA-AES128-GCM-SHA256 وECDHE-RSA-AES128-GCM-SHA256:

    Found key conf_load_balancing_load.balancing.driver.server.ssl.ciphers, with value, DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256, in /opt/apigee/customer//application/router.properties
    

    في مثال الإخراج أعلاه، لاحظ أنّه قد تم ضبط الخاصية conf_load_balancing_load.balancing.driver.server.ssl.ciphers باستخدام قيم مجموعة الترميز الجديدة. يشير ذلك إلى أنّه تم تعديل مجموعة الرموز بنجاح إلى سلسلتَي رموز OpenSSL DHE-RSA-AES128-GCM-SHA25 وECDHE-RSA-AES128-GCM-SHA256 على جهاز التوجيه.

  3. إذا كنت لا تزال تظهر لك القيم القديمة لمجموعات الرموز conf_load_balancing_load.balancing.driver.server.ssl.ciphers، تأكَّد من أنّك اتّبعت جميع الخطوات الموضّحة في إعداد مجموعات الرموز على أجهزة التوجيه بشكلٍ صحيح. إذا فاتتك أي خطوة، كرِّر جميع الخطوات مرة أخرى بشكلٍ صحيح.
  4. إذا كنت لا تزال غير قادر على تعديل مجموعات الرموز على أجهزة التوجيه، يُرجى التواصل مع فريق دعم Apigee Edge.