כברירת מחדל, ניגשים לממשק המשתמש של 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 # Set type to PKCS12 if you are using a PKCS12 keystore 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 הוא הנתיב המלא לקובץ ששמרתם.
שימוש במאגר מפתחות PKCS12 למערכות הפעלה שתומכות ב-FIPS
אם אתם משתמשים ב-Edge for Private Cloud במערכת הפעלה שתומכת ב-FIPS, עליכם להשתמש במאגר מפתחות מסוג PKCS12. אפשר ליצור מאגר מפתחות PKCS12 באמצעות פקודות OpenSSL סטנדרטיות. כשמשתמשים במאגר מפתחות של PKCS12, צריך להגדיר את KEY_ALGO=PKCS12
בקובץ התצורה.
הגדרת ממשק המשתמש של Edge בזמן TLS מסתיים במאזן העומסים
אם יש לכם מאזן עומסים שמעביר בקשות לממשק המשתמש של Edge, תוכלו לסיים את חיבור ה-TLS במאזן העומסים, ואז להגדיר את מאזן העומסים להעביר את הבקשות לממשק המשתמש של Edge דרך HTTP. ההגדרה הזו נתמכת, אבל צריך להגדיר את מאזן העומסים ואת ממשק המשתמש של Edge בהתאם.
ההגדרה הנוספת נדרשת כשממשק המשתמש של Edge שולח למשתמשים אימיילים להגדרת הסיסמה שלהם כשהם נוצרים, או כשהם מבקשים לאפס סיסמה שאבדה. האימייל הזה מכילה כתובת URL שהמשתמש בוחר כדי להגדיר או לאפס סיסמה. כברירת מחדל, אם ממשק המשתמש של Edge לא מוגדר לשימוש ב-TLS, כתובת ה-URL באימייל שנוצר משתמשת בפרוטוקול HTTP ולא ב-HTTPS. צריך להגדיר את מאזן העומסים ואת ממשק Edge UI כך שייצרו כתובת אימייל שמשתמשת ב-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