ضبط بروتوكول أمان طبقة النقل لواجهة برمجة التطبيقات للإدارة

Edge for Private Cloud الإصدار 4.16.05

يكون بروتوكول أمان طبقة النقل (TLS) غير مفعَّل تلقائيًا في Management API، ويمكنك الوصول إلى Edge Management API عبر HTTP باستخدام عنوان IP لعقدة خادم الإدارة والمنفذ 8080. على سبيل المثال:

http://ms_IP:8080

يمكنك بدلاً من ذلك ضبط وصول بروتوكول أمان طبقة النقل (TLS) إلى Management API لتتمكّن من الوصول إليها بالصيغة التالية:

https://ms_IP:8443

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

لضمان تشفير الزيارات من وإلى Management API، اضبط الإعدادات في ملف /<install_dir>/apigee/customer/application/management-server.properties.

بالإضافة إلى إعدادات بروتوكول أمان طبقة النقل (TLS)، يمكنك أيضًا التحكّم في التحقّق من كلمة المرور (طول كلمة المرور وقوتها) من خلال تعديل ملف management-server.properties.

التأكّد من أنّ منفذ بروتوكول أمان طبقة النقل (TLS) مفتوح

يضبط الإجراء في هذا القسم بروتوكول أمان طبقة النقل (TLS) لاستخدام المنفذ 8443 على خادم الإدارة. بغض النظر عن المنفذ الذي تستخدمه، يجب التأكّد من أنّ المنفذ مفتوح على خادم الإدارة. على سبيل المثال، يمكنك استخدام الأمر التالي لفتحه:

$ iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT --verbose 

إعداد بروتوكول أمان طبقة النقل (TLS)

عدِّل الملف /<install_dir>/apigee/customer/application/management-server.properties للتحكّم في استخدام بروتوكول أمان طبقة النقل (TLS) في الزيارات من وإلى Management API. إذا لم يكن هذا الملف متوفّرًا، يمكنك إنشاؤه.

اتّبِع الإجراء التالي لضبط وصول بروتوكول أمان طبقة النقل (TLS) إلى Management API:

  1. أنشئ ملف JKS لمخزن المفاتيح يحتوي على شهادة TLS والمفتاح الخاص. لمزيد من المعلومات، يُرجى الاطّلاع على ضبط بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL) في Edge On Premises.
  2. انسخ ملف JKS الخاص بمخزن المفاتيح إلى دليل على عقدة خادم الإدارة، مثل /tmp.
  3. غيِّر ملكية ملف JKS إلى apigee:
    $ chown apigee:apigee keystore.jks

    حيث keystore.jks هو اسم ملف تخزين المفاتيح.
  4. عدِّل /<install_dir>/apigee/customer/application/management-server.properties لضبط السمات التالية. إذا لم يكن هذا الملف متوفّرًا، يمكنك إنشاؤه:
    conf_webserver_ssl.enabled=true
    # Set next to true if all communications should be over HTTPS.
    # Not recommended because many Edge internal calls use HTTP.
    conf_webserver_http.turn.off=false
    conf_webserver_ssl.port=8443
    conf_webserver_keystore.path=/tmp/keystore.jks
    # Enter the obfuscated keystore password below.
    conf_webserver_keystore.password=OBF:obfuscatedPassword
    conf_webserver_cert.alias=apigee-devtest


    حيث keyStore.jks هو ملف تخزين المفاتيح، وobfuscatedPassword هو كلمة مرور ملف تخزين المفاتيح المبهمة. يُرجى الاطّلاع على ضبط بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL) في Edge On Premises للحصول على معلومات حول إنشاء كلمة مرور مخفية.
  5. أعِد تشغيل Edge Management Server باستخدام الأمر:
    $ /<install_dir>/apigee/apigee-service/bin/apigee-service edge-management-server restart

تتيح Management API الآن الوصول عبر بروتوكول أمان طبقة النقل (TLS).

ضبط واجهة مستخدم Edge لاستخدام بروتوكول أمان طبقة النقل (TLS) للوصول إلى واجهة برمجة تطبيقات Edge

