הגדרת קבוצות של כתובות

קבוצות כתובות מאפשרות לכם לשלב כמה כתובות IP וטווחים של כתובות IP ביחידה לוגית אחת עם שם, שבה תוכלו להשתמש בכמה מוצרים. במאמר הזה נסביר איך להשתמש בקבוצות כתובות עם כללי מדיניות האבטחה של Google Cloud Armor. כדי להשתמש בקבוצות כתובות, צריך מינוי פעיל ל-Google Cloud Armor Enterprise.

לפני שמתחילים

לפני שמגדירים קבוצות כתובות, צריך קודם להפעיל את Network Security API‏ networksecurity.googleapis.com.

תפקידי IAM

כדי ליצור ולנהל קבוצת כתובות, צריך את התפקיד Compute Network Admin (אדמין של רשת מחשוב) (roles/compute.networkAdmin). אפשר גם להגדיר תפקיד בהתאמה אישית עם קבוצה מקבילה של הרשאות.

בטבלה הבאה מפורטות ההרשאות של ניהול זהויות והרשאות גישה (IAM) שנדרשות לביצוע משימות בקבוצות כתובות.

משימה שם תפקיד IAM הרשאות IAM
יצירה וניהול של קבוצות כתובות

אדמין של רשת מחשוב (roles/compute.networkAdmin)

networksecurity.addressGroups.*
חיפוש והצגה של קבוצות כתובות

משתמש ברשת Compute (roles/compute.networkUser)

networksecurity.addressGroups.list
networksecurity.addressGroups.get
networksecurity.addressGroups.use

במאמר אינדקס של תפקידים והרשאות ב-IAM מוסבר אילו תפקידים כוללים הרשאות ספציפיות ב-IAM.

שימוש בקבוצות כתובות בהיקף הפרויקט

בקטעים הבאים מוסבר איך ליצור ולשנות קבוצות כתובות ברמת הפרויקט באמצעות מסוף Google Cloud או Google Cloud CLI, ואיך להשתמש בקבוצות כתובות ברמת הפרויקט במדיניות האבטחה.

יצירה או שינוי של קבוצות כתובות בהיקף הפרויקט

בקטעים הבאים מוסבר איך ליצור קבוצות כתובות בהיקף הפרויקט, איך להוסיף כתובות לקבוצות כתובות בהיקף הפרויקט ולהסיר מהן כתובות, ואיך למחוק קבוצות כתובות בהיקף הפרויקט.

יצירת קבוצת כתובות בהיקף הפרויקט

כשיוצרים קבוצת כתובות, צריך לציין את הקיבולת שלה ואת גרסת כתובת ה-IP באמצעות הדגלים --capacity ו---type בהתאמה. אחרי שיוצרים את קבוצת הכתובות, אי אפשר לשנות את הערכים האלה.

בנוסף, הקיבולת המקסימלית של Cloud Armor עשויה להיות גבוהה יותר מהקיבולת המקסימלית של מוצרים אחרים, כמו Cloud Next Generation Firewall. לכן, אם רוצים להשתמש באותה קבוצת כתובות ביותר ממוצר אחד, צריך להגדיר את הקיבולת כך שתהיה קטנה או שווה לקיבולת המקסימלית הנמוכה ביותר מבין המוצרים האלה.

המסוף

  1. נכנסים לדף Address groups במסוף Google Cloud .

    מעבר אל קבוצות כתובות

  2. בתפריט לבחירת פרויקטים, בוחרים את הפרויקט הרצוי (אם הוא מופיע).
  3. לוחצים על יצירת קבוצת כתובות.
  4. בשדה שם, מזינים שם.
  5. (אופציונלי): מוסיפים תיאור בשדה תיאור.
  6. בוחרים באפשרות בכל העולם בשדה היקף.
  7. בקטע Type (סוג), בוחרים באפשרות IPv4 או IPv6.
  8. בקטע Purpose (מטרה), בוחרים באפשרות Cloud Armor. לחלופין, אפשר לבחור באפשרות Firewall and Cloud Armor (חומת אש ו-Cloud Armor) אם אתם מתכננים להשתמש בקבוצת הכתובות גם עם כללי מדיניות של Cloud Next Generation Firewall.

    מידע נוסף על בחירת מטרה זמין במאמר מפרט של קבוצות כתובות.

  9. בשדה קיבולת, מזינים את הקיבולת של קבוצת הכתובות.

  10. בשדה כתובות IP, מזינים את כתובות ה-IP או טווחי כתובות ה-IP שרוצים לכלול בקבוצת הכתובות, ומפרידים ביניהם בפסיקים. לדוגמה, 1.1.1.0/24,1.2.0.0.

    מספר כתובות ה-IP או טווחי כתובות ה-IP לא יכול לחרוג מהקיבולת שהוגדרה.

  11. לוחצים על יצירה.

