כברירת מחדל, אפשר לגשת לממשק המשתמש של Edge באמצעות HTTP באמצעות כתובת ה-IP של הצומת של שרת הניהול ושל היציאה 9000. לדוגמה:
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.
- מזינים את האלגוריתם של מאגר המפתחות. ברירת המחדל היא 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
|
המדיניות הזו מגדירה את חבילות ההצפנה המושבתות, ואפשר להשתמש בה גם כדי למנוע שימוש בגדלים קטנים של מפתחות לצורך לחיצת יד בפרוטוקול 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 לענן הפרטי יש תמיכה בהוספת הדגל secure
לכותרת Set-Cookie
של תגובות מממשק המשתמש של Edge. אם הסימון הזה קיים, ניתן לשלוח את קובץ ה-cookie רק בערוצים שמופעל בהם TLS (אבטחת שכבת התעבורה). אם קובץ ה-cookie לא נמצא, ניתן לשלוח את קובץ ה-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