Edge for Private Cloud v. 4.17.01
כברירת מחדל, ה-TLS מושבת בממשק ה-API לניהול, והגישה לממשק ה-API לניהול של Edge מתבצעת באמצעות HTTP באמצעות כתובת ה-IP של צומת שרת הניהול והיציאה 8080. לדוגמה:
http://ms_IP:8080
לחלופין, אפשר להגדיר גישה של TLS ל-Management API כדי לגשת אליה בטופס:
https://ms_IP:8443
בדוגמה הזו, מגדירים גישה ל-TLS באמצעות יציאה 8443. עם זאת, מספר היציאה הזה לא נדרש ל-Edge – אפשר להגדיר את שרת הניהול כך שישתמש בערכים אחרים של יציאות. הדרישה היחידה היא שחומת האש תאפשר תעבורת נתונים דרך היציאה שצוינה.
כדי להבטיח את הצפנת התנועה אל Management 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 ל-Management API, פועלים לפי התהליך הבא:
- יוצרים את קובץ ה-JKS של מאגר המפתחות שמכיל את אישור ה-TLS ואת המפתח הפרטי. מידע נוסף זמין במאמר הגדרת TLS/SSL (אבטחת שכבת התעבורה) ב-Edge Ones.
- מעתיקים את קובץ ה-JKS של מאגר המפתחות לתיקייה בצומת של שרת הניהול, למשל /opt/apigee/customer/application.
- משנים את הבעלות של קובץ ה-JKS ל-apigee:
$ chown apigee:apigee keystore.jks
כאשר keystore.jks הוא שם קובץ מאגר המפתחות. - עורכים את הקובץ /opt/apigee/customer/application/management-server.properties כדי להגדיר את המאפיינים הבאים. אם הקובץ הזה לא קיים, יוצרים אותו:
conf_webserver_ssl.enabled=true
# משאירים את conf_webserver_http.turn.off מוגדר כ-false
# כי הרבה קריאות פנימיות ב-Edge משתמשות ב-HTTP.
conf_webserver_http.turn.off=false
conf_webserver_ssl.port=8443
conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks
# מזינים למטה את הסיסמה של מאגר המפתחות המעורפל.
conf_webserver_keystore.password=OBF:obfuscatedPassword
conf_webserver_cert.alias=apigee-devtest
כאשר keyStore.jks הוא קובץ מאגר המפתחות, ו-obfuscatedPassword היא הסיסמה המעורפלת של מאגר המפתחות. מידע נוסף על יצירת סיסמה מעורפלת זמין במאמר הגדרת TLS/SSL ל-Edge On Premises. - מפעילים מחדש את Edge Management Server באמצעות הפקודה:
$ /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
מעכשיו יש ב-Management API תמיכה בגישה דרך TLS.
אחרי שמוודאים ש-TLS פועל כמו שצריך, כולל לוודא שהוא פועל בממשק המשתמש של Edge, אפשר להשבית את הגישה של HTTP ל-Management API כפי שמתואר בקטע הבא.
הגדרת ממשק המשתמש של Edge כך שישתמש ב-TLS כדי לגשת ל-Edge API
בתהליך שלמעלה, ב-Apigee מומלץ לצאת מהכתובת conf_webserver_http.turn.off=false כדי שממשק המשתמש של Edge יוכל להמשיך לבצע קריאות ל-Edge API באמצעות HTTP.
כדי להגדיר את ממשק המשתמש של Edge לבצע את הקריאות האלה רק דרך HTTPS:
- מגדירים גישה ל-TLS ל-Management API כפי שמתואר למעלה.
- אחרי שמוודאים ש-TLS פועל בממשק ה-API לניהול, עורכים את הקובץ /opt/apigee/customer/application/management-server.properties כדי להגדיר את המאפיין הבא:
conf_webserver_http.turn.off=true - מפעילים מחדש את שרת ניהול הקצה באמצעות הפקודה:
$ /opt/apigee/apigee-service/bin/apigee-service edge-management-server running - עורכים את הקובץ /opt/apigee/customer/application/ui.properties כדי להגדיר את המאפיין הבא לממשק המשתמש של Edge. אם הקובץ הזה לא קיים, יוצרים אותו:
conf_apigee_apigee.mgmt.baseurl="https://FQDN:8443/v1"
כאשר FQDN הוא שם הדומיין המלא, בהתאם לכתובת האישור של שרת הניהול, ומספר היציאה הוא היציאה שצוינה למעלה על ידי conf_webserver_ssl.port. - רק אם השתמשתם באישור בחתימה עצמית (לא מומלץ בסביבת ייצור) כשאתם מגדירים גישת TLS לממשק ה-API לניהול שלמעלה, אתם צריכים להוסיף את המאפיין הבא ל-ui.properties:
conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true
אחרת, ממשק המשתמש של Edge ידחה אישור בחתימה עצמית. - מפעילים מחדש את ממשק Edge UI באמצעות הפקודה:
$ /opt/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 מופעל (true), צריך להגדיר גם את המאפיינים 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_exclusion.cipher.Suites=<CIPHER_SUITE_1 CIPHER_SUITE_2> conf_webserver_include.cipher.suites= |
מציינים את חבילות הצפנה שרוצים לכלול או להחריג. לדוגמה, אם תגלו נקודת חולשה בהצפנה, תוכלו להחריג אותה כאן. אם יש כמה צפנים, צריך להפריד ביניהם באמצעות רווח. מידע נוסף על סטים של אלגוריתמים להצפנה (cipher suite) ועל ארכיטקטורת קריפטוגרפיה זמין במאמרים הבאים:
http://docs.oracle.com/javase/8/docs/technotes/ |
conf_webserver_ssl.session.cache.size= conf_webserver_ssl.session.timeout= |
מספרים שלמים שקובעים:
|