gcloud

בדוגמה הבאה השתמשנו בפקודה gcloud network-security address-groups create כדי ליצור קבוצת כתובות בשם GROUP_NAME עם קיבולת של 1,000 כתובות IPv4, שאפשר להשתמש בה גם ב-Cloud Armor וגם ב-Cloud NGFW:

 gcloud network-security address-groups create GROUP_NAME \
     --location global \
     --description  "address group description" \
     --capacity 1000 \
     --type IPv4 \
     --purpose DEFAULT,CLOUD_ARMOR

לחלופין, אפשר ליצור קבוצת כתובות עם קיבולת גדולה יותר על ידי הגדרת המטרה לCLOUD_ARMOR בלבד. בדוגמה הבאה, יוצרים קבוצת כתובות עם קיבולת של 10,000 טווחי כתובות IP של IPv6:

 gcloud network-security address-groups create GROUP_NAME \
     --location global \
     --description  "address group description" \
     --capacity 10000 \
     --type IPv6 \
     --purpose CLOUD_ARMOR

הוספת פריטים לקבוצת כתובות בהיקף הפרויקט

אחרי שיוצרים קבוצת כתובות, אפשר להוסיף פריטים.

המסוף

  1. נכנסים לדף Address groups במסוף Google Cloud .

    מעבר אל קבוצות כתובות

  2. בתפריט לבחירת פרויקטים, בוחרים את הפרויקט הרצוי (אם הוא מופיע).
  3. כדי לערוך קבוצת כתובות, לוחצים על השם שלה.
  4. לוחצים על Edit.
  5. בשדה כתובות IP, מוסיפים את הפריטים החדשים לרשימת כתובות ה-IP שמופרדות בפסיקים. לחלופין, אפשר ללחוץ על ייבוא כתובות כדי להעלות קובץ CSV עם רשימה של כתובות IP.
  6. לוחצים על Save.

gcloud

בדוגמה הבאה, משתמשים בפקודה gcloud network-security address-groups add-items כדי להוסיף את כתובות ה-IP‏ 192.168.1.2,‏ 192.168.1.8 ו-192.168.1.9 לקבוצת הכתובות GROUP_NAME. מזינים רשימה של פריטים שמופרדים בפסיקים באמצעות הדגל --item:

 gcloud network-security address-groups add-items GROUP_NAME \
     --location global \
     --items 192.168.1.2,192.168.1.8,192.168.1.9

הסרת פריטים מקבוצת כתובות בהיקף הפרויקט

כדי להסיר פריטים מקבוצת כתובות:

המסוף

  1. נכנסים לדף Address groups במסוף Google Cloud .

    מעבר אל קבוצות כתובות

  2. בתפריט לבחירת פרויקטים, בוחרים את הפרויקט הרצוי (אם הוא מופיע).
  3. כדי לערוך קבוצת כתובות, לוחצים על השם שלה.
  4. לוחצים על Edit.
  5. בשדה כתובות IP, מוחקים את הפריטים שרוצים להסיר מהרשימה מופרדת בפסיקים של כתובות ה-IP.
  6. לוחצים על Save.

gcloud

בדוגמה הבאה נעשה שימוש בפקודה gcloud network-security address-groups remove-items כדי להסיר את כתובות ה-IP‏ 192.168.1.2, 192.168.1.8 ו-192.168.1.9 שנוספו בפקודה הקודמת:

 gcloud network-security address-groups remove-items GROUP_NAME \
     --location global \
     --items 192.168.1.2,192.168.1.8,192.168.1.9

