Edge for Private Cloud גרסה 4.19.01
כברירת מחדל, אתם ניגשים לממשק המשתמש לניהול של Edge באמצעות HTTP, באמצעות כתובת ה-IP של צומת שרת הניהול ויציאה 9000. לדוגמה:
http://ms_IP:9000
אפשר גם להגדיר גישת TLS לממשק המשתמש של הניהול, כדי שתוכלו לגשת אליו בפורמט:
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.
- מזינים את האלגוריתם של מאגר המפתחות. ברירת המחדל היא JKS.
- מזינים את הנתיב המוחלט לקובץ ה-JKS של מאגר המפתחות.
הסקריפט מעתיק את הקובץ לספרייה
/opt/apigee/customer/confבצומת של שרת הניהול, ומשנה את הבעלות על הקובץ ל-"apigee". - מזינים את הסיסמה של מאגר המפתחות בטקסט פשוט.
- לאחר מכן, הסקריפט מפעיל מחדש את ממשק המשתמש לניהול של Edge. אחרי ההפעלה מחדש, ממשק המשתמש של הניהול תומך בגישה דרך 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 הוא הנתיב המלא לקובץ ששמרתם.
הגדרת ממשק המשתמש של Edge כש-TLS מסתיים במאזן העומסים
אם יש לכם מאזן עומסים שמעביר בקשות לממשק המשתמש של Edge, אתם יכולים לסיים את חיבור ה-TLS במאזן העומסים, ואז להגדיר שמאזן העומסים יעביר בקשות לממשק המשתמש של Edge באמצעות HTTP. ההגדרה הזו נתמכת, אבל צריך להגדיר את מאזן העומסים ואת ממשק המשתמש של Edge בהתאם.
ההגדרה הנוספת נדרשת כשממשק המשתמש של Edge שולח למשתמשים אימיילים כדי להגדיר את הסיסמה שלהם כשהמשתמש נוצר, או כשהמשתמש מבקש לאפס סיסמה שאבדה. האימייל הזה מכיל כתובת URL שהמשתמש בוחר כדי להגדיר או לאפס סיסמה. כברירת מחדל, אם ממשק המשתמש של Edge לא מוגדר לשימוש ב-TLS, כתובת ה-URL באימייל שנוצר משתמשת בפרוטוקול HTTP, ולא ב-HTTPS. צריך להגדיר את מאזן העומסים ואת ממשק המשתמש של Edge כדי ליצור כתובת אימייל שמשתמשת ב-HTTPS.
כדי להגדיר את מאזן העומסים, צריך לוודא שהוא מגדיר את הכותרת הבאה בבקשות שמועברות לממשק המשתמש של Edge:
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\"] שימו לב שצריך להוסיף תו בריחה (escape) לתו ".
כברירת מחדל, כל הפרוטוקולים מופעלים. |
TLS_DISABLED_ALGO
|
המדיניות הזו מגדירה את הסטים המושבתים של אלגוריתמים להצפנה (cipher suite), ואפשר להשתמש בה גם כדי למנוע שימוש במפתחות קטנים ללחיצת יד בפרוטוקול 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\"] שימו לב שצריך להוסיף תו בריחה (escape) לתו ".
רשימת ברירת המחדל של הצפנים המופעלים היא: "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, צריך לערוך את קובץ התצורה שמתואר בקטע שימוש בקובץ תצורה כדי להגדיר 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
שימוש בקובצי Cookie מאובטחים
ב-Apigee Edge for Private Cloud אפשר להוסיף את הדגל secure לכותרת Set-Cookie בתגובות מממשק המשתמש של Edge. אם הדגל הזה קיים, אפשר לשלוח את קובץ ה-Cookie רק בערוצים שבהם מופעל TLS. אם הוא לא קיים, אפשר לשלוח את קובץ ה-Cookie בכל ערוץ, מאובטח או לא.
קובצי Cookie ללא הדגל secure עלולים לאפשר לתוקף לתעד את קובץ ה-Cookie ולהשתמש בו שוב, או לחטוף סשן פעיל. לכן, מומלץ להפעיל את ההגדרה הזו.
כדי להגדיר את הדגל secure לקובצי ה-cookie של ממשק המשתמש של Edge:
- פותחים את הקובץ הבא בכלי לעריכת טקסט:
/opt/apigee/customer/application/ui.properties
אם הקובץ לא קיים, יוצרים אותו.
- מגדירים את המאפיין
conf_application_session.secureלערךtrueבקובץui.properties, כמו בדוגמה הבאה:conf_application_session.secure=true
- שומרים את השינויים.
- מפעילים מחדש את ממשק המשתמש של Edge באמצעות כלי השירות
apigee-serice, כמו בדוגמה הבאה:/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