پیکربندی «امنیت لایه انتقال» برای میانای برنامه‌سازی کاربردی مدیریت

به‌طور پیش‌فرض، TLS برای Management API غیرفعال است و بااستفاده از نشانی IP گره «سرور مدیریت» و درگاه ۸۰۸۰ ازطریق HTTP به Edge Management API دسترسی پیدا می‌کنید. برای مثال:

http://ms_IP:8080

یا می‌توانید دسترسی «امنیت لایه انتقال» را به «میانای برنامه‌سازی کاربردی مدیریت» پیکربندی کنید تا بتوانید به آن در قالب زیر دسترسی داشته باشید:

https://ms_IP:8443

در این مثال، دسترسی TLS را برای استفاده از درگاه ۸۴۴۳ پیکربندی می‌کنید. بااین‌حال، Edge به آن شماره درگاه نیاز ندارد - می‌توانید «سرور مدیریت» را پیکربندی کنید تا از مقادیر درگاه دیگر استفاده کند. تنها الزام این است که دیوار آتش شما ترافیک را ازطریق درگاه مشخص‌شده مجاز کند.

برای اطمینان از رمزگذاری ترافیک به و از میانای برنامه‌سازی کاربردی مدیریت، تنظیمات را در فایل /opt/apigee/customer/application/management-server.properties پیکربندی کنید.

علاوه‌بر پیکربندی TLS، می‌توانید با اصلاح فایل management-server.properties، اعتبارسنجی گذرواژه (طول و قدرت گذرواژه) را نیز کنترل کنید.

مطمئن شوید درگاه TLS باز باشد

روال این بخش TLS را پیکربندی می‌کند تا از درگاه ۸۴۴۳ در «سرور مدیریت» استفاده کند. صرف‌نظر از درگاهی که استفاده می‌کنید، باید مطمئن شوید که درگاه در Management Server باز است. برای مثال، می‌توانید از فرمان زیر برای باز کردن آن استفاده کنید:

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

پیکربندی «امنیت لایه انتقال»

فایل /opt/apigee/customer/application/management-server.properties را ویرایش کنید تا استفاده از TLS را در ترافیک ورودی و خروجی به میانای برنامه‌سازی کاربردی مدیریت خود کنترل کنید. اگر این فایل وجود ندارد، آن را ایجاد کنید.

برای پیکربندی دسترسی TLS به Management API:

  1. فایل JKS مخزن کلید را که حاوی گواهی TLS و کلید خصوصی شما است تولید کنید. برای اطلاعات بیشتر، پیکربندی «امنیت لایه انتقال»/ SSL برای Edge On Premises را ببینید.
  2. فایل JKS keystore را در دایرکتوری گره «سرور مدیریت» کپی کنید، برای مثال /opt/apigee/customer/application.
  3. مالکیت فایل JKS را به کاربر «apigee» تغییر دهید:
    chown apigee:apigee keystore.jks

    که keystore.jks نام فایل keystore شما است.

  4. برای تنظیم کردن ویژگی‌های زیر، /opt/apigee/customer/application/management-server.properties را ویرایش کنید. اگر آن فایل وجود ندارد، آن را ایجاد کنید:
    conf_webserver_ssl.enabled=true
    # Leave conf_webserver_http.turn.off set to false
    # because many Edge internal calls use HTTP.
    conf_webserver_http.turn.off=false
    conf_webserver_ssl.port=8443
    conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks
    # Enter the obfuscated keystore password below.
    conf_webserver_keystore.password=OBF:obfuscatedPassword

    که در آن keyStore.jks فایل ذخیره‌گاه کلید شما است، و obfuscatedPassword گذرواژه ذخیره‌گاه کلید مبهم شما است. برای کسب اطلاعات درباره تولید گذرواژه مبهم، پیکربندی TLS/SSL برای Edge On Premises را ببینید.

  5. بااستفاده از این فرمان، Edge Management Server را بازراه‌اندازی کنید:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

میانای برنامه‌سازی کاربردی مدیریت اکنون از دسترسی ازطریق «امنیت لایه انتقال» (TLS) پشتیبانی می‌کند.

پیکربندی New Edge UI برای استفاده از TLS جهت دسترسی به Edge API

در فرایند بالا، Apigee توصیه کرد conf_webserver_http.turn.off=false را نگه دارید تا «میانای کاربر New Edge» بتواند همچنان ازطریق HTTP با Edge API تماس بگیرد.