שכפול של קבוצת כתובות בהיקף פרויקט

כדי לשכפל פריטים מקבוצת כתובות:

המסוף

  1. נכנסים לדף Address groups במסוף Google Cloud .

    מעבר אל קבוצות כתובות

  2. בתפריט לבחירת פרויקטים, בוחרים את הפרויקט הרצוי (אם הוא מופיע).
  3. כדי לשכפל קבוצת כתובות, לוחצים על השם של קבוצת הכתובות.
  4. לוחצים על Clone (שיבוט).
  5. בשדה Name (שם), מזינים את השם של קבוצת הכתובות המשוכפלת שרוצים ליצור.
  6. לוחצים על Clone (שיבוט).

gcloud

בדוגמה הבאה, משתמשים בפקודה gcloud network-security address-groups clone-items כדי לשכפל את כתובות ה-IP מקבוצת כתובות מקור SOURCE_GROUP_NAME לקבוצת כתובות יעד GROUP_NAME:

 gcloud network-security address-groups clone-items GROUP_NAME \
     --location global \
     --source SOURCE_GROUP_NAME

מחיקה של קבוצת כתובות בהיקף פרויקט

אי אפשר למחוק קבוצת כתובות אם יש הפניה אליה במשאב, כולל מדיניות חומת אש או מדיניות אבטחה. כדי למחוק קבוצת כתובות:

המסוף

  1. נכנסים לדף Address groups במסוף Google Cloud .

    מעבר אל קבוצות כתובות

  2. בתפריט לבחירת פרויקטים, בוחרים את הפרויקט הרצוי (אם הוא מופיע).
  3. מסמנים את התיבה לצד קבוצת הכתובות שרוצים למחוק. מוודאים שקבוצת הכתובות שנבחרה לא מוזכרת באף חומת אש או מדיניות אבטחה.
  4. לוחצים על מחיקה ואז שוב על מחיקה כדי לאשר.

gcloud

בדוגמה הבאה משתמשים בפקודה gcloud network-security address-groups delete כדי למחוק קבוצת כתובות בשם GROUP_NAME.

 gcloud network-security address-groups delete GROUP_NAME \
     --location global

שימוש בקבוצות כתובות בהיקף הפרויקט עם מדיניות אבטחה

אחרי שיוצרים קבוצת כתובות ומוסיפים לה כתובות IP, אפשר להשתמש בה עם כל כלל מדיניות אבטחה קיים של Cloud Armor לשרתי קצה עורפיים. בדוגמאות הבאות מוצגות שתי דרכים שונות לשימוש בקבוצות של כתובות.

דחיית קבוצה של כתובות IP

לצורך הדוגמה הזו, נניח שיש לכם קבוצה של כתובות IP בשם MALICIOUS_IPS עם 10,000 כתובות IP שאתם יודעים שהן זדוניות. אפשר לדחות את כל כתובות ה-IP האלה באמצעות כלל אחד במדיניות אבטחה deny עם תנאי ההתאמה הבא:

evaluateAddressGroup('MALICIOUS_IPS', origin.ip)

שימוש חוזר בקבוצה של טווחי כתובות IP בכמה כללי אבטחה

בדוגמה הזו, נניח שיש לכם את אותה רשימה של 10,000 כתובות IP כמו בדוגמה הקודמת, אבל חלק מכתובות ה-IP הן סורקי אינטרנט ידועים. אתם רוצים לחסום את כל כתובות ה-IP האלה משירותי קצה עורפיים מסוימים, אבל לאפשר לסורקי האינטרנט לגשת לשירותי קצה עורפיים אחרים כדי לשפר את האופטימיזציה למנועי חיפוש (SEO). כדי לחסום את הגישה של כל הכתובות אל BACKEND_SERVICE_1 ולאפשר את הגישה של טווחי כתובות ה-IP‏ 66.249.77.32/27 ו-66.249.77.64/27 אל BACKEND_SERVICE_2, פועלים לפי השלבים הבאים:

  1. יוצרים מדיניות אבטחה של קצה עורפי בשם POLICY_1 ומצרפים אותה אל BACKEND_SERVICE_1.
  2. ב-POLICY_1, יוצרים כלל deny עם תנאי ההתאמה הבא:

    evaluateAddressGroup('MALICIOUS_IPS', origin.ip)
    
  3. יוצרים מדיניות אבטחה שנייה של קצה עורפי בשם POLICY_2 ומצרפים אותה אל BACKEND_SERVICE_2.

  4. ב-POLICY_2, יוצרים כלל deny עם תנאי ההתאמה הבא, שמחריג את 66.249.77.32/27 ואת 66.249.77.64/27:

    evaluateAddressGroup('MALICIOUS_IPS', origin.ip, [66.249.77.32/27, 66.249.77.64/27])
    