في الإجراء أعلاه، أوصت Apigee بترك conf_webserver_http.turn.off=false حتى تتمكّن واجهة مستخدم Edge من مواصلة إجراء طلبات بيانات من واجهة برمجة تطبيقات Edge عبر HTTP. استخدِم الإجراء التالي لضبط واجهة مستخدم Edge لإجراء هذه المكالمات عبر HTTPS فقط:

  1. اضبط إمكانية الوصول إلى Management API عبر بروتوكول أمان طبقة النقل (TLS) كما هو موضّح أعلاه.
  2. بعد التأكّد من أنّ بروتوكول TLS يعمل مع Management API، عدِّل /<install_dir>/apigee/customer/application/management-server.properties لضبط السمة التالية:
    conf_webserver_http.turn.off=true
  3. أعِد تشغيل Edge Management Server باستخدام الأمر:
    $ /<install_dir>/apigee/apigee-service/bin/apigee-service edge-management-server restart
  4. عدِّل /<install_dir>/apigee/customer/application/ui.properties لضبط السمة التالية لواجهة مستخدم Edge. إذا لم يكن هذا الملف متوفّرًا، أنشِئه:
    conf_apigee_apigee.mgmt.baseurl="https://MS_IP:8443/v1"

    حيث MS_IP هو عنوان IP لخادم الإدارة ورقم المنفذ هو المنفذ المحدّد أعلاه من خلال conf_webserver_ssl.port.
  5. في حال استخدام شهادة موقَّعة ذاتيًا فقط عند ضبط وصول بروتوكول أمان طبقة النقل (TLS) إلى Management API أعلاه، أضِف السمة التالية إلى ui.properties:
    conf/application.conf+ws.acceptAnyCertificate=true

    وإلا، سترفض واجهة مستخدم Edge الشهادة الموقَّعة ذاتيًا.
  6. أعِد تشغيل واجهة مستخدم Edge باستخدام الأمر:
    $ /<install_dir>/apigee/apigee-service/bin/apigee-service edge-ui restart

خصائص بروتوكول أمان طبقة النقل (TLS) لخادم الإدارة

يسرد الجدول التالي جميع سمات TLS/SSL التي يمكنك ضبطها في management-server.properties:

المواقع

الوصف

conf_webserver_http.port=8080

القيمة التلقائية هي 8080.

conf_webserver_ssl.enabled=false

لتفعيل/إيقاف بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL) عند تفعيل بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL) (صحيح)، يجب أيضًا ضبط السمتَين ssl.port وkeystore.path.

conf_webserver_http.turn.off=true

لتفعيل/إيقاف http مع https إذا أردت استخدام HTTPS فقط، اترك القيمة التلقائية مضبوطة على true.

conf_webserver_ssl.port=8443

منفذ TLS/SSL

مطلوب عند تفعيل بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL) (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.path=<path>

المسار إلى ملف تخزين المفاتيح

مطلوب عند تفعيل بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL) (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.password=

استخدِم كلمة مرور مخفية بهذا التنسيق: OBF:xxxxxxxxxx

conf_webserver_cert.alias=

اسم مستعار اختياري لشهادة مخزن المفاتيح

conf_webserver_keymanager.password=

إذا كان مدير المفاتيح يتضمّن كلمة مرور، أدخِل نسخة مخفية من كلمة المرور بهذا التنسيق: OBF:xxxxxxxxxx

conf_webserver_trust.all= <false | true>

conf_webserver_trust.store.path=<path>

conf_webserver_trust.store.password=

اضبط إعدادات مخزن شهادات الجذر الموثوق بها. حدِّد ما إذا كنت تريد قبول جميع شهادات بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL) (على سبيل المثال، لقبول الأنواع غير العادية). القيمة التلقائية هي false. أدخِل المسار إلى مخزن شهادات الجذر الموثوق بها، وأدخِل كلمة مرور مخزن شهادات الجذر الموثوق بها مخفية بهذا التنسيق: OBF:xxxxxxxxxx

conf_webserver_exclude.cipher.suites=<CIPHER_SUITE_1 CIPHER_SUITE_2>

conf_webserver_include.cipher.suites=

أشِر إلى أي مجموعات رموز تريد تضمينها أو استبعادها. على سبيل المثال، إذا اكتشفت ثغرة أمنية في تشفير، يمكنك استبعاده هنا. يجب الفصل بين الرموز المتعددة باستخدام مسافة.

للحصول على معلومات عن مجموعات التشفير وبنية التشفير، يُرجى الاطّلاع على:

http://docs.oracle.com/javase/8/docs/technotes/
guides/security/SunProviders.html#SunJSSE

conf_webserver_ssl.session.cache.size=

conf_webserver_ssl.session.timeout=

أعداد صحيحة تحدّد:

  • حجم ذاكرة التخزين المؤقت لجلسة بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (بالبايت) لتخزين معلومات الجلسة لعدة عملاء.
  • مقدار الوقت الذي يمكن أن تستغرقه جلسات TLS/SSL قبل انتهاء مهلتها (بالملي ثانية)