به طور پیشفرض، با استفاده از آدرس IP گره سرور مدیریت و پورت 9000، از طریق HTTP به رابط کاربری Edge دسترسی دارید. به عنوان مثال:
http://ms_IP:9000
همچنین، میتوانید دسترسی TLS به رابط کاربری Edge را پیکربندی کنید تا بتوانید به شکل زیر به آن دسترسی داشته باشید:
https://ms_IP:9443
در این مثال، شما دسترسی TLS را برای استفاده از پورت 9443 پیکربندی میکنید. با این حال، شماره پورت مورد نیاز Edge نیست - میتوانید مدیریت سرور را برای استفاده از مقادیر پورت دیگر پیکربندی کنید. تنها شرط این است که فایروال شما اجازه عبور از پورت مشخص شده را بدهد.
مطمئن شوید که پورت TLS شما باز است
روش موجود در این بخش، TLS را برای استفاده از پورت 9443 در سرور مدیریت پیکربندی می کند. صرف نظر از پورتی که استفاده می کنید، باید مطمئن شوید که پورت روی سرور مدیریت باز است. برای مثال می توانید از دستور زیر برای باز کردن آن استفاده کنید:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 9443 -j ACCEPT --verbose
پیکربندی TLS
از روش زیر برای پیکربندی دسترسی TLS به رابط کاربری مدیریت استفاده کنید:
- فایل JKS فروشگاه کلید حاوی گواهینامه TLS و کلید خصوصی خود را ایجاد کنید و آن را در گره مدیریت سرور کپی کنید. برای اطلاعات بیشتر، به پیکربندی TLS/SSL برای Edge On Premises مراجعه کنید.
- برای پیکربندی TLS دستور زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl
- شماره پورت HTTPS، به عنوان مثال، 9443 را وارد کنید.
- مشخص کنید که آیا می خواهید دسترسی HTTP به رابط کاربری مدیریت را غیرفعال کنید. به طور پیش فرض، رابط کاربری مدیریت از طریق HTTP در پورت 9000 قابل دسترسی است.
- الگوریتم keystore را وارد کنید. پیش فرض JKS است.
- مسیر مطلق فایل JKS را وارد کنید.
اسکریپت فایل را در پوشه
/opt/apigee/customer/conf
در گره مدیریت سرور کپی می کند و مالکیت فایل را به "apigee" تغییر می دهد. - رمز عبور ذخیره کلید متنی را وارد کنید.
- سپس اسکریپت رابط کاربری Edge management را مجددا راه اندازی می کند. پس از راه اندازی مجدد، رابط کاربری مدیریت از دسترسی از طریق TLS پشتیبانی می کند.
می توانید این تنظیمات را در
/opt/apigee/etc/edge-ui.d/SSL.sh
مشاهده کنید.
استفاده از فایل پیکربندی برای پیکربندی TLS
به عنوان جایگزینی برای رویه فوق، می توانید یک فایل پیکربندی را به دستور مرحله 2 رویه ارسال کنید. اگر میخواهید ویژگیهای اختیاری TLS را تنظیم کنید، باید از این روش استفاده کنید.
برای استفاده از یک فایل پیکربندی، یک فایل جدید ایجاد کنید و ویژگی های زیر را اضافه کنید:
HTTPSPORT=9443 DISABLE_HTTP=y KEY_ALGO=JKS KEY_FILE_PATH=/opt/apigee/customer/application/mykeystore.jks KEY_PASS=clearTextKeystorePWord
فایل را با هر نامی که می خواهید در یک فهرست محلی ذخیره کنید. سپس از دستور زیر برای پیکربندی TLS استفاده کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
که در آن configFile مسیر کامل فایلی است که ذخیره کرده اید.
هنگامی که TLS به بار متعادل کننده خاتمه می یابد، رابط کاربری Edge را پیکربندی کنید
اگر متعادلکننده بار دارید که درخواستها را به Edge UI ارسال میکند، ممکن است انتخاب کنید که اتصال TLS را در بار متعادلکننده خاتمه دهید و سپس از طریق HTTP درخواستهای load balancer را به Edge UI ارسال کنید. این پیکربندی پشتیبانی میشود، اما باید متعادلکننده بار و رابط کاربری Edge را بر این اساس پیکربندی کنید.
هنگامی که رابط کاربری Edge به کاربران ایمیل می فرستد تا رمز عبور خود را هنگام ایجاد کاربر یا زمانی که کاربر درخواست بازنشانی رمز عبور گم شده را می دهد، پیکربندی اضافی مورد نیاز است. این ایمیل حاوی URL است که کاربر برای تنظیم یا بازنشانی رمز عبور انتخاب می کند. به طور پیشفرض، اگر رابط کاربری Edge برای استفاده از TLS پیکربندی نشده باشد، URL در ایمیل تولید شده از پروتکل HTTP استفاده میکند و نه HTTPS. باید load balancer و Edge UI را برای ایجاد آدرس ایمیلی که از HTTPS استفاده می کند، پیکربندی کنید.
برای پیکربندی load balancer، اطمینان حاصل کنید که هدر زیر را در درخواست های ارسال شده به Edge UI تنظیم می کند:
X-Forwarded-Proto: https
برای پیکربندی رابط کاربری Edge:
- فایل
/opt/apigee/customer/application/ui.properties
را در یک ویرایشگر باز کنید. اگر فایل وجود ندارد، آن را ایجاد کنید:vi /opt/apigee/customer/application/ui.properties
- ویژگی زیر را در
ui.properties
تنظیم کنید:conf/application.conf+trustxforwarded=true
- تغییرات خود را در
ui.properties
ذخیره کنید. - رابط کاربری Edge را مجددا راه اندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
تنظیم ویژگی های اختیاری TLS
رابط کاربری Edge از ویژگی های پیکربندی اختیاری TLS پشتیبانی می کند که می توانید از آنها برای تنظیم موارد زیر استفاده کنید:
- پروتکل پیش فرض TLS
- لیست پروتکل های TLS پشتیبانی شده
- الگوریتم های TLS پشتیبانی شده
- رمزهای TLS پشتیبانی می شود
این پارامترهای اختیاری تنها زمانی در دسترس هستند که ویژگی پیکربندی زیر را در فایل پیکربندی تنظیم کنید، همانطور که در استفاده از فایل پیکربندی برای پیکربندی TLS توضیح داده شده است:
TLS_CONFIGURE=y
جدول زیر این ویژگی ها را شرح می دهد:
اموال | توضیحات |
---|---|
TLS_PROTOCOL | پروتکل TLS پیش فرض را برای رابط کاربری Edge تعریف می کند. به طور پیش فرض، TLS 1.2 است. مقادیر معتبر TLSv1.2، TLSv1.1، TLSv1 هستند. |
TLS_ENABLED_PROTOCOL | لیستی از پروتکل های فعال را به عنوان یک آرایه جدا شده با کاما تعریف می کند. به عنوان مثال: TLS_ENABLED_PROTOCOL=[\"TLSv1.2\", \"TLSv1.1\", \"TLSv1\"] توجه داشته باشید که باید از شخصیت " فرار کنید. به طور پیش فرض همه پروتکل ها فعال هستند. |
TLS_DISABLED_ALGO | مجموعههای رمز غیرفعال را تعریف میکند و همچنین میتواند برای جلوگیری از استفاده از اندازههای کوچک کلید برای دست دادن TLS استفاده شود. هیچ مقدار پیش فرض وجود ندارد. مقادیر ارسال شده به TLS_DISABLED_ALGO=EC\ keySize\ <\ 160,RSA\ keySize\ <\ 2048 |
TLS_ENABLED_CIPHERS | لیستی از رمزهای TLS موجود را به عنوان یک آرایه جدا شده با کاما تعریف می کند. به عنوان مثال: TLS_ENABLED_CIPHERS=[\"TLS_DHE_RSA_WITH_AES_128_CBC_SHA\", \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA\"] توجه داشته باشید که باید از شخصیت " فرار کنید. لیست پیشفرض رمزهای فعال به صورت زیر است: "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", "TLS_RSA_WITH_AES_256_CBC_SHA", "TLS_RSA_WITH_AES_128_CBC_SHA", "SSL_RSA_WITH_RC4_128_SHA", "SSL_RSA_WITH_RC4_128_MD5", "TLS_EMPTY_RENEGOTIATION_INFO_SCSV" لیست رمزهای موجود را در اینجا بیابید. |
غیرفعال کردن پروتکل های TLS
برای غیرفعال کردن پروتکلهای TLS، باید فایل پیکربندی را که در قسمت Use a config file to configure TLS توضیح داده شده است، به صورت زیر ویرایش کنید:
- فایل کانفیگ را در یک ویرایشگر باز کنید.
- برای غیرفعال کردن یک پروتکل TLS - برای مثال TLSv1.0 - موارد زیر را به فایل پیکربندی اضافه کنید:
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1"
برای غیرفعال کردن چندین پروتکل - برای مثال TLSv1.0 و TLSv1.1 - موارد زیر را به فایل پیکربندی اضافه کنید:
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1, tlsv1.1"
- تغییرات خود را در فایل کانفیگ ذخیره کنید.
- برای پیکربندی TLS دستور زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
که در آن configFile مسیر کامل فایل پیکربندی است.
- رابط کاربری Edge را مجددا راه اندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
از کوکی های امن استفاده کنید
Apigee Edge for Private Cloud از افزودن پرچم secure
به هدر Set-Cookie
برای پاسخها از رابط کاربری Edge پشتیبانی میکند. اگر این پرچم وجود داشته باشد، کوکی فقط میتواند از طریق کانالهای فعال TLS ارسال شود. اگر وجود نداشته باشد، کوکی را می توان از طریق هر کانالی، خواه امن باشد یا نه، ارسال کرد.
کوکیهای بدون پرچم secure
میتوانند به طور بالقوه به مهاجم اجازه دهند کوکی را گرفته و مجدداً استفاده کند یا یک جلسه فعال را ربوده است. بنابراین، بهترین روش فعال کردن این تنظیم است.
برای تنظیم پرچم secure
برای کوکیهای Edge UI:
- فایل زیر را در یک ویرایشگر متن باز کنید:
/opt/apigee/customer/application/ui.properties
اگر فایل وجود ندارد، آن را ایجاد کنید.
- همانطور که در مثال زیر نشان می دهد، ویژگی
conf_application_session.secure
را در فایلui.properties
رویtrue
تنظیم کنید:conf_application_session.secure=true
- تغییرات خود را ذخیره کنید
- همانطور که در مثال زیر نشان داده شده است، با استفاده از ابزار
apigee-serice
، رابط کاربری Edge را مجددا راه اندازی کنید:/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
برای تأیید اینکه تغییر کار میکند، سرصفحههای پاسخ را از رابط کاربری Edge با استفاده از ابزاری مانند curl
بررسی کنید. به عنوان مثال:
curl -i -v https://edge_UI_URL
سرصفحه باید دارای خطی به شکل زیر باشد:
Set-Cookie: secure; ...
TLS را در رابط کاربری Edge غیرفعال کنید
برای غیرفعال کردن TLS در رابط کاربری Edge، از دستور زیر استفاده کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-ui disable-ssl