מדריך קלאודפלייר בעברית

תיעוד 139

שדרוג כללי חומת אש

Cloudflare שדרגה כללי חומת אש קיימים לכללים מותאמים אישית. עם כללים מותאמים אישית מתקבלת אותה רמת הגנה, ועוד כמה יכולות נוספות. כללים מותאמים אישית זמינים בלוח הבקרה של Cloudflare במיקומים הבאים:

  • לוח בקרה ישן: Security > WAF > Custom rules.
  • לוח בקרה חדש של אבטחה: Security > Security rules.

הודעת הוצאה משימוש

Cloudflare Firewall Rules הוצא משימוש. ה-API של Firewall Rules וה-API של Filters, וגם משאבי Terraform בשם cloudflare_firewall_rule ו-cloudflare_filter, אינם נתמכים עוד מאז 2025-06-15. אם יש לך אוטומציה שמבוססת על ממשקי ה-API ועל המשאבים האלה, עליך לעבור לממשקי ה-API ולמשאבים החדשים כדי למנוע בעיות.

אם עדיין לא שדרגת לכללים מותאמים אישית של WAF, ייתכן שיש לך תצורה לא תקינה שמונעת את השדרוג. במקרה כזה, פנה לצוות החשבון שלך לקבלת עזרה בשדרוג לכללים מותאמים אישית של WAF.

#ההבדלים העיקריים

ההבדלים העיקריים בין כללי חומת אש לבין כללים מותאמים אישית של WAF הם אלה:

#תגובה משופרת לפעולת Block

בכללים מותאמים אישית של WAF אפשר להתאים את התגובה של פעולת Block.

תגובת החסימה המוגדרת כברירת מחדל היא דף HTML סטנדרטי של Cloudflare. אם צריך לשלוח תגובה מותאמת אישית לפעולות Block, הגדר את הכלל המותאם אישית כך שיחזיר תגובה קבועה עם קוד תגובה מותאם אישית (403, כברירת מחדל) וגוף מותאם אישית (HTML, JSON, XML או טקסט רגיל).

הערה

תצורות של תגובת חסימה מותאמת אישית אינן מוחזרות על ידי ה-API של Firewall Rules. יש להשתמש ב-Rulesets API כדי לנהל את היכולת החדשה הזו.

#דף שגיאה שונה לבקשות שנחסמו

בקשות שנחסמו על ידי כלל חומת אש עם פעולת Block קיבלו תגובה עם קוד שגיאה 1020 של Cloudflare. משתמשי Cloudflare יכלו להתאים את דף השגיאה הזה לאזור ב-Error Pages > 1000 class errors.

בקשות שנחסמו על ידי כלל מותאם אישית של WAF יקבלו תגובה שונה: תגובת החסימה של WAF. כדי להתאים את תגובת החסימה המוגדרת כברירת מחדל, אפשר לבחור באחת מהאפשרויות הבאות:

  • להגדיר תגובת חסימה מותאמת אישית של WAF לכל האזור ב-Error Pages ↗︎ > WAF block. לדף השגיאה הזה תמיד יהיה סוג תוכן HTML.
  • להגדיר תגובה מותאמת אישית לבקשות שנחסמו על ידי כלל מותאם אישית מסוים של WAF. התגובה המותאמת אישית הזו תומכת גם בסוגי תוכן נוספים מלבד HTML.

אם התאמת את דף השגיאה 1XXX ב-Error Pages עבור בקשות שנחסמו על ידי כללי חומת אש, יהיה צורך ליצור דף תגובה חדש לבקשות שנחסמו באמצעות אחת מהשיטות שלמעלה.

למידע נוסף על Error Pages, עיין ב-Custom Errors.

#פעולת Skip חדשה שמחליפה את פעולות Allow ו-Bypass

Firewall Rules תמך בפעולות Allow ו-Bypass, ששימשו לעיתים קרובות יחד. הפעולות האלה שימשו בדרך כלל לטיפול בבקשות לגיטימיות מוכרות, למשל בקשות שמגיעות מכתובות IP מהימנות.

כאשר בקשה הפעילה את Allow, כל שאר כללי חומת האש לא הוערכו, והבקשה המשיכה בפועל למוצר האבטחה הבא. פעולת Bypass נועדה לציין אילו מוצרי אבטחה (כמו כללים מנוהלים של WAF, כללי הגבלת קצב ו-User Agent Blocking) לא ירוצו על הבקשה שמפעילה את הפעולה.