שימוש בקבוצת כתובות כדי להתאים לכתובות IP של משתמשים

כדי להשתמש בקבוצת כתובות לצורך התאמה לכתובות IP של לקוחות מקוריים ("משתמשים"), צריך להגדיר את userIpRequestHeaders[] במדיניות האבטחה.

חשוב לציין שבתנאים הבאים, תקבלו את כתובת ה-IP של המקור של הבקשה ולא את כתובת ה-IP של הלקוח המקורי, כי ערך ברירת המחדל של origin.user_ip הוא הערך של origin.ip:

  • לא מגדירים את האפשרות userIpRequestHeaders[].
  • הכותרות שהוגדרו לא מופיעות.
  • הכותרות שהוגדרו מכילות ערכים לא חוקיים של כתובות IP.

לצורך הדוגמה הזו, נניח שיש לכם קבוצה של כתובות IP בשם MALICIOUS_IPS עם 10,000 כתובות IP שאתם יודעים שהן זדוניות. בנוסף, אתם משתמשים בשרת proxy במעלה הזרם, שכולל מידע על הלקוחות המקוריים בכותרת. אפשר לדחות את כל כתובות ה-IP האלה באמצעות כלל אחד במדיניות אבטחה deny עם תנאי ההתאמה הבא:

evaluateAddressGroup('MALICIOUS_IPS', origin.user_ip)

מידע נוסף על כתובות IP זמין במאמר בנושא מאפיינים.

מידע נוסף על כתובות ה-IP של משתמשים זמין במאמר סקירה כללית על כתובות ה-IP של משתמשים.

שימוש בקבוצות כתובות בהיקף הארגון

בקטעים הבאים מוסבר איך ליצור ולשנות קבוצות כתובות בהיקף הארגון באמצעות מסוף Google Cloud או Google Cloud CLI, ואיך להשתמש בקבוצות כתובות בהיקף הארגון במדיניות האבטחה.

יצירה או שינוי של קבוצות כתובות בהיקף הארגון

אפשר להשתמש בקבוצות כתובות בהיקף הארגון גם במדיניות אבטחה ברמת השירות וגם במדיניות אבטחה היררכית.

בקטעים הבאים מוסבר איך ליצור קבוצות כתובות בהיקף הארגון, איך להוסיף כתובות לקבוצות כתובות בהיקף הארגון ואיך להסיר כתובות מהן, ואיך למחוק קבוצות כתובות בהיקף הארגון.

יצירת קבוצת כתובות בהיקף הארגון

כשיוצרים קבוצת כתובות, צריך לציין את הקיבולת שלה ואת גרסת כתובת ה-IP באמצעות הדגלים --capacity ו---type בהתאמה. אחרי שיוצרים את קבוצת הכתובות, אי אפשר לשנות את הערכים האלה.

בנוסף, הקיבולת המקסימלית של Cloud Armor עשויה להיות גבוהה יותר מהקיבולת המקסימלית של מוצרים אחרים, כמו Cloud Next Generation Firewall. לכן, אם רוצים להשתמש באותה קבוצת כתובות ביותר ממוצר אחד, צריך להגדיר את הקיבולת כך שתהיה קטנה או שווה לקיבולת המקסימלית הנמוכה ביותר מבין המוצרים האלה.