از روش زیر برای پیکربندی «میانای کاربری Edge جدید» استفاده کنید تا این تماس‌ها را فقط ازطریق HTTPS برقرار کند:

  1. دسترسی TLS به میانای برنامه‌سازی کاربردی مدیریت را طبق توضیحات بالا پیکربندی کنید.
  2. پس‌از تأیید اینکه TLS برای میانای برنامه‌سازی کاربردی مدیریت کار می‌کند، /opt/apigee/customer/application/management-server.properties را ویرایش کنید تا ویژگی زیر را تنظیم کنید:
    conf_webserver_http.turn.off=true
  3. با اجرای فرمان زیر، Edge Management Server را بازراه‌اندازی کنید:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart 
  4. پیکربندی «واسط کاربر Edge جدید» را به‌روز کنید تا ازطریق HTTPS به «سرور مدیریت» متصل شود. ویژگی‌های زیر را در فایل پیکربندی New Edge UI تنظیم کنید:
    APIGEE_PORT_HTTP_MS=port
    MS_SCHEME=https

    که port درگاهی است که قبلاً توسط conf_webserver_ssl.port مشخص شده است (برای مثال، 8443).

  5. پیکربندی به‌روزشده را در New Edge UI اعمال کنید:
    /opt/apigee/apigee-setup/bin/setup.sh -p ue -f configFile

    برای جزئیات بیشتر درباره فایل پیکربندی New Edge UI، پیکربندی New Edge UI را ببینید. برای پیکربندی دسترسی HTTPS به خود «واسط کاربر New Edge»، به پیکربندی TLS برای «واسط کاربر New Edge» مراجعه کنید.

ویژگی‌های TLS برای سرور مدیریت

جدول زیر همه دارایی‌های «امنیت لایه انتقال»/ SSL را که می‌توانید در management-server.properties تنظیم کنید فهرست می‌کند:

مشخصات شرح

conf_webserver_http.port=8080

پیش‌فرض ۸۰۸۰ است.

conf_webserver_ssl.enabled=false

برای فعال/غیرفعال کردن «امنیت لایه انتقال»/ پوسته ایمن. با فعال بودن 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

مسیر فایل keystore شما.

وقتی «امنیت لایه انتقال»/ پوسته ایمن فعال باشد (conf_webserver_ssl.enabled=true)، الزامی است.

conf_webserver_keystore.password=password

از گذرواژه مبهم در این قالب استفاده کنید: OBF:xxxxxxxxxx

conf_webserver_cert.alias=alias

نام مستعار اختیاری گواهینامه keystore

conf_webserver_keymanager.password=password

اگر مدیر کلید شما گذرواژه دارد، نسخه مبهمی از گذرواژه را در این قالب وارد کنید:

OBF:xxxxxxxxxx

conf_webserver_trust.all=[false | true]

conf_webserver_trust.store.path=path

conf_webserver_trust.store.password=password

تنظیمات فروشگاه مورداعتمادتان را پیکربندی کنید. تعیین کنید که آیا می‌خواهید همه گواهینامه‌های TLS/SSL را بپذیرید (برای مثال، برای پذیرفتن انواع غیراستاندارد). پیش‌فرض false است. مسیر مخزن گواهی‌ها را ارائه دهید و گذرواژه مخزن گواهی‌ها را به‌صورت مبهم در این قالب وارد کنید:

OBF:xxxxxxxxxx

conf_http_HTTPTransport.ssl.cipher.suites.blacklist=CIPHER_SUITE_1, CIPHER_SUITE_2

conf_http_HTTPTransport.ssl.cipher.suites.whitelist=

هر مجموعه رمزنگاری را که می‌خواهید اضافه یا حذف کنید مشخص کنید. برای مثال، اگر آسیب‌پذیری در یک رمز پیدا کردید، می‌توانید آن را در اینجا مستثنا کنید. چندین رمز را با کاما از هم جدا کنید.

هر رمزی که بااستفاده از فهرست سیاه بردارید بر هر رمزی که در فهرست سفید اضافه شده است اولویت دارد.

توجه: به‌طور پیش‌فرض، اگر فهرست سیاه یا فهرست سفیدی مشخص نشده باشد، رمزهای منطبق با عبارت باقاعده Java زیر به‌طور پیش‌فرض مستثنی می‌شوند.

^.*_(MD5|SHA|SHA1)$
^TLS_RSA_.*$
^SSL_.*$
^.*_NULL_.*$
^.*_anon_.*$

اما اگر فهرست سیاهی را مشخص کنید، این فیلتر لغو می‌شود و باید همه رمزها را به‌طور جداگانه در فهرست سیاه قرار دهید.

برای کسب اطلاعات درباره مجموعه‌های رمز و معماری رمزنگاری، به Java Cryptography Architecture Oracle Providers Documentation for JDK 8 مراجعه کنید.

conf_webserver_ssl.session.cache.size=

conf_webserver_ssl.session.timeout=

اعداد صحیحی که تعیین می‌کنند:

  • اندازه حافظه نهان جلسه TLS/SSL (به بایت) برای ذخیره اطلاعات جلسه برای چند کارخواه.
  • مدت زمانی که جلسه‌های TLS/SSL می‌توانند قبل‌از اتمام مهلت (به میلی‌ثانیه) ادامه داشته باشند.