به طور پیشفرض، TLS برای API مدیریت غیرفعال است و با استفاده از آدرس IP گره سرور مدیریت و پورت 8080 به API مدیریت Edge از طریق HTTP دسترسی پیدا میکنید. به عنوان مثال:
http://ms_IP:8080
همچنین، میتوانید دسترسی TLS به API مدیریت را پیکربندی کنید تا بتوانید به شکل زیر به آن دسترسی داشته باشید:
https://ms_IP:8443
در این مثال، شما دسترسی TLS را برای استفاده از پورت 8443 پیکربندی میکنید. با این حال، Edge به آن شماره پورت نیاز ندارد - میتوانید سرور مدیریت را برای استفاده از مقادیر پورت دیگر پیکربندی کنید. تنها شرط این است که فایروال شما اجازه عبور از پورت مشخص شده را بدهد.
برای اطمینان از رمزگذاری ترافیک به و از API مدیریت خود، تنظیمات را در فایل /opt/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
فایل /opt/apigee/customer/application/management-server.properties
را برای کنترل استفاده از TLS در ترافیک به و از API مدیریت خود ویرایش کنید. اگر این فایل وجود ندارد، آن را ایجاد کنید.
برای پیکربندی دسترسی TLS به API مدیریت:
- فایل JKS فروشگاه کلید حاوی گواهینامه TLS و کلید خصوصی خود را ایجاد کنید. برای اطلاعات بیشتر به پیکربندی TLS/SSL برای Edge On Premises مراجعه کنید.
- فایل JKS ذخیره کلید را در یک دایرکتوری در گره مدیریت سرور، مانند
/opt/apigee/customer/application
کپی کنید. - تغییر مالکیت فایل JKS به کاربر "apigee":
chown apigee:apigee keystore.jks
جایی که keystore.jks نام فایل keystore شما است.
- برای تنظیم ویژگی های زیر
/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 فایل keystore شما است و obfuscatedPassword رمز عبور مبهم فروشگاه کلید شما است. برای اطلاعات در مورد ایجاد رمز عبور مبهم به پیکربندی TLS/SSL برای Edge On Premises مراجعه کنید.
- با استفاده از دستور زیر سرور Edge Management را مجددا راه اندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
مدیریت API اکنون از دسترسی از طریق TLS پشتیبانی می کند.
Edge UI را برای استفاده از TLS برای دسترسی به Edge API پیکربندی کنید
در روش بالا، Apigee توصیه کرد که conf_webserver_http.turn.off=false
را ترک کنید تا Edge UI بتواند به برقراری تماس های Edge API از طریق HTTP ادامه دهد.
از روش زیر برای پیکربندی رابط کاربری Edge برای برقراری این تماسها فقط از طریق HTTPS استفاده کنید:
- همانطور که در بالا توضیح داده شد، دسترسی TLS به API مدیریت را پیکربندی کنید.
- پس از تأیید اینکه TLS برای API مدیریت کار می کند،
/opt/apigee/customer/application/ management-server.properties
را ویرایش کنید تا ویژگی زیر را تنظیم کنید:conf_webserver_http.turn.off=true
- با اجرای دستور زیر سرور Edge Management را مجددا راه اندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- برای تنظیم ویژگی زیر برای Edge UI
/opt/apigee/customer/application/ ui.properties
ویرایش کنید:conf_apigee_apigee.mgmt.baseurl="https://FQ_domain_name:port/v1"
جایی که FQ_domain_name نام دامنه کامل است، مطابق با آدرس گواهی سرور مدیریت، و port ، پورتی است که توسط
conf_webserver_ssl.port
در بالا مشخص شده است.اگر ui.properties وجود ندارد، آن را ایجاد کنید.
- فقط در صورتی که هنگام پیکربندی دسترسی TLS به API مدیریت در بالا از گواهی خودامضا (که در محیط تولید توصیه نمیشود) استفاده کردهاید ، ویژگی زیر را به
ui.properties
اضافه کنید:conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true
در غیر این صورت، رابط کاربری Edge گواهی خود امضا شده را رد می کند.
- با اجرای دستور زیر رابط کاربری Edge را مجددا راه اندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
استفاده از فروشگاه کلید PKCS12 برای سیستم عامل های دارای FIPS
اگر از Edge برای Private Cloud در سیستم عامل مجهز به FIPS استفاده میکنید، باید از فروشگاه کلید PKCS12 استفاده کنید. این برای مطابقت با استانداردهای FIPS الزامی است. علاوه بر سایر تنظیمات استاندارد ذکر شده در این مقاله، پیکربندی زیر را به فایل management-server.properties
خود اضافه کنید:
conf/webserver.properties+keystore.type=PKCS12
برای اطمینان از سازگاری با استانداردهای رمزگذاری مورد نیاز، اگر محیط شما دارای FIPS فعال است، حتماً این تغییر را اعمال کنید.
ویژگی های TLS برای سرور مدیریت
جدول زیر تمام ویژگی های TLS/SSL را که می توانید در management-server.properties
تنظیم کنید فهرست می کند:
خواص | توضیحات |
---|---|
| پیش فرض 8080 است. |
| برای فعال/غیرفعال کردن TLS/SSL. با فعال بودن TLS/SSL (درست)، باید خصوصیات ssl.port و keystore.path را نیز تنظیم کنید. |
| برای فعال/غیرفعال کردن http به همراه https. اگر می خواهید فقط از HTTPS استفاده کنید، مقدار پیش فرض را روی |
| پورت TLS/SSL زمانی که TLS/SSL فعال است ( |
| مسیر فایل keystore شما. زمانی که TLS/SSL فعال است ( |
| از یک رمز عبور مبهم در این قالب استفاده کنید: OBF:xxxxxxxxxx |
| نام مستعار گواهی ذخیره کلید اختیاری |
| اگر مدیر کلید شما رمز عبور دارد، یک نسخه مبهم رمز عبور را در این قالب وارد کنید: OBF:xxxxxxxxxx |
| تنظیمات را برای فروشگاه اعتماد خود پیکربندی کنید. تعیین کنید که آیا می خواهید همه گواهینامه های TLS/SSL را بپذیرید (مثلاً برای پذیرش انواع غیر استاندارد). پیش فرض OBF:xxxxxxxxxx |
| مجموعههای رمزی را که میخواهید شامل یا حذف کنید، مشخص کنید. به عنوان مثال، اگر آسیبپذیری را در یک رمز کشف کنید، میتوانید آن را در اینجا حذف کنید. چندین رمز را با کاما از هم جدا کنید. هر رمزی که از طریق لیست سیاه حذف می کنید، بر رمزهای موجود در لیست سفید اولویت دارد. توجه: به طور پیش فرض، اگر لیست سیاه یا لیست سفید مشخص نشده باشد، رمزهایی که با عبارت عادی جاوا زیر مطابقت دارند به طور پیش فرض حذف می شوند. ^.*_(MD5|SHA|SHA1)$ ^TLS_RSA_.*$ ^SSL_.*$ ^.*_NULL_.*$ ^.*_anon_.*$ با این حال، اگر یک لیست سیاه را مشخص کنید، این فیلتر لغو می شود و شما باید همه رمزها را به صورت جداگانه لیست سیاه کنید. برای اطلاعات در مورد مجموعههای سایفر و معماری رمزنگاری، به مستندات ارائهدهندگان Oracle Architecture Java Cryptography برای JDK 8 مراجعه کنید. |
| اعداد صحیحی که تعیین می کنند:
|