شما در حال مشاهده اسناد Apigee Edge هستید.
به مستندات Apigee X بروید . اطلاعات
این سند نحوه پیکربندی مجموعههای رمز را در میزبانهای مجازی و روترها در Apigee Edge توضیح میدهد.
مجموعه رمزگذاری مجموعه ای از الگوریتم ها است که به ایمن کردن اتصال شبکه ای که از TLS استفاده می کند کمک می کند. کلاینت و سرور باید در مورد مجموعه رمز خاصی که قرار است در تبادل پیام ها استفاده شود، توافق کنند. اگر کلاینت و سرور در مورد مجموعه رمز به توافق نرسند، در این صورت درخواستها با شکست TLS Handshake با شکست مواجه میشوند.
در Apigee، مجموعههای رمز باید به طور متقابل بین برنامههای مشتری و روترها توافق شود.
ممکن است بخواهید مجموعههای رمزگذاری شده در Apigee Edge را به دلایل زیر تغییر دهید:
- برای جلوگیری از عدم تطابق مجموعه های رمزی بین برنامه های مشتری و روترهای Apigee
- برای استفاده از مجموعههای رمز امنتر یا برای رفع هر گونه آسیبپذیری امنیتی یا برای افزایش امنیت
مجموعههای رمز را میتوان روی میزبانهای مجازی یا روترهای Apigee پیکربندی کرد. توجه داشته باشید که Apigee مجموعههای رمز را فقط در قالب رشتههای رمزی OpenSSL در میزبان مجازی و روتر میپذیرد. صفحه مدیریت رمزهای OpenSSL مجموعه رمزهای SSL یا 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 در Private Cloud آشنایی ندارید، نحوه پیکربندی Edge را بخوانید.
پیکربندی مجموعه های رمز در میزبان های مجازی
این بخش نحوه پیکربندی مجموعههای رمز را در میزبانهای مجازی مرتبط با یک سازمان و محیط توضیح میدهد. مجموعههای رمز را میتوان در میزبان مجازی از طریق ویژگی ssl_ciphers
پیکربندی کرد، که فهرست مجموعههای رمز پشتیبانی شده توسط میزبان مجازی را نشان میدهد.
برای فهرستی از مجموعههای رمزی که Apigee پشتیبانی میکند، به مجموعههای رمز پشتیبانی شده مراجعه کنید.
می توانید میزبان مجازی را با استفاده از یکی از روش های زیر پیکربندی کنید:
- با استفاده از رابط کاربری Edge
- با استفاده از Edge API
با استفاده از Edge UI
برای پیکربندی میزبان مجازی با استفاده از رابط کاربری Edge، موارد زیر را انجام دهید:
- وارد رابط کاربری Edge شوید.
- به Admin > Virtual Hosts بروید.
- محیط خاصی را که میخواهید این تغییر را در آنجا ایجاد کنید، انتخاب کنید.
- میزبان مجازی خاصی را که میخواهید مجموعههای رمز را برای آن پیکربندی کنید، انتخاب کنید.
- در قسمت Properties ، مقدار Ciphers را با فهرستی از رشتههای رمز 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 را با جداسازی دو نقطه اضافه کنید:
- تغییر را ذخیره کنید .
با استفاده از Edge API
برای پیکربندی مجموعههای رمز در یک میزبان مجازی با استفاده از Edge API، موارد زیر را انجام دهید:
- پیکربندی میزبان مجازی فعلی را با استفاده از Get virtual host API مطابق شکل زیر دریافت کنید:
کاربر عمومی ابر:
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 }
ویژگی
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 }
- پیکربندی میزبان مجازی به روز شده را در یک فایل ذخیره کنید. به عنوان مثال،
virtualhost-payload.json
. - پیکربندی
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 API با موفقیت در میزبان مجازی اصلاح شدهاند.
- Get virtual host API را اجرا کنید تا پیکربندی
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}
- بررسی کنید که ویژگی
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
با مقدار جدید تنظیم شده است. - اگر همچنان مقدار قدیمی
ssl_ciphers
را میبینید، بررسی کنید که تمام مراحل ذکر شده در پیکربندی مجموعههای رمز در میزبانهای مجازی را به درستی دنبال کردهاید. اگر هر مرحله ای را از دست داده اید، تمام مراحل را دوباره به درستی تکرار کنید. - اگر هنوز نمیتوانید مجموعههای رمز را به میزبان مجازی بهروزرسانی یا اضافه کنید، با پشتیبانی Apigee Edge تماس بگیرید.
پیکربندی مجموعه های رمز در روترها
در این بخش نحوه پیکربندی مجموعههای رمز در روترها توضیح داده میشود. مجموعههای رمز را میتوان از طریق ویژگی Router conf_load_balancing_load.balancing.driver.server.ssl.ciphers
پیکربندی کرد، که مجموعههای رمز پذیرفته شده با دو نقطه را نشان میدهد.
برای پیکربندی مجموعههای رمز در روترها، موارد زیر را انجام دهید:
در دستگاه روتر، فایل زیر را در یک ویرایشگر باز کنید. اگر از قبل وجود ندارد، آن را ایجاد کنید.
/opt/apigee/customer/application/router.properties
به عنوان مثال، برای باز کردن فایل با
vi
، عبارت زیر را وارد کنید:vi /opt/apigee/customer/application/router.properties
- یک خط به فرمت زیر به فایل
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
- تغییرات خود را ذخیره کنید
- همانطور که در زیر نشان داده شده است، اطمینان حاصل کنید که این فایل خصوصیات متعلق به کاربر
apigee
است:chown apigee:apigee /opt/apigee/customer/application/router.properties
- روتر را مانند شکل زیر راه اندازی مجدد کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- اگر بیش از یک روتر دارید، مراحل بالا را در همه روترها تکرار کنید.
تأیید مجموعه رمز در روترها
این بخش نحوه تأیید اینکه مجموعههای رمز با موفقیت در روترها اصلاح شدهاند را توضیح میدهد.
- در روتر، ویژگی
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
- اگر مجموعههای رمز جدید با موفقیت روی روتر تنظیم شوند، دستور بالا مقادیر جدید را نشان میدهد.
در زیر نتیجه نمونه فرمان
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
با مقادیر جدید مجموعه رمز تنظیم شده است. این نشان میدهد که مجموعه رمز با موفقیت به رشتههای رمز OpenSSLDHE-RSA-AES128-GCM-SHA25
وECDHE-RSA-AES128-GCM-SHA256
در روتر بهروزرسانی شد. - اگر همچنان مقادیر قدیمی مجموعههای رمز را مشاهده میکنید
conf_load_balancing_load.balancing.driver.server.ssl.ciphers
، سپس بررسی کنید که تمام مراحل ذکر شده در پیکربندی مجموعههای رمز در روترها را به درستی دنبال کردهاید. اگر هر مرحله ای را از دست داده اید، تمام مراحل را دوباره به درستی تکرار کنید. - اگر هنوز نمیتوانید مجموعههای Cipher را در روترها تغییر دهید، با پشتیبانی Apigee Edge تماس بگیرید.