המסוף

  1. נכנסים לדף Address groups במסוף Google Cloud .

    מעבר אל קבוצות כתובות

  2. בתפריט לבחירת פרויקטים, אם האפשרות זמינה, בוחרים את הארגון.
  3. לוחצים על יצירת קבוצת כתובות.
  4. בשדה שם, מזינים שם.
  5. אופציונלי: מוסיפים תיאור בשדה תיאור.
  6. בוחרים באפשרות בכל העולם בשדה היקף.
  7. בקטע Type (סוג), בוחרים באפשרות IPv4 או IPv6.
  8. בקטע Purpose (מטרה), בוחרים באפשרות Cloud Armor. לחלופין, אפשר לבחור באפשרות Cloud NGFW and Cloud Armor (Cloud NGFW ו-Cloud Armor) אם אתם מתכננים להשתמש בקבוצת הכתובות גם עם מדיניות Cloud Next Generation Firewall.

    למידע נוסף על בחירת ייעוד לקבוצת כתובות, אפשר לעיין במפרט.

  9. בשדה קיבולת, מזינים את הקיבולת של קבוצת הכתובות.

  10. בשדה כתובות IP, מזינים את כתובות ה-IP או טווחי כתובות ה-IP שרוצים לכלול בקבוצת הכתובות, ומפרידים ביניהם בפסיקים. לדוגמה, 1.1.1.0/24,1.2.0.0.

    מספר כתובות ה-IP או טווחי כתובות ה-IP לא יכול לחרוג מהקיבולת שהוגדרה.

  11. לוחצים על יצירה.

gcloud

בדוגמה הבאה משתמשים בפקודה gcloud network-security org-address-groups create כדי ליצור קבוצת כתובות בהיקף הארגון בשם GROUP_NAME עם קיבולת של 1,000 כתובות IPv4, שאפשר להשתמש בה גם ב-Cloud Armor וגם ב-Cloud NGFW:

 gcloud network-security org-address-groups create GROUP_NAME \
     --location global \
     --description  "org address group description" \
     --capacity 1000 \
     --type IPv4 \
     --purpose DEFAULT,CLOUD_ARMOR

לחלופין, אפשר ליצור קבוצת כתובות בהיקף הארגון עם קיבולת גדולה יותר על ידי הגדרת הייעוד ל-CLOUD_ARMOR בלבד. בדוגמה הבאה, יוצרים קבוצת כתובות עם קיבולת של 10,000 טווחי כתובות IPv6:

 gcloud network-security org-address-groups create GROUP_NAME \
     --location global \
     --description  "org address group description" \
     --capacity 10000 \
     --type IPv6 \
     --purpose CLOUD_ARMOR

הוספת פריטים לקבוצת כתובות בהיקף הארגון

אחרי שיוצרים קבוצת כתובות בהיקף הארגון, אפשר להוסיף פריטים.

המסוף

  1. נכנסים לדף Address groups במסוף Google Cloud .

    מעבר אל קבוצות כתובות

  2. בתפריט לבחירת פרויקטים, אם האפשרות זמינה, בוחרים את הארגון.
  3. כדי לערוך קבוצת כתובות, לוחצים על השם שלה.
  4. לוחצים על Edit.
  5. בשדה כתובות IP, מוסיפים את הפריטים החדשים לרשימת כתובות ה-IP שמופרדות בפסיקים. לחלופין, אפשר ללחוץ על ייבוא כתובות כדי להעלות קובץ CSV עם רשימה של כתובות IP.
  6. לוחצים על Save.

gcloud

בדוגמה הבאה, משתמשים בפקודה gcloud network-security org-address-groups add-items כדי להוסיף את כתובות ה-IP‏ 192.168.1.2,‏ 192.168.1.8 ו-192.168.1.9 לקבוצת הכתובות GROUP_NAME בהיקף הארגון. מזינים רשימה של פריטים שמופרדים בפסיקים באמצעות הדגל --items:

 gcloud network-security org-address-groups add-items GROUP_NAME \
     --location global \
     --items 192.168.1.2,192.168.1.8,192.168.1.9

הסרת פריטים מקבוצת כתובות בהיקף הארגון

כדי להסיר פריטים מקבוצת כתובות בהיקף הארגון:

המסוף

  1. נכנסים לדף Address groups במסוף Google Cloud .

    מעבר אל קבוצות כתובות

  2. בתפריט לבחירת פרויקטים, אם האפשרות זמינה, בוחרים את הארגון.
  3. כדי לערוך קבוצת כתובות, לוחצים על השם שלה.
  4. לוחצים על Edit.
  5. בשדה כתובות IP, מוחקים את הפריטים שרוצים להסיר מהרשימה מופרדת בפסיקים של כתובות ה-IP.
  6. לוחצים על Save.

gcloud

בדוגמה הבאה נעשה שימוש בפקודה gcloud network-security org-address-groups remove-items כדי להסיר את כתובות ה-IP‏ 192.168.1.2, 192.168.1.8 ו-192.168.1.9 שנוספו בפקודה הקודמת:

 gcloud network-security org-address-groups remove-items GROUP_NAME \
     --location global \
     --items 192.168.1.2,192.168.1.8,192.168.1.9

שיבוט של קבוצת כתובות בהיקף הארגון

כדי לשכפל פריטים מקבוצת כתובות:

המסוף

  1. נכנסים לדף Address groups במסוף Google Cloud .

    מעבר אל קבוצות כתובות

  2. בתפריט לבחירת פרויקטים, אם האפשרות זמינה, בוחרים את הארגון.
  3. כדי לשכפל קבוצת כתובות, לוחצים על השם של קבוצת הכתובות.
  4. לוחצים על Clone (שיבוט).
  5. בשדה Name (שם), מזינים את השם של קבוצת הכתובות המשוכפלת שרוצים ליצור.
  6. לוחצים על Clone (שיבוט).

gcloud

בדוגמה הבאה, משתמשים בפקודה gcloud network-security org-address-groups clone-items כדי לשכפל את כתובות ה-IP מקבוצת כתובות מקור SOURCE_GROUP_NAME לקבוצת כתובות יעד GROUP_NAME:

 gcloud network-security org-address-groups clone-items GROUP_NAME \
     --location global \
     --source SOURCE_GROUP_NAME

מחיקה של קבוצת כתובות בהיקף הארגון

אי אפשר למחוק קבוצת כתובות בהיקף הארגון אם יש הפניה אליה במשאב, כולל מדיניות חומת אש או מדיניות אבטחה. כדי למחוק קבוצת כתובות:

המסוף

  1. נכנסים לדף Address groups במסוף Google Cloud .

    מעבר אל קבוצות כתובות

  2. בתפריט לבחירת פרויקטים, אם האפשרות זמינה, בוחרים את הארגון.
  3. מסמנים את התיבה לצד קבוצת הכתובות שרוצים למחוק. מוודאים שאין הפניה לקבוצת הכתובות שנבחרה במדיניות חומת האש או במדיניות האבטחה.
  4. לוחצים על מחיקה ואז שוב על מחיקה כדי לאשר.

gcloud

בדוגמה הבאה משתמשים בפקודה gcloud network-security org-address-groups delete כדי למחוק קבוצת כתובות בשם GROUP_NAME.

 gcloud network-security org-address-groups delete GROUP_NAME \
     --location global

שימוש בקבוצות כתובות בהיקף הארגון עם מדיניות אבטחה

אחרי שיוצרים קבוצת כתובות ומוסיפים לה כתובות IP, אפשר להשתמש בה עם כל כלל מדיניות אבטחה קיים של Cloud Armor לשרתי קצה עורפיים. בדוגמאות הבאות מוצגות שתי דרכים שונות לשימוש בקבוצות כתובות.

דחיית קבוצה של כתובות IP לכל שירותי ה-Backend בארגון

בדוגמה הזו, נניח שיש לכם קבוצת כתובות IP בהיקף הארגון בשם MALICIOUS_IPS עם 10,000 כתובות IP שאתם יודעים שהן זדוניות. אתם יכולים לחסום את כל כתובות ה-IP האלה לכל שירותי ה-Backend בארגון באמצעות מדיניות אבטחה היררכית אחת. יוצרים מדיניות אבטחה היררכית, ואז מוסיפים כלל deny עם תנאי ההתאמה הבא:

evaluateOrganizationAddressGroup('MALICIOUS_IPS', origin.ip)

לבסוף, משייכים את מדיניות האבטחה ההיררכית לכל שירותי ה-Backend בארגון, ומחליפים את POLICY_NAME בשם מדיניות האבטחה ההיררכית ואת ORGANIZATION_ID במזהה הארגון:

  gcloud compute org-security-policies associations create \
      --security-policy=POLICY_NAME \
      --organization=ORGANIZATION_ID

שימוש חוזר בקבוצה של טווחי כתובות IP לכל שירותי ה-Backend בארגון

בדוגמה הזו, נניח שיש לכם את אותה רשימה של 10,000 כתובות IP כמו בדוגמה הקודמת, אבל חלק מכתובות ה-IP הן סורקי אינטרנט ידועים. אתם רוצים לחסום את כתובות ה-IP של הסורקים שאינם סורקי אינטרנט כדי שלא תהיה להם גישה לכל שירותי ה-Backend בארגון, אבל אתם רוצים לאפשר למדיניות אבטחה בהיקף הפרויקט לקבוע אם סורקי האינטרנט יכולים לגשת לשירותי ה-Backend כדי לשפר את האופטימיזציה למנועי חיפוש (SEO).

כדי לחסום את הגישה של כל הכתובות אל BACKEND_SERVICE_1, ולאפשר לטווחים של כתובות ה-IP 66.249.77.32/27 ו-66.249.77.64/27 לגשת אל BACKEND_SERVICE_2, פועלים לפי השלבים הבאים:

  1. יוצרים מדיניות אבטחה של קצה עורפי בשם BACKEND_POLICY_1.
  2. מוסיפים כלל deny ל-BACKEND_POLICY_1 עם תנאי ההתאמה הבא, שחוסם את כל כתובות ה-IP ב-MALICIOUS_IPS:

    evaluateOrganizationAddressGroup('MALICIOUS_IPS', origin.ip)
    
  3. משתמשים בפקודה הבאה כדי לשייך את BACKEND_POLICY_1 ל-BACKEND_SERVICE_1:

     gcloud compute backend-services update BACKEND_SERVICE_1 \
         --security-policy BACKEND_POLICY_1
    
  4. יוצרים מדיניות אבטחה שנייה של קצה עורפי בשם BACKEND_POLICY_2.

  5. מוסיפים כלל deny ל-BACKEND_POLICY_2 עם תנאי ההתאמה הבא, שחוסם את כל כתובות ה-IP ב-MALICIOUS_IPS חוץ מ-66.249.77.32/27 ומ-66.249.77.64/27:

    evaluateOrganizationAddressGroup('MALICIOUS_IPS', origin.ip, [`66.249.77.32/27`, `66.249.77.64/27`])
    
  6. משתמשים בפקודה הבאה כדי לשייך את BACKEND_POLICY_2 אל BACKEND_SERVICE_2. מחליפים את ORG_ID במזהה הארגון:

     gcloud compute backend-services update BACKEND_SERVICE_2 \
         --security-policy BACKEND_POLICY_2
    

שימוש בקבוצת כתובות כדי להתאים לכתובות IP של משתמשים בכל שירותי ה-Backend בארגון

לצורך הדוגמה הזו, נניח שיש לכם קבוצה של כתובות IP בשם MALICIOUS_IPS עם 10,000 כתובות IP שאתם יודעים שהן זדוניות. בנוסף, אתם משתמשים בשרת proxy במעלה הזרם, שכולל מידע על כתובת ה-IP של הלקוח המקורי בכותרת. אפשר לדחות את כל כתובות ה-IP האלה מגישה לכל השירותים לקצה העורפי בארגון באמצעות כלל אחד במדיניות אבטחה deny עם תנאי ההתאמה הבא:

evaluateOrganizationAddressGroup('MALICIOUS_IPS', origin.user_ip)

מידע נוסף על כתובות IP זמין במאמר בנושא מאפיינים.

מידע נוסף על כתובות ה-IP של משתמשים זמין במאמר סקירה כללית על כתובות ה-IP של משתמשים.

המאמרים הבאים