במסמך הזה מפורטים שלבי ההגדרה של פריסה אוטומטית של הכללים המוצעים שנוצרו על ידי ההגנה האדפטיבית. כדי להפעיל פריסה אוטומטית של כלל, צריך ליצור כלל placeholder עם הערכים הבאים:
- ביטוי ההתאמה:
evaluateAdaptiveProtectionAutoDeploy() - פעולה: כל פעולה
- עדיפות: כלשהי. מומלץ להגדיר כלל הרשאה מפורש בעדיפות גבוהה יותר מהכללים האחרים שלכם לתנועה לגיטימית בעדיפות גבוהה.
אם אתם משתמשים בשרת proxy במעלה הזרם לפני מאזן עומסים של אפליקציות (ALB) חיצוני, כמו CDN של צד שלישי, אתם יכולים להגדיר את כלל הפלייסהולדר כך שיתאים לבקשות על סמך כתובת ה-IP המקורית של הלקוח מכותרת או מכותרות שצוינו. כדי להשתמש בתכונת התצוגה המקדימה הזו, צריך להגדיר את האפשרות userIpRequestHeaders[] בשדה advancedOptionsConfig. מידע נוסף זמין במאמר בנושא ComputeSecurityPolicy.
דוגמאות לכללי placeholder
הפקודות הבאות הן דוגמאות לכללי placeholder במדיניות אבטחה בשם POLICY_NAME, שכל אחת מהן כוללת פעולת כלל שונה.
אפשר להוסיף את הכללים האלה למדיניות אבטחה קיימת או ליצור מדיניות חדשה. מידע נוסף על יצירת כללי מדיניות אבטחה זמין במאמר הגדרת כללי מדיניות אבטחה ב-Cloud Armor.
חסימה של תנועה זדונית
כלל לדוגמה שמוערך כ-true לבקשות שזוהו על ידי Adaptive Protection כתנועה של התקפה. Cloud Armor מחיל את פעולת החסימה על הבקשה התוקפת:
gcloud compute security-policies rules create 1000 \
--security-policy POLICY_NAME \
--expression "evaluateAdaptiveProtectionAutoDeploy()" \
--action deny-403
הפניה של תנועה זדונית לאתגר reCAPTCHA
בדוגמה הזו, הכלל מפנה תנועה שזוהתה על ידי Adaptive Protection כזדונית לאתגר reCAPTCHA:
gcloud compute security-policies rules create 1000 \
--security-policy POLICY_NAME \
--expression "evaluateAdaptiveProtectionAutoDeploy()" \
--action redirect \
--redirect-type google-recaptcha
הגבלת קצב של תנועה זדונית
בדוגמה הזו, הגבלת קצב של יצירת בקשות של Cloud Armor חלה על תנועה שזוהתה על ידי Adaptive Protection כתנועה זדונית:
gcloud compute security-policies rules create 1000 \
--security-policy POLICY_NAME \
--expression "evaluateAdaptiveProtectionAutoDeploy()" \
--action throttle \
--rate-limit-threshold-count 500 \
--rate-limit-threshold-interval-sec 120 \
--conform-action allow \
--exceed-action deny-404 \
--enforce-on-key ip
הגדרת פרמטרים לפריסה אוטומטית של הגנה דינמית
אפשר להגדיר את ערכי הסף לפריסה אוטומטית של כללים על ידי שינוי הפרמטרים הבאים. אם לא מגדירים את הערך של פרמטר, Cloud Armor משתמש בערך ברירת המחדל.
סף עומס: במהלך מתקפה שמוגדרת לגביה התראה, Adaptive Protection מזהה תוקפים חדשים רק כשהעומס על שירות לקצה העורפי שנמצא תחת מתקפה חורג מהסף הזה. בנוסף, הכללים נפרסים אוטומטית רק לגבי התראות כשהעומס על שירות לקצה העורפי שנמצא תחת מתקפה חורג מהסף הזה.
ערך ברירת המחדל:
0.8
סף הסמך: הכללים נפרסים באופן אוטומטי רק לגבי התראות על מתקפות פוטנציאליות עם ציוני סמך שגבוהים מהסף הזה.
- ערך ברירת המחדל:
0.5
- ערך ברירת המחדל:
סף הבסיס שהושפע: הכללים מופעלים באופן אוטומטי רק אם ההשפעה המשוערת על תנועת הבסיס מההמלצה לתיקון נמוכה מהסף הזה. הערכים של
impactedBaselineProportionושלimpactedbaselinePolicyProportionצריכים להיות נמוכים מסף הבסיס המושפע.- ערך ברירת המחדל:
0.01(1%)
- ערך ברירת המחדל:
תוקף מוגדר: אחרי משך הזמן הזה, Cloud Armor מפסיק להחיל את הפעולה בכלל שנפרס אוטומטית על תוקף מזוהה. הכלל ימשיך לפעול על בקשות חדשות.
- ערך ברירת המחדל:
7200שניות
- ערך ברירת המחדל:
הפקודה הבאה מוסיפה הגדרות של סף להגנה מפני מתקפות DDoS בשכבה 7 למדיניות האבטחה.
gcloud compute security-policies add-layer7-ddos-defense-threshold-config NAME [FLAG = VALUE]
מחליפים את מה שכתוב בשדות הבאים:
-
NAME: השם של מדיניות האבטחה. -
FLAG: פרמטר ערך הסף להגנה. -
VALUE: הערך של פרמטר סף ההגנה.
מידע נוסף מופיע במאמר הגדרת יחידות מפורטות של תנועה.
הפקודה הבאה מעדכנת את מדיניות האבטחה כך שתשתמש בספים שאינם ברירת מחדל, שנפרסו באופן אוטומטי. אפשר להגדיר לכל היותר אחד מהפרמטרים auto_deploy_config ו-threshold_config. הגדרת יותר מדגל אחד גורמת לשגיאה.
gcloud beta compute security-policies update NAME [
--layer7-ddos-defense-auto-deploy-PARAMETER VALUE
]
מחליפים את מה שכתוב בשדות הבאים:
-
NAME: השם של מדיניות האבטחה. -
PARAMETER: הפרמטר של הפריסה האוטומטית. הוא אחד מהבאים:load-thresholdconfidence-thresholdimpacted-baseline-thresholdexpiration-sec
-
VALUE: הערך של הפרמטר auto-deploy.
רישום ביומן
בלוגים שנוצרים על ידי כללים שנפרסים באופן אוטומטי באמצעות ההגנה הדינמית יש את השדות הנוספים הבאים:
-
autoDeployed: אחרי שמגדירים פריסה אוטומטית של כללים, כל יומן התראות שנוצר על ידי ההגנה האדפטיבית כולל את השדה הבוליאניautoDeployed, שמציין אם הופעלה הגנה אוטומטית. אם הערך שלautoDeployedהואtrue, המשמעות היא שהכלל של placeholderevaluateAdaptiveProtectionAutoDeploy()כבר העריך שרמות הסמך של המתקפה והסף של בסיס ההשוואה של ההשפעה חרגו מהפרמטרים המוגדרים של הפריסה האוטומטית. לאחר מכן המערכת מתחילה לעקוב אחרי העומס הדינמי. אם העומס יעבור את סף העומס שהוגדר, הכלל יופעל באופן אוטומטי כדי לצמצם את ההשפעה של המתקפה. -
adaptiveProtection.autoDeployAlertId: בכל פעם שההגנה הדינמית מבצעת פעולה בבקשה כחלק מהגנה אוטומטית, ביומן הבקשות מופיע השדה הנוסףadaptiveProtection.autoDeployAlertId, שבו מתועד מזהה ההתראה. השדה הזה מופיע בקטעenforcedSecurityPolicyאוpreviewSecurityPolicy, בהתאם למצב התצוגה המקדימה של מדיניות האבטחה.
מידע על צפייה ביומני בקשות זמין במאמר שימוש ביומן בקשות. בצילום המסך הבא אפשר לראות דוגמה לרשומה ביומן של Adaptive Protection, עם השדות autoDeployed ו-adaptiveProtection.autoDeployAlertId.
מגבלות
- ההגנה הדינמית זמינה רק למדיניות אבטחה של קצה עורפי שמצורפת לשירותי קצה עורפי שנחשפים דרך מאזן עומסים של אפליקציות (ALB) חיצוני. התכונה 'הגנה דינמית' לא זמינה למאזני עומסים חיצוניים לשרת proxy.