עם Firewall Rules, אם רצית להפסיק את ההרצה של כל מוצרי האבטחה עבור בקשה נתונה, יצרת שני כללים:

  • כלל אחד עם פעולת Bypass (בחירה של כל מוצרי האבטחה).
  • כלל אחד עם פעולת Allow (כדי להפסיק את הביצוע של כללי חומת אש אחרים).

הדרישה לשני כללים כדי לטפל בתרחיש הנפוץ הזה אינה חלה עוד על כללים מותאמים אישית של WAF. כעת יש להשתמש בפעולת Skip, שמשלבת את פעולות Allow ו-Bypass. פעולת Skip מחליפה במלואה את פעולות Allow ו-Bypass, שאינן נתמכות בכללים מותאמים אישית של WAF.

עם פעולת Skip אפשר לבצע את הפעולות הבאות:

  • להפסיק את ההרצה של כל שאר הכללים המותאמים אישית (מקביל לפעולת Allow)
  • להימנע מהרצה של מוצרי אבטחה אחרים (מקביל לפעולת Bypass)
  • שילוב של האפשרויות שלמעלה.

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

הערה

ה-API של Firewall Rules אינו תומך בפעולת Skip. כשיוצרים כלל מותאם אישית עם פעולת Skip, הוא מתורגם ל-Allow ול-Bypass ב-API של Firewall Rules. יש להשתמש ב-Rulesets API כדי להשתמש במלוא הפונקציונליות של פעולת Skip החדשה.

#כללים מותאמים אישית מוערכים לפי הסדר

לפעולות של כללי חומת אש היה סדר קדימות מסוים כשהשתמשו בסידור לפי עדיפות. לעומת זאת, לפעולות של כללים מותאמים אישית אין סדר כזה. כללים מותאמים אישית תמיד מוערכים לפי הסדר, ופעולות מסוימות כמו Block עוצרות את ההערכה של כללים אחרים.

לדוגמה, אם השתמשת בסידור לפי עדיפות והיו לך כללי חומת האש הבאים עם אותה עדיפות, ושניהם תואמים לבקשה נכנסת:

  • כלל חומת אש #1: Priority: 2 / Action: Block
  • כלל חומת אש #2: Priority: 2 / Action: Allow

הבקשה הייתה מורשית, כי לפעולת Allow ב-Firewall Rules הייתה קדימות על פני פעולת Block.

לעומת זאת, אם יוצרים שני כללים מותאמים אישית ושניהם תואמים לבקשה נכנסת:

  • כלל מותאם אישית #1: Action: Block
  • כלל מותאם אישית #2: Action: Skip (מוגדר לדלג על כל שאר הכללים המותאמים אישית)

הבקשה תיחסם, כי כללים מותאמים אישית מוערכים לפי הסדר, ופעולת Block עוצרת את ההערכה של כללים אחרים.

הערה

עבור הכללים המותאמים אישית שהומרו מכללי חומת האש הקיימים שלך, Cloudflare ישמור על סדר הביצוע הנוכחי שלך.

#יומנים ואירועים

אירועים שנרשמים על ידי כללים מותאמים אישית מוצגים ב-Security Events עם Custom Rules כמקור שלהם.

ייתכן שעדיין תמצא אירועים שנוצרו על ידי Firewall Rules בדף Security Events כשבוחרים טווח זמן שכולל את הימים שבהם התרחש המעבר לכללים מותאמים אישית. באופן דומה, ייתכן שעדיין תמצא אירועים עם פעולות Skip וגם Allow באותה תצוגה במהלך תקופת המעבר.

#API ומשאבי Terraform חדשים

ה-API המועדף לניהול כללים מותאמים אישית של WAF הוא Rulesets API. Rulesets API משמש בכל מוצרי האבטחה העדכניים של Cloudflare כדי לספק חוויית משתמש אחידה בעבודה מול ה-API. למידע נוסף על מעבר ל-Rulesets API, עיין ב-שינויים רלוונטיים למשתמשי API.

ה-API של Firewall Rules וה-API של Filters אינם נתמכים עוד מאז 2025-06-15. כעת יש רשימת כללים אחת גם לכללי חומת אש וגם לכללים מותאמים אישית של WAF, והרשימה הזו מכילה כללים מותאמים אישית של WAF. בזכות תהליך המרה פנימי, ה-API של Firewall Rules וה-API של Filters מחזירים כללי חומת אש ומסננים שהומרו מהכללים המותאמים אישית האלה של WAF עד תאריך סיום התמיכה בממשקי ה-API.

