אישורי SSL בניהול עצמי הם אישורים שאתם מקבלים, מקצים ומחדשים בעצמכם. אפשר להשתמש במשאב הזה כדי לאבטח את התקשורת בין הלקוחות לבין מאזן העומסים.
אישורים בניהול עצמי יכולים להיות כל שילוב של סוגי האישורים הבאים:
- אימות דומיין (DV)
- אימות הארגון (OV)
- אימות מורחב (EV)
אישורים בניהול עצמי נתמכים במאזני העומסים הבאים:
- אישורים גלובליים
- מאזן עומסים גלובלי חיצוני של אפליקציות (ALB)
- מאזן עומסים קלאסי של אפליקציות (ALB)
- מאזן עומסי רשת חיצוני לשרת proxy (עם שרת proxy של SSL ביעד)
- אישורים אזוריים
- מאזן עומסים חיצוני אזורי של אפליקציות (ALB)
- מאזן עומסים פנימי אזורי של אפליקציות (ALB)
בדף הזה מתואר התהליך של קבלת אישור תקף של Compute Engine, ואז העלאה של האישור כדי ליצור משאב של אישור SSL. Google Cloud
כדי ליצור אישורים שמנוהלים על ידי Google באמצעות Certificate Manager, אפשר לעיין בסקירה הכללית של הפריסה.
לפני שמתחילים
- חשוב לקרוא את הסקירה הכללית על אישורי SSL.
- ודאו שיש לכם את שמות הדומיין שבהם אתם רוצים להשתמש לאישור ה-SSL בניהול עצמי. אם אתם משתמשים ב-Cloud Domains, תוכלו לעיין במאמר שלב 1: רישום שם דומיין באמצעות Cloud Domains.
הרשאות
כדי לבצע את המשימות במדריך הזה, אתם צריכים להיות מסוגלים ליצור ולשנות אישורי SSL בפרויקט. אפשר לעשות את זה אם מתקיים אחד מהתנאים הבאים:
- אתם מוגדרים כבעלים או כעורכים (
roles/ownerאוroles/editor) של הפרויקט. - יש לכם בפרויקט את התפקידים אדמין לענייני אבטחה ב-Compute (
compute.securityAdmin) ואדמין רשת ב-Compute (compute.networkAdmin). - יש לכם תפקיד בהתאמה אישית לפרויקט שכולל את ההרשאות
compute.sslCertificates.*ואחת או יותר מההרשאותcompute.targetHttpsProxies.*ו-compute.targetSslProxies.*, בהתאם לסוג איזון העומסים שבו אתם משתמשים.
שלב 1: יצירת מפתח פרטי ותעודה
אם כבר יש לכם מפתח פרטי ואישור מרשות אישורים (CA), דלגו על הקטע הזה ועברו אל יצירת משאב של אישור SSL.
בחירה או יצירה של מפתח פרטי
Google Cloud אישור SSL כולל מפתח פרטי ואת האישור עצמו, שניהם בפורמט PEM. המפתח הפרטי צריך לעמוד בקריטריונים הבאים:
- הקובץ צריך להיות בפורמט PEM.
- אי אפשר להגן עליו באמצעות ביטוי גישה. Google Cloud שומר את המפתח הפרטי בפורמט מוצפן משלו.
- אלגוריתם ההצפנה שלו חייב להיות RSA או ECDSA. כדי לדעת באילו סוגי מפתחות אפשר להשתמש, אפשר לעיין במאמר בנושא סוגי מפתחות נתמכים.
כדי ליצור מפתח פרטי חדש, משתמשים באחת מהפקודות הבאות של OpenSSL.
יוצרים מפתח פרטי RSA-2048:
openssl genrsa -out PRIVATE_KEY_FILE 2048
יצירת מפתח פרטי ECDSA P-256:
openssl ecparam -name prime256v1 -genkey -noout -out PRIVATE_KEY_FILE
מחליפים את PRIVATE_KEY_FILE בנתיב ובשם הקובץ של המפתח הפרטי החדש.
יצירת בקשת חתימה על אישור (CSR)
אחרי שיש לכם מפתח פרטי, אתם יכולים ליצור בקשה לחתימת אישור (CSR) בפורמט PEM באמצעות OpenSSL. ה-CSR צריך לעמוד בקריטריונים הבאים:
- הקובץ צריך להיות בפורמט PEM.
- הוא צריך לכלול שם נפוץ (
CN) או מאפיין של שם חלופי של בעלים (subject) (SAN). מבחינה מעשית, התעודה צריכה להכיל גם את המאפייניםCNוגם את המאפייניםSAN, גם אם היא מיועדת לדומיין יחיד. לקוחות מודרניים, כמו הגרסאות הנוכחיות של macOS ו-iOS, לא מסתמכים רק על המאפייןCN.
כדי ליצור CSR, פועלים לפי השלבים הבאים:
יוצרים קובץ תצורה של OpenSSL. בדוגמה הבאה, השמות החלופיים לנושא מוגדרים ב-
[sans_list].cat <<'EOF' >CONFIG_FILE [req] default_bits = 2048 req_extensions = extension_requirements distinguished_name = dn_requirements prompt = no [extension_requirements] basicConstraints = CA:FALSE keyUsage = nonRepudiation, digitalSignature, keyEncipherment subjectAltName = @sans_list [dn_requirements] countryName = Country Name (2 letter code) stateOrProvinceName = State or Province Name (full name) localityName = Locality Name (eg, city) 0.organizationName = Organization Name (eg, company) organizationalUnitName = Organizational Unit Name (eg, section) commonName = Common Name (e.g. server FQDN or YOUR name) emailAddress = Email Address [sans_list] DNS.1 = SUBJECT_ALTERNATIVE_NAME_1 DNS.2 = SUBJECT_ALTERNATIVE_NAME_2 EOF
מריצים את פקודת OpenSSL הבאה כדי ליצור קובץ בקשת חתימה על אישור (CSR). הפקודה היא אינטראקטיבית. תתבקשו להזין מאפיינים חוץ מהשמות החלופיים של הנושא, שהגדרתם ב-
[sans_list]של CONFIG_FILE בשלב הקודם.openssl req -new -key PRIVATE_KEY_FILE \ -out CSR_FILE \ -config CONFIG_FILE
בשני השלבים, מחליפים את הערכים הבאים:
- CONFIG_FILE: הנתיב, כולל שם הקובץ, לקובץ התצורה של OpenSSL (אפשר למחוק את הקובץ אחרי שמסיימים את התהליך הזה)
SUBJECT_ALTERNATIVE_NAME_1 ו-SUBJECT_ALTERNATIVE_NAME_2: שמות חלופיים לנושא האישור
אם האישור שלכם הוא רק לשם מארח אחד, צריך להגדיר רק שם חלופי של בעלים (subject) אחד שזהה לשם הנפוץ. אם אתם צריכים יותר משני שמות חלופיים לנושא, מוסיפים אותם לקובץ ההגדרות ומגדילים את המספר אחרי
DNS(DNS.3,DNS.4וכו').PRIVATE_KEY_FILE: הנתיב לקובץ המפתח הפרטי
CSR_FILE: הנתיב, כולל שם הקובץ, של ה-CSR
חתימה על ה-CSR
כשסמכות אישורים (CA) חותמת על CSR, היא משתמשת במפתח הפרטי שלה כדי ליצור אישור. משתמשים באחת מהשיטות הבאות כדי לחתום על ה-CSR:
שימוש ב-CA מהימן באופן ציבורי
אם מבקשים מרשות אישורים מהימנה באופן ציבורי לחתום על ה-CSR, כל הלקוחות שסומכים על רשות האישורים הציבורית הזו סומכים גם על האישור שמתקבל. כדי ליצור אישור חתום, רשות האישורים הציבורית צריכה רק את ה-CSR שלכם.
שימוש ב-CA פנימי משלכם
אם אתם מנהלים הרשות שמנפיקה את האישורים (CA) משלכם, אתם יכולים להשתמש בה כדי לחתום על ה-CSR. שימוש ב-CA כדי לחתום על ה-CSR יוצר אישור מהימן באופן פנימי אם הלקוחות שלכם הוגדרו גם הם כך שיסמכו על ה-CA שלכם.
שימוש באישור עם חתימה עצמית
אם משתמשים באותו מפתח פרטי ששימש ליצירת ה-CSR כדי לחתום על ה-CSR, נוצר אישור עם חתימה עצמית. מומלץ להשתמש באישורים בחתימה עצמית רק לבדיקות.
ב-Google Cloud אין תמיכה באימות מצד הלקוח של אישורי שרת בחתימה עצמית. לכן, צריך להגדיר את הלקוח כך שידלג על אימות האישור. לדוגמה, אפשר ליצור לקוח של דפדפן אינטרנט שמציג הודעה עם שאלה אם רוצים לתת אמון באישור בחתימה עצמית.
אם אתם מנהלים רשות אישורים משלכם, או אם אתם רוצים ליצור אישור בחתימה עצמית לצורך בדיקה, אתם יכולים להשתמש בפקודת OpenSSL הבאה:
openssl x509 -req \
-signkey PRIVATE_KEY_FILE \
-in CSR_FILE \
-out CERTIFICATE_FILE \
-extfile CONFIG_FILE \
-extensions extension_requirements \
-days TERM
מחליפים את מה שכתוב בשדות הבאים:
- PRIVATE_KEY_FILE: הנתיב למפתח הפרטי של רשות האישורים. אם יוצרים אישור עם חתימה עצמית לצורך בדיקה, המפתח הפרטי הזה זהה למפתח שמשמש ליצירת בקשת חתימה על אישור (CSR).
- CSR_FILE: הנתיב ל-CSR
- CERTIFICATE_FILE: הנתיב לקובץ האישור שרוצים ליצור
- TERM: מספר הימים מעכשיו שבהם הלקוחות שמאמתים את האישור צריכים להתייחס אליו כאל אישור תקף
תווים כלליים בשמות נפוצים
באפשרותכם להשתמש בתו כללי בשם הנפוץ של אישורי ה-SSL שמנוהלים על ידכם. לדוגמה, אישור עם השם הנפוץ *.example.com. תואם לשמות המארחים www.example.com ו-foo.example.com, אבל לא לשמות המארחים a.b.example.com או example.com. כשמאזן העומסים בוחר אישור, הוא תמיד מעדיף להתאים שם מארח לאישורים ללא תווים כלליים על פני אישורים עם תווים כלליים.
אין תמיכה באישורים עם מקטעי תו כללי לחיפוש, כמו f*.example.com.
שלב 2: יצירת משאב של אישור SSL בניהול עצמי
כדי ליצור Google Cloud משאב של אישור SSL, צריך שיהיו לכם מפתח פרטי ואישור. אם עדיין לא יצרתם או קיבלתם מפתח פרטי ותעודה, תוכלו להיעזר במאמר בנושא יצירת מפתח פרטי ותעודה.
אחרי שיוצרים אישור, אי אפשר לשנות את ההיקף שלו מגלובלי לאזורי או מאזורי לגלובלי.
המסוף
אפשר ליצור אישורי SSL גלובליים בכרטיסייה אישורים קלאסיים במסוף Google Cloud .
אי אפשר ליצור אישורי SSL אזוריים בכרטיסייה אישורים קלאסיים במסוף Google Cloud . אפשר להשתמש ב-gcloud או ב-API בארכיטקטורת REST.
אפשר גם ליצור אישורי SSL אזוריים כחלק מתהליך העבודה של יצירת מאזן עומסים אזורי של אפליקציות (ALB) באמצעות מסוף Google Cloud .
- נכנסים לכרטיסייה Classic Certificate במסוף Google Cloud .
מעבר לגרסה הקלאסית של הכלי 'אישורים' - לוחצים על Create SSL certificate (יצירת אישור SSL).
- מזינים שם לאישור, ואפשר גם להוסיף תיאור.
- בוחרים באפשרות העלאת האישור שלי.
- מדביקים את האישור או לוחצים על העלאה כדי לנווט אל קובץ האישור.
אתם יכולים לבחור לכלול את שרשרת אישורי ה-CA באותו קובץ כמו האישור. Google Cloud לא מאמת את שרשרת האישורים בשבילכם – האימות הוא באחריותכם. - מדביקים את המפתח הפרטי או לוחצים על העלאה כדי לנווט אל קובץ המפתח הפרטי.
- לוחצים על יצירה.
gcloud
כדי ליצור אישור SSL גלובלי, משתמשים בפקודה gcloud compute ssl-certificates
create עם הדגל --global:
gcloud compute ssl-certificates create CERTIFICATE_NAME \
--certificate=CERTIFICATE_FILE \
--private-key=PRIVATE_KEY_FILE \
--global
כדי ליצור אישור SSL אזורי, משתמשים בפקודה gcloud compute ssl-certificates
create עם הדגל --region:
gcloud compute ssl-certificates create CERTIFICATE_NAME \
--certificate=CERTIFICATE_FILE \
--private-key=PRIVATE_KEY_FILE \
--region=REGION
מחליפים את מה שכתוב בשדות הבאים:
- CERTIFICATE_NAME: השם של משאב האישור שרוצים ליצור
CERTIFICATE_FILE: הנתיב לקובץ אישור בפורמט PEM
אתם יכולים לכלול את שרשרת אישורי ה-CA באותו קובץ כמו האישור. Google Cloud לא מאמתת את שרשרת האישורים בשבילכם – אתם אחראים לאימות.
PRIVATE_KEY_FILE: הנתיב למפתח פרטי בפורמט PEM. המפתח הפרטי לא יכול להיות מוגן באמצעות ביטוי סיסמה.
REGION: אם רלוונטי, האזור של אישור ה-SSL האזורי
אם משאב האישור הזה מיועד למאזן עומסים פנימי של אפליקציות או למאזן עומסים חיצוני אזורי של אפליקציות, האזור חייב להיות זהה לאזור של מאזן העומסים.
Java
כדי להשתמש בשיטות ה-API, קודם צריך לקרוא את קובצי האישור והמפתח הפרטי, ואז ליצור את אישור ה-SSL. הסיבה לכך היא שבקשת ה-API צריכה לכלול את תוכן הקבצים.
בדוגמה הבאה אפשר לראות איך עושים את זה באמצעות Java.
בשביל אישורי SSL גלובליים, משתמשים בשיטת ה-API sslCertificates.insert:
כדי להשתמש באישורי SSL אזוריים, צריך להשתמש בשיטת ה-API regionSslCertificates.insert:
דוגמאות קוד נוספות זמינות בדף ההפניה ל-API.
Python
כדי להשתמש בשיטות ה-API, קודם צריך לקרוא את קובצי האישור והמפתח הפרטי, ואז ליצור את אישור ה-SSL. הסיבה לכך היא שבקשת ה-API צריכה לכלול את תוכן הקבצים.
בדוגמאות הבאות אפשר לראות איך עושים את זה באמצעות Python.
בשביל אישורי SSL גלובליים, משתמשים בשיטת ה-API sslCertificates.insert:
כדי להשתמש באישורי SSL אזוריים, צריך להשתמש בשיטת ה-API regionSslCertificates.insert:
דוגמאות קוד נוספות זמינות בדף ההפניה ל-API.
שלב 3: משייכים אישור SSL לשרת proxy של יעד
צריך לשייך לפחות אישור SSL אחד לכל שרת proxy של HTTPS או SSL. אפשר להגדיר את שרת ה-proxy של היעד עם עד המספר המקסימלי של אישורי SSL לכל שרת proxy של יעד HTTPS או יעד SSL. אפשר להפנות לכמה אישורים בניהול עצמי באותו שרת proxy ליעד.
המסוף
כשמשתמשים במסוף Google Cloud כדי לערוך מאזן עומסים קיים, אישור ה-SSL משויך אוטומטית לפרוקסי היעד המתאים.
gcloud
כדי לשייך אישור SSL גלובלי לשרת proxy של HTTPS, משתמשים בפקודה gcloud compute target-https-proxies
update עם הדגלים --global ו---global-ssl-certificates:
gcloud compute target-https-proxies update TARGET_PROXY_NAME \
--global \
--ssl-certificates=SSL_CERTIFICATE_LIST \
--global-ssl-certificates
כדי לשייך אישור SSL גלובלי לשרת proxy של SSL יעד, משתמשים בפקודה gcloud compute target-ssl-proxies
update:
gcloud compute target-ssl-proxies update TARGET_PROXY_NAME \
--ssl-certificates=SSL_CERTIFICATE_LIST
כדי לשייך אישור SSL אזורי לשרת proxy של HTTPS ליעד, משתמשים בפקודה gcloud compute target-https-proxies
update עם הדגלים --region ו---ssl-certificates-region:
gcloud compute target-https-proxies update TARGET_PROXY_NAME \
--region=REGION \
--ssl-certificates=SSL_CERTIFICATE_LIST \
--ssl-certificates-region=REGION
מחליפים את מה שכתוב בשדות הבאים:
-
TARGET_PROXY_NAME: השם של שרת ה-proxy ליעד של מאזן העומסים -
REGION(אם רלוונטי): האזור של שרת proxy אזורי ליעד ואישור SSL אזורי; האזורים צריכים להיות זהים
SSL_CERTIFICATE_LIST: רשימה מופרדת בפסיקים של שמות אישורי SSLGoogle Cloudחשוב לוודא שרשימת האישורים שאליהם יש הפניה כוללת את כל אישורי ה-SSL הישנים והתקפים, וגם את אישור ה-SSL החדש. הפקודה
gcloud compute target-ssl-proxies updateמחליפה את הערכים המקוריים של--ssl-certificatesבערך החדש.
API
כדי לשייך אישור SSL גלובלי ל-HTTPS proxy יעד, שולחים בקשת POST לשיטה targetHttpsProxies.insert, ומחליפים את PROJECT_ID במזהה הפרויקט.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpsProxy
{
"name": "l7-xlb-proxy",
"urlMap": "projects/PROJECT_ID/global/urlMaps/l7-xlb-map",
"sslCertificates": /projectsPROJECT_IDglobal/sslCertificates/SSL_CERT_NAME
}
כדי לשייך אישור SSL גלובלי ל-HTTPS proxy יעד, שולחים בקשת POST לשיטה targetSslProxies.insert, ומחליפים את PROJECT_ID במזהה הפרויקט.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetSslProxy
{
"name": "l7-ssl-proxy",
"sslCertificates": /projectsPROJECT_IDglobal/sslCertificates/SSL_CERT_NAME
}
כדי לשייך אישור SSL אזורי ל-HTTPS proxy יעד, שולחים בקשת POST לשיטה targetHttpsProxies.insert ומחליפים את PROJECT_ID במזהה הפרויקט.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpsProxy
{
"name": "l7-xlb-proxy",
"urlMap": "projects/PROJECT_ID/global/urlMaps/l7-ilb-map",
"region": "us-west1"
"sslCertificates": /projectsPROJECT_IDregions/us-west1/sslCertificates/SSL_CERT_NAME
}
שלב 4: מעדכנים את רשומות ה-DNS מסוג A ו-AAAA כך שיפנו לכתובת ה-IP של מאזן העומסים
באתר של הרשם, מארח ה-DNS או ספק האינטרנט (במקום שבו מנוהלות רשומות ה-DNS), מוסיפים או מעדכנים את רשומות ה-A של ה-DNS (ל-IPv4) ואת רשומות ה-AAAA של ה-DNS (ל-IPv6) עבור הדומיינים וכל תת-הדומיינים, כך שהן יפנו לכתובת ה-IP שמשויכת לכלל או לכללי ההעברה של מאזן העומסים.
אם אתם משתמשים ב-Cloud DNS וב-Cloud Domains, אתם צריכים להגדיר את הדומיינים ולעדכן את שרתי השמות.
אם אתם משתמשים בכמה דומיינים לאישור אחד, אתם צריכים להוסיף או לעדכן רשומות DNS לכל הדומיינים ולכל תת-הדומיינים, כך שכולם יפנו לכתובת ה-IP של מאזן העומסים.
אחרי שמחכים שהפצת ה-DNS תושלם, אפשר לאמת את ההגדרה באמצעות הפעלת הפקודה dig. לדוגמה,
נניח שהדומיין שלכם הוא www.example.com. מריצים את הפקודה הבאה dig:
dig www.example.com
; <<>> DiG 9.10.6 <<>> www.example.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31748 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;www.example.com. IN A ;; ANSWER SECTION: www.example.com. 1742 IN CNAME www.example.com.edgekey.net. www.example.com.edgekey.net. 21330 IN CNAME www.example.com.edgekey.net.globalredir.akadns.net. www.example.com.edgekey.net.globalredir.akadns.net. 3356 IN CNAME e6858.dsce9.akamaiedge.net. e6858.dsce9.akamaiedge.net. 19 IN A 203.0.113.5 ;; Query time: 43 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Wed Jun 03 16:54:44 PDT 2020 ;; MSG SIZE rcvd: 193
בדוגמה הזו, 203.0.113.5 היא כתובת ה-IP של איזון העומסים.
שלב 5: בדיקה באמצעות OpenSSL
יכול להיות שיחלפו עד 30 דקות עד שמאזן העומסים יתחיל להשתמש באישור ה-SSL בניהול עצמי.
כדי לבדוק, מריצים את פקודת OpenSSL הבאה, מחליפים את DOMAIN בשם ה-DNS ואת IP_ADDRESS בכתובת ה-IP של איזון העומסים.
echo | openssl s_client -showcerts -servername DOMAIN -connect IP_ADDRESS:443 -verify 99 -verify_return_error
הפקודה הזו מציגה את האישורים שמאזן העומסים מציג ללקוח. בנוסף למידע מפורט אחר, הפלט צריך לכלול את שרשרת האישורים ואת Verify return code: 0 (ok).
עבודה עם אישורי SSL בניהול עצמי
בקטעים הבאים מוסבר איך לרשום, לראות, למחוק ולהחליף משאבי אישורי SSL.
הצגת רשימת אישורי SSL
המסוף
אפשר לבדוק את הסטטוס של אישורי SSL גלובליים בכרטיסייה אישורים קלאסיים בדף Certificate Manager.
אי אפשר לתחזק אישורי SSL אזוריים במסוף Google Cloud .
אפשר להשתמש ב-gcloud או ב-API בארכיטקטורת REST.
- עוברים לכרטיסייה Classic Certificates במסוף Google Cloud .
מעבר לגרסה הקלאסית של הכלי 'אישורים' - (אופציונלי) מסננים את רשימת אישורי ה-SSL.
gcloud
כדי לראות את רשימת אישורי ה-SSL הגלובליים, משתמשים בפקודה gcloud compute ssl-certificates
list עם הדגל --global:
gcloud compute ssl-certificates list \ --global
כדי להציג רשימה של אישורי SSL אזוריים, משתמשים בפקודה gcloud compute ssl-certificates
list עם המסנן region:
gcloud compute ssl-certificates list \ --filter="region:(REGION ...)"
מחליפים את מה שכתוב בשדות הבאים:
- REGION: אזור. אפשר לכלול כמה אזורים ברשימה מופרדת ברווחים. Google Cloud
תיאור של אישורי SSL
המסוף
אפשר לראות פרטים נוספים על אישורי ה-SSL הגלובליים בכרטיסייה אישורים קלאסיים בדף Certificate Manager.
- נכנסים לדף Classic Certificates במסוף Google Cloud .
מעבר לגרסה הקלאסית של הכלי 'אישורים' - (אופציונלי) מסננים את רשימת אישורי ה-SSL.
- כדי לראות פרטים נוספים, לוחצים על שם האישור.
gcloud
כדי להוסיף תיאור לאישור SSL גלובלי, משתמשים בפקודה gcloud compute ssl-certificates
describe עם הדגל --global:
gcloud compute ssl-certificates describe CERTIFICATE_NAME \ --global
כדי להוסיף תיאור לאישור SSL אזורי, משתמשים בפקודה gcloud compute ssl-certificates
describe עם הדגל --region:
gcloud compute ssl-certificates describe CERTIFICATE_NAME \ --region=REGION
מחליפים את מה שכתוב בשדות הבאים:
- CERTIFICATE_NAME: השם של אישור ה-SSL
- REGION: אזור Google Cloud
מחיקת אישורי SSL
לפני שמוחקים אישור SSL, צריך לעדכן כל פרוקסי יעד שמפנה לאישור. לכל שרת proxy ליעד, מריצים את הפקודה המתאימה gcloud update כדי לעדכן את SSL_CERTIFICATE_LIST של שרת ה-proxy ליעד כך שהוא לא יכלול יותר את אישור ה-SSL שצריך למחוק. כל פרוקסי SSL או פרוקסי HTTPS של יעד חייב להפנות לאישור SSL אחד לפחות.
אחרי שמעדכנים את פרוקסי היעד, אפשר למחוק את אישור ה-SSL.
המסוף
אפשר למחוק אישורי SSL גלובליים בכרטיסייה אישורים קלאסיים בדף Certificate Manager.
- עוברים לכרטיסייה Classic Certificates במסוף Google Cloud .
מעבר לגרסה הקלאסית של הכלי 'אישורים' - בוחרים את אישור ה-SSL שרוצים למחוק.
- לוחצים על מחיקה.
- כדי לאשר, לוחצים שוב על מחיקה.
gcloud
כדי למחוק אישור SSL גלובלי, משתמשים בפקודה gcloud compute ssl-certificates
delete עם הפקודה --global:
gcloud compute ssl-certificates delete CERTIFICATE_NAME \
--global
כדי למחוק אישור SSL אזורי, משתמשים בפקודה gcloud compute ssl-certificates
delete עם הפקודה --region:
gcloud compute ssl-certificates delete CERTIFICATE_NAME \
--region=REGION
מחליפים את מה שכתוב בשדות הבאים:
- CERTIFICATE_NAME: השם של אישור ה-SSL
- REGION: אזור Google Cloud
החלפה או חידוש של אישור SSL לפני שתוקפו פג
בצעו את השלבים הבאים אם עליכם להחליף, לחדש או לסובב אישור SSL:
מריצים את הפקודה
gcloud compute ssl-certificates describeעבור האישור הנוכחי כדי לבדוק אם תוקף האישור עומד לפוג.יוצרים משאב חדש של אישור SSL. לכל אישור SSL חדש צריך להיות שם ייחודי בפרויקט.
מעדכנים את שרת ה-proxy של היעד כדי לנתק את אישור ה-SSL הישן ולהוסיף את האישור החדש. חשוב לכלול את כל אישורי ה-SSL הקיימים שרוצים לשמור.
כדי למנוע השבתה, מריצים פקודה אחת של
gcloudעם הדגל--ssl-certificates. לדוגמה:למאזני עומסים גלובליים חיצוניים של אפליקציות:
משתמשים בפקודה
gcloud compute target-https-proxies updateעם הדגל--global.gcloud compute target-https-proxies update TARGET_PROXY_NAME \ --global \ --ssl-certificates=new-ssl-cert,other-certificates \ --global-ssl-certificates
למאזני עומסים חיצוניים אזוריים של אפליקציות ולמאזני עומסים פנימיים אזוריים של אפליקציות:
משתמשים בפקודה
gcloud compute target-https-proxies updateעם הדגל--region.gcloud compute target-https-proxies update TARGET_PROXY_NAME \ --region=REGION \ --ssl-certificates=new-ssl-cert,other-certificates \ --ssl-certificates-region=REGION
למאזנים חיצוניים של עומסי רשת בשרת proxy:
משתמשים בפקודה
gcloud compute target-ssl-proxies updateעם הדגל--backend-service.gcloud compute target-ssl-proxies update TARGET_PROXY_NAME \ --ssl-certificates=new-ssl-cert,other-certificates
מריצים את פקודת OpenSSL הבאה כדי לוודא שמאזן העומסים מציג את אישור ההחלפה:
echo | openssl s_client -showcerts -connect IP_ADDRESS:443 -verify 99 -verify_return_error
ממתינים 15 דקות כדי לוודא שפעולת ההחלפה הועברה לכל ממשקי הקצה של Google (GFE).
(אופציונלי) מחיקת אישור ה-SSL הישן.
עדכון של אישורי SSL באופן תקופתי
בפתרון לדוגמה הזה, סטטוס האישורים שמשמשים לאיזון עומסים ב- Google Cloud נבדק מעת לעת, והאישורים מוחלפים כשהם מגיעים לאחוז מסוים מתוחלת החיים שלהם. הכלי משתמש ב-CAs שהוגדרו באמצעות Certificate Authority Service.
הפתרון הזה פועל עם מאזני העומסים הבאים:
- מאזן עומסים גלובלי חיצוני של אפליקציות (ALB)
- מאזן עומסים קלאסי של אפליקציות (ALB)
- מאזן עומסים חיצוני אזורי של אפליקציות (ALB)
- מאזן עומסים פנימי של אפליקציות (ALB)
- מאזן עומסי רשת חיצוני לשרת proxy עם שרת proxy של SSL
המאמרים הבאים
- כדי לפתור בעיות שקשורות לאישורי SSL, אפשר לעיין במאמר פתרון בעיות שקשורות לאישורי SSL.