מדיניות אבטחה של קצה הרשת מאפשרת לכם להגדיר כללים להתרה או לחסימה של תנועה בקצה הרשת של Google. אתם יכולים להגדיר מדיניות אבטחה של קצה הרשת לסוגי חזיתות (frontend) הבאים:
- מאזני עומסי רשת חיצוניים להעברת סיגנל ללא שינוי
- העברת פרוטוקול
- מכונות וירטואליות עם כתובות IP ציבוריות
אתם יכולים להשתמש במדיניות אבטחה של קצה הרשת כדי לסנן לפי טווחי כתובות IP של מקור ויעד, בדומה לחומת האש מהדור הבא של Cloud, אבל בלי לצרוך את המשאבים שלכם. בנוסף, מדיניות אבטחה של קצה הרשת היא סוג המדיניות היחיד שתומך בסינון לפי היסט בייטים.
הגדרת כללים מותאמים אישית למדיניות אבטחה של קצה הרשת
בדומה למדיניות אבטחה של קצה עורפי ושל Edge, אפשר להגדיר כללים מותאמים אישית למדיניות אבטחה של Edge ברשת. בדוגמה הבאה, יוצרים מדיניות אבטחה של קצה הרשת, מגדירים כלל בהתאמה אישית שמאפשר תעבורת נתונים רק מטווחי כתובות IP של מקור נתון, ומצרפים את המדיניות לשירות לקצה העורפי.
מדיניות אבטחה של קצה הרשת תומכת בכמה מסננים של Cloud Armor, כולל מסננים ייחודיים כמו סינון לפי היסט בייט. מידע נוסף על התכונות שנתמכות במדיניות אבטחה של קצה הרשת זמין במאמר סקירה כללית על מדיניות אבטחה. בנוסף, אפשר לפרוס מדיניות אבטחה של קצה הרשת במצב תצוגה מקדימה.
לפני שממשיכים, צריך להירשם ל-Google Cloud Armor Enterprise ולהגדיר הגנה מתקדמת מפני מתקפות DDoS ברשת. אי אפשר להשתמש בכללים מותאמים אישית למדיניות אבטחה של קצה הרשת בלי מינוי פעיל ל-Cloud Armor Enterprise והגנה מתקדמת מפני DDoS ברשת.
כדי להגדיר כללים בהתאמה אישית:
יוצרים מדיניות אבטחה חדשה של קצה הרשת בשם
POLICY_NAMEבאזורREGION. לא משתמשים באותה מדיניות אבטחה שבה השתמשתם כשמפעילים הגנה מתקדמת מפני DDoS ברשת.gcloud compute security-policies create POLICY_NAME \ --type=CLOUD_ARMOR_NETWORK \ --region=REGION
משנים את כלל ברירת המחדל של המדיניות מ-
allowל-denyכדי לחסום תנועה שלא אושרה במפורש על ידי כללים אחרים.gcloud compute security-policies rules update 2147483647 \ --security-policy=POLICY_NAME \ --action=deny \ --region=REGION
באותה מדיניות אבטחה, מוסיפים כלל בעדיפות
RULE_PRIORITYשמאפשר בקשות בטווח כתובות ה-IP של המקורRANGE.gcloud compute security-policies rules create RULE_PRIORITY \ --security-policy=POLICY_NAME \ --network-src-ip-ranges=RANGE \ --action=allow \ --region=REGION
משייכים את מדיניות האבטחה לשירות הקצה העורפי
BACKEND_SERVICE_NAME.gcloud compute backend-services update BACKEND_SERVICE_NAME \ --security-policy=POLICY_NAME \ --region=REGION
לחלופין, אפשר לשייך את מדיניות האבטחה למופע יחיד של מכונה וירטואלית באמצעות הפקודה הבאה:
gcloud beta compute instances network-interfaces update VM_NAME \ --security-policy=POLICY_NAME \ --security-policy-region=REGION \ --network-interface=NETWORK_INTERFACE \ --zone=ZONE_NAME
אופציונלי: אפשר לוודא שמדיניות האבטחה מצורפת באמצעות הפקודה הבאה. אם הפעולה תצליח, בשדה
securityPolicyבפלט יופיע קישור למשאב של מדיניות האבטחה.gcloud compute instances describe VM_NAME --zone=ZONE_NAME
אחרי שיוצרים את הדוגמה הקודמת, אפשר להמשיך להוסיף כללים למדיניות האבטחה של קצה הרשת באמצעות הפקודה security-policies rules update.
השדות הנתמכים במדיניות אבטחה של קצה הרשת הם:
| שדה | דגל | תיאור |
|---|---|---|
| כתובת ה-IP של המקור | --network-src-ip-ranges |
כתובות IPv4/6 או קידומות CIDR של המקור, בפורמט טקסט רגיל. |
| יציאות מקור | --network-src-ports |
מספרי יציאות מקוריות ל-TCP/UDP/SCTP. כל רכיב יכול להיות מספר (16 ביט) (כמו '80') או טווח (כמו '0-1023'). |
| קודי אזור המקור | --network-src-region-codes |
קוד מדינה בן שתי אותיות (ISO 3166-1 alpha 2). |
| מספרי מערכות אוטונומיות (ASN) של המקור | --network-src-asns |
מספר המערכת האוטונומית (ASN) של BGP של כתובת ה-IP של המקור. |
| טווחי כתובות IP של יעד | --network-dest-ip-ranges |
כתובות IPv4/6 ליעד או קידומות CIDR, בפורמט טקסט רגיל. |
| יציאות יעד | --network-dest-ports |
מספרי יציאות של היעד עבור TCP/UDP/SCTP. כל רכיב יכול להיות מספר (16 ביט) (כמו '80') או טווח (כמו '0-1023'). |
| פרוטוקולים של כתובות IP | --network-ip-protocols |
פרוטוקול IPv4 / כותרת IPv6 הבאה (אחרי כותרות ההרחבה). כל רכיב יכול להיות מספר בן 8 ביטים (כמו '6'), טווח (כמו '253-254') או אחד משמות הפרוטוקולים הבאים:
|
| סינון לפי היסט בבייט | לא רלוונטי | מידע נוסף מופיע בקטע הבא. |
כשמשתמשים בדגל --network-src-region-codes במדיניות אבטחה של קצה הרשת, אפשר להשתמש בקודי אזורים עבור הטריטוריות הבאות שחלות עליהן סנקציות מקיפות של ארה"ב:
| אזורים | קוד שהוקצה |
|---|---|
| חצי האי קרים | XC |
| הטריטוריות שמכונות "הרפובליקה העממית של דונצק (DNR)" ו"הרפובליקה העממית של לוהנסק (LNR)" |
XD |
הגדרת סינון לפי היסט בייטים
אם אתם משתמשים במאזנים חיצוניים של עומסי רשת להעברת סיגנל ללא שינוי, בהעברת פרוטוקולים או במכונות וירטואליות עם כתובות IP ציבוריות, Cloud Armor יכול לבצע בדיקה מעמיקה של חבילות נתונים בתעבורה נכנסת. אתם יכולים להגדיר כלל מדיניות אבטחה שתואם לערך מסוים של היסט בייט ב-TCP/UDP. אתם יכולים להגדיר את הכלל כך שיחול כשערך ההיסט שהוגדר קיים, או לחלופין כשערך ההיסט לא קיים.
בדוגמה הבאה, התנועה מותרת אם הערך קיים, וכל שאר התנועה נחסמת:
יוצרים מדיניות אבטחה חדשה של קצה הרשת. אפשר לדלג על השלב הזה אם כבר יש לכם מדיניות אבטחה של קצה הרשת.
gcloud compute security-policies create POLICY_NAME \ --type=CLOUD_ARMOR_NETWORK \ --region=REGION_NAME
כדי לעדכן את מדיניות האבטחה של קצה הרשת ולהוסיף שדות שהוגדרו על ידי המשתמש, צריך להשתמש בפרמטרים הבאים:
- בסיס: הערך יכול להיות
IPv4,IPv6,TCPאוUDP - Offset: ההיסט של השדה מהבסיס בבייטים
- גודל: גודל השדה בבייטים (הערך המקסימלי הוא
4) - Mask: המסכה של הביטים בשדה שצריך להתאים
אפשר להשתמש בעד שמונה שדות שמוגדרים על ידי המשתמש בכל מדיניות. בדוגמה הבאה, יוצרים שני שדות שמוגדרים על ידי המשתמש.
gcloud compute security-policies add-user-defined-field POLICY_NAME \ --user-defined-field-name=USER_DEFINED_FIELD_NAME_TCP \ --base=TCP \ --offset=OFFSET \ --size=SIZE \ --mask=MASK \ --region=REGION_NAME
gcloud compute security-policies add-user-defined-field POLICY_NAME \ --user-defined-field-name=USER_DEFINED_FIELD_NAME_UDP \ --base=UDP \ --offset=OFFSET \ --size=SIZE \ --mask=MASK \ --region=REGION_NAME
- בסיס: הערך יכול להיות
במדיניות האבטחה של קצה הרשת, מוסיפים כלל עם אותו שם של שדה מותאם אישית שבו השתמשתם בדוגמה הקודמת. מחליפים את
VALUE1ואתVALUE2בערכים שתואמים לתנועה שרוצים לאפשר.gcloud compute security-policies rules create RULE_PRIORITY \ --security-policy=POLICY_NAME \ --network-user-defined-fields="USER_DEFINED_FIELD_NAME_TCP;VALUE1:VALUE2,USER_DEFINED_FIELD_NAME_UDP;VALUE1:VALUE2,USER_DEFINED_FIELD_NAME_UDP;VALUE1,VALUE2" \ --action=allow \ --region=REGION_NAME
מגדירים את כלל ברירת המחדל במדיניות האבטחה של קצה הרשת ככלל דחייה. אפשר לדלג על השלב הזה אם כלל ברירת המחדל במדיניות האבטחה הוא כבר כלל דחייה.
gcloud compute security-policies rules update 2147483647 \ --security-policy=POLICY_NAME \ --action=deny \ --region=REGION_NAME
משייכים את מדיניות האבטחה של קצה הרשת לשירות לקצה העורפי של מאזן עומסי הרשת החיצוני להעברת סיגנל ללא שינוי.
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --security-policy=POLICY_NAME \ --region=REGION_NAME
מעקב
Cloud Armor מייצא את המדדים הבאים אל Cloud Monitoring עבור כל אחד מהכללים במדיניות אבטחת קצה הרשת:
packet_count-
Blocked: ערך בוליאני שמייצג את התוצאה של פעולת כלל מסוגallowאוdeny -
Count: הערך שלpacket_countגדל ב-1 בכל פעם עבור כל 10,000 מנות. לדוגמה, ערך שלpacket_countשהוא5מציין שלפחות 50,000 מנות תאמו לכלל שהגדרתם.
-
-
preview_packet_count: זהה ל-packet_count, משמש לכללים במצב תצוגה מקדימה
כדי להציג מדדים של מדיניות אבטחה ברשת, צריך קודם להפעיל את Network Security API (networksecurity.googleapis.com). ההרשאה הזו כלולה בתפקיד Compute Security Admin (roles/compute.securityAdmin). אחרי שמפעילים את Network Security API, אפשר להציג את המדדים ב-Monitoring במסוף Google Cloud .