אם אתה משתמש ב-Terraform, עליך לעדכן את התצורה כך שתשתמש במשאבי cloudflare_ruleset ↗︎ עם הפאזה http_request_firewall_custom כדי לנהל כללים מותאמים אישית. למידע נוסף על עדכון תצורת Terraform, עיין ב-שינויים רלוונטיים למשתמשי Terraform.

#שינויים רלוונטיים למשתמשי לוח הבקרה

הכרטיסייה Firewall Rules בלוח הבקרה של Cloudflare הוצאה משימוש. כללי חומת אש מוצגים ככללים מותאמים אישית בלוח הבקרה של Cloudflare.

עבור משתמשים שיש להם גישה לשני המוצרים, הכרטיסייה Firewall rules זמינה רק בלוח הבקרה הישן תחת Security > WAF.

#שינויים רלוונטיים למשתמשי API

ה-Firewall Rules API וה-Cloudflare Filters API המשויך הוצאו משימוש. ממשקי ה-API האלה אינם נתמכים עוד מאז 2025-06-15. עליך לעדכן ידנית כל אוטומציה שמבוססת על Firewall Rules API או על Cloudflare Filters API ל-Rulesets API כדי למנוע בעיות. מזהי הכללים שונים בין כללי חומת אש לבין כללים מותאמים אישית, וזה עשוי להשפיע על תהליכים אוטומטיים שמטפלים במזהי כללים מסוימים.

לפני תאריך סיום התמיכה בממשקי ה-API, Cloudflare תמיר באופן פנימי את הקריאות שלך ל-Firewall Rules API ול-Filters API לקריאות המתאימות ב-Rulesets API. הקריאות המומרות בין Firewall Rules API או Filters API לבין Rulesets API מופיעות ביומני הביקורת כאילו נוצרו על ידי Cloudflare, ולא על ידי המשתמש שביצע בפועל את הבקשות. תהיה רשימת כללים אחת גם לכללי חומת אש וגם לכללים מותאמים אישית של WAF.

חלק מהיכולות החדשות של כללים מותאמים אישית של WAF, כמו תגובות מותאמות אישית לבקשות שנחסמו ופעולת Skip, אינן נתמכות ב-Firewall Rules API. כדי לנצל את היכולות האלה, Cloudflare ממליצה להשתמש בדף הכללים המותאמים אישית בלוח הבקרה של Cloudflare או ב-Rulesets API.

עיין בתיעוד של WAF לדוגמאות לניהול כללים מותאמים אישית של WAF באמצעות Rulesets API.

#שינויים רלוונטיים למשתמשי Terraform

משאבי Terraform הבאים מספק Cloudflare הוצאו משימוש:

המשאבים האלה אינם נתמכים עוד מאז 2025-06-15. אם אתה משתמש במשאבים האלה כדי לנהל את תצורת Firewall Rules, עליך לעדכן ידנית כל תצורת Terraform למשאבי cloudflare_ruleset ↗︎ כדי למנוע בעיות.

תהיה רשימת כללים אחת גם לכללי חומת אש וגם לכללים מותאמים אישית של WAF.

חלק מהיכולות החדשות של כללים מותאמים אישית של WAF אינן נתמכות במשאבי Terraform שהוצאו משימוש. כדי לנצל את היכולות האלה, Cloudflare ממליצה להשתמש במשאב cloudflare_ruleset.

עיין בתיעוד על Terraform לדוגמאות להגדרת כללים מותאמים אישית של WAF באמצעות Terraform.

#החלפת התצורה באמצעות cf-terraforming

אפשר להשתמש בכלי cf-terraforming ↗︎ כדי ליצור את תצורת Terraform עבור הכללים המותאמים אישית הנוכחיים שלך של WAF (שהומרו על ידי Cloudflare מכללי חומת האש שלך). לאחר מכן, ייבא את המשאבים החדשים למצב Terraform.

השלבים המומלצים להחלפת תצורת כללי חומת האש (והמסננים) ב-Terraform בתצורת ruleset חדשה הם אלה.

  1. הרץ את הפקודה הבאה כדי ליצור את כל תצורות ה-ruleset עבור אזור:

    cf-terraforming generate --zone <ZONE_ID> --resource-type "cloudflare_ruleset"
    resource "cloudflare_ruleset" "terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31" {
      kind    = "zone"
      name    = "default"
      phase   = "http_request_firewall_custom"
      zone_id = "<ZONE_ID>"
      rules {
        [...]
      }
      [...]
    }
    [...]
  2. הפקודה הקודמת עשויה להחזיר תצורות ruleset נוספות עבור מוצרי Cloudflare אחרים שגם הם מבוססים על Ruleset Engine. מאחר שאתה מעביר כללי חומת אש לכללים מותאמים אישית, השאר רק את משאב Terraform של הפאזה http_request_firewall_custom ושמור אותו בקובץ תצורה .tf. בשלב הבא תזדקק לשם המלא של המשאב.

  3. ייבא את משאב cloudflare_ruleset שזיהית קודם למצב Terraform באמצעות הפקודה terraform import. לדוגמה:

    terraform import cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31 zone/<ZONE_ID>/3c0b456bc2aa443089c5f40f45f51b31
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Importing from ID "zone/<ZONE_ID>/3c0b456bc2aa443089c5f40f45f51b31"...
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Import prepared!
      Prepared cloudflare_ruleset for import
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Refreshing state... [id=3c0b456bc2aa443089c5f40f45f51b31]
    
    Import successful!
    
    The resources that were imported are shown above. These resources are now in
    your Terraform state and will henceforth be managed by Terraform.
  4. הרץ את terraform plan כדי לוודא ש-Terraform בודק כעת את המצב של משאב cloudflare_ruleset החדש, בנוסף למשאבים קיימים אחרים שכבר מנוהלים על ידי Terraform. לדוגמה:

    terraform plan
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Refreshing state... [id=3c0b456bc2aa443089c5f40f45f51b31]
    [...]
    cloudflare_filter.my_filter: Refreshing state... [id=14a2524fd75c419f8d273116815b6349]
    cloudflare_firewall_rule.my_firewall_rule: Refreshing state... [id=0580eb5d92e344ddb2374979f74c3ddf]
    [...]
  5. הסר ממצב Terraform כל מצב שקשור לכללי חומת אש ולמסננים:

    זהירות

    יש להסיר כללי חומת אש ומסננים ממצב Terraform לפני מחיקת התצורה שלהם מקובצי תצורה .tf, כדי למנוע בעיות.

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

      terraform state list | grep -E '^cloudflare_(filter|firewall_rule)\.'
      cloudflare_filter.my_filter
      cloudflare_firewall_rule.my_firewall_rule
    2. הרץ את הפקודה terraform state rm ... במצב dry-run כדי להבין את ההשפעה של הסרת המשאבים האלה בלי לבצע שינויים:

      terraform state rm -dry-run cloudflare_filter.my_filter cloudflare_firewall_rule.my_firewall_rule
      Would remove cloudflare_filter.my_filter
      Would remove cloudflare_firewall_rule.my_firewall_rule
    3. אם ההשפעה נראית נכונה, הרץ את אותה פקודה בלי הפרמטר -dry-run כדי להסיר בפועל את המשאבים ממצב Terraform:

      terraform state rm cloudflare_filter.my_filter cloudflare_firewall_rule.my_firewall_rule
      Removed cloudflare_filter.my_filter
      Removed cloudflare_firewall_rule.my_firewall_rule
      Successfully removed 2 resource instance(s).
  6. אחרי הסרת משאבי כללי חומת האש והמסננים ממצב Terraform, מחק את המשאבים cloudflare_filter ו-cloudflare_firewall_rule מקובצי התצורה .tf.

  7. הרץ את terraform plan כדי לוודא שהמשאבים שמחקת מקובצי התצורה אינם מופיעים עוד. לא אמורות להיות שינויים ממתינים.

    terraform plan
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Refreshing state... [id=3c0b456bc2aa443089c5f40f45f51b31]
    [...]
    
    No changes. Your infrastructure matches the configuration.
    
    Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed.

לפרטים על ייבוא משאבי Cloudflare ל-Terraform ועל השימוש בכלי cf-terraforming, עיין במשאבים הבאים:

#הערות לסיום

כל כללי חומת אש שאינם מושהים, עם מסננים מושהים, יהפכו לזמינים כשיומרו לכללים מותאמים אישית.