Dokumentace Domluvit pilot

Cloudflare Managed Ruleset

Tuto sadu pravidel vytvořil bezpečnostní tým Cloudflare a poskytuje rychlou a účinnou ochranu pro všechny vaše aplikace. Sada pravidel se pravidelně aktualizuje, aby pokryla nové zranitelnosti a snížila počet falešně pozitivních výsledků.

Cloudflare doporučuje povolit pravidla, jejichž štítky odpovídají vašemu technologickému stacku. Pokud například používáte WordPress, povolte pravidla se štítkem wordpress.

Cloudflare Changelog WAF umožňuje sledovat průběžné změny ve WAF managed rulesets.

Nasaďte Cloudflare Managed Ruleset

  1. V dashboardu Cloudflare přejděte na Security Nastavení stránce.

    Přejděte na Nastavení ↗
  2. (Volitelné) Filtrujte podle Zneužití webových aplikací.

  3. Zapněte spravovaná sada pravidel Cloudflare.

  4. Zkontrolujte nastavení nasazení. V případě potřeby upravte rozsah, aby se sada pravidel použila jen na podmnožinu příchozích požadavků, nebo nakonfigurujte vlastní nastavení (známé také jako přepisy).

  5. Vyberte Save.

Tato operace nasadí spravovanou sadu pravidel pro aktuální zónu a vytvoří nové pravidlo s Spustit jako akci.

Nastavení v dashboardu

Sadu Cloudflare Managed Ruleset můžete konfigurovat (nebo přepsat její výchozí nastavení) na několika úrovních:

Když vytvoříte několik přepsání na různých úrovních, konkrétnější konfigurace (na úrovni tagu a pravidla) mají přednost před méně konkrétními konfiguracemi (na úrovni sady pravidel). Viz Přepsání spravované sady pravidel v dokumentaci Ruleset Engine, kde najdete další informace.

Konfigurace na úrovni sady pravidel

V Cloudflare dashboardu můžete konfigurovat (nebo přepsat) následující nastavení sady Cloudflare Managed Ruleset:

Jakmile máte nasadili Cloudflare Managed Ruleset, pro konfiguraci v dashboardu postupujte takto:

  1. V dashboardu Cloudflare přejděte na Bezpečnostní pravidla stránce.

    Přejděte na Bezpečnostní pravidla ↗
  2. (Volitelné) Filtrujte podle Spravovaná pravidla.

  3. Vyhledejte Cloudflare Managed Ruleset. Vyhledejte pravidlo s Spustit jako akci.

  4. Vyberte název pravidla (obsahující název spravované sady pravidel) a otevřete stránku konfigurace nasazení.

  5. (Volitelné) Chcete-li spustit Cloudflare Managed Ruleset jen pro podmnožinu příchozích požadavků, vyberte Úprava nastavení scope a nakonfigurovat výraz který určí rozsah aktuálního pravidla nasazujícího spravovanou sadu pravidel.

  6. V sekci konfigurace sady pravidel definujte nastavení pro všechna pravidla v sadě Cloudflare Managed Ruleset nastavením jednoho nebo více polí pomocí rozevíracích seznamů.

    Můžete například vybrat akci, která se má provést pro všechna pravidla v sadě pravidel.

    Stránka Configure deployment zobrazující dostupné možnosti pro přepsání všech pravidel v Cloudflare Managed Ruleset: akce sady pravidel a stav rulesetu.
  7. Vyberte Save.

Konfigurace na úrovni tagu

V dashboardu můžete konfigurovat (nebo přepsat) následující nastavení sady Cloudflare Managed Ruleset pro pravidla označená alespoň jedním z vybraných štítků:

Jakmile máte nasadili Cloudflare Managed Ruleset, pro konfiguraci pravidel s konkrétními tagy v dashboardu postupujte takto:

  1. V dashboardu Cloudflare přejděte na Bezpečnostní pravidla stránce.

    Přejděte na Bezpečnostní pravidla ↗
  2. (Volitelné) Filtrujte podle Spravovaná pravidla.

  3. Vyhledejte Cloudflare Managed Ruleset. Vyhledejte pravidlo s Spustit jako akci.

  4. Vyberte název pravidla (obsahující název spravované sady pravidel) a poté vyberte Procházet pravidla.

    Dashboard Cloudflare zobrazující seznam pravidel v Cloudflare Managed Ruleset.
  1. Pod vyhledávacím polem vyberte jeden nebo více štítků, podle kterých chcete pravidla filtrovat, a poté zaškrtnutím políčka v levém horním rohu tabulky vyberte všechna pravidla zobrazená na aktuální stránce.
    Pokud se na aktuální stránce nezobrazují všechna pravidla, rozšiřte výběr na všechna pravidla s vybranými štítky napříč všemi stránkami tak, že vyberete Vybrat všech <NUMBER> pravidel.

    Stránka Configure deployment zobrazující vybraná pravidla s tagem 'sqli' v Cloudflare Managed Ruleset.
  2. Aktualizujte jedno nebo více nastavení vybraných pravidel pomocí tlačítek zobrazených v pravém horním rohu tabulky (například Nastavit stav).

  3. Vyberte Next.

  4. Zobrazí se dialogové okno s dotazem, zda se mají všechna nová pravidla s vybranými štítky nakonfigurovat s vybranými hodnotami polí.

    • Vyberte Zahrnout nová pravidla pokud chcete své konfigurace použít na všechna nová pravidla s vybranými značkami.
    • Vyberte Pouze vybraná pravidla k použití vašich konfigurací pouze na vybraná pravidla.
  5. Vyberte Save.

Konfigurace na úrovni pravidla

V dashboardu můžete konfigurovat (nebo přepsat) následující nastavení sady Cloudflare Managed Ruleset pro vybraná pravidla:

Jakmile máte nasadili Cloudflare Managed Ruleset, pro konfiguraci jednotlivých pravidel sady pravidel v dashboardu postupujte takto:

  1. V dashboardu Cloudflare přejděte na Bezpečnostní pravidla stránce.

    Přejděte na Bezpečnostní pravidla ↗
  2. (Volitelné) Filtrujte podle Spravovaná pravidla.

  3. Vyhledejte Cloudflare Managed Ruleset. Vyhledejte pravidlo s Spustit jako akci.

  4. Vyberte název pravidla (obsahující název spravované sady pravidel) a poté vyberte Procházet pravidla.

    Dashboard Cloudflare zobrazující seznam pravidel v Cloudflare Managed Ruleset.
  1. Vyhledejte pravidla pomocí dostupných filtrů.

  2. V seznamu výsledků upravte hodnoty jednotlivých pravidel podle potřeby pomocí zobrazených rozevíracích seznamů a přepínačů. Stav pravidla například změníte pomocí Stav přepínač vedle pravidla.

    Chcete-li nakonfigurovat více pravidel se stejnou hodnotou, zaškrtněte políčka u všech pravidel, která chcete nakonfigurovat. Pokud se na aktuální stránce nezobrazují všechna pravidla, můžete výběr rozšířit na všechna pravidla na všech stránkách tak, že vyberete Vybrat všech <NUMBER> pravidel. Poté použijte tlačítka zobrazená v pravém horním rohu tabulky, například Nastavit stav, k aktualizaci jednoho nebo více polí u vybraných pravidel.

    Stránka Configure deployment zobrazující vybraná pravidla v Cloudflare Managed Ruleset.
  3. Vyberte Next, a poté vyberte Save.

Nastavení přes API

Chcete-li nasadit Cloudflare Managed Ruleset pro danou zónu přes API, vytvořte pravidlo s execute akce v vstupní sada pravidel pro http_request_firewall_managed fáze.

Příklad

Následující příklad nasadí Cloudflare Managed Ruleset do http_request_firewall_managed fáze dané zóny ($ZONE_ID) vytvořením pravidla, které spouští spravovanou sadu pravidel.

  1. Vyvolejte Získání vstupní sady pravidel zóny operaci k získání definice vstupní sady pravidel pro http_request_firewall_managed fáze. Budete potřebovat ID zóny pro tento úkol.

    Získání vstupní sady pravidel zóny
    curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets/phases/http_request_firewall_managed/entrypoint" \
    	--request GET \
    	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
    {
    	"result": {
    		"description": "Zone-level phase entry point",
    		"id": "<RULESET_ID>",
    		"kind": "zone",
    		"last_updated": "2024-03-16T15:40:08.202335Z",
    		"name": "zone",
    		"phase": "http_request_firewall_managed",
    		"rules": [
    			// ...
    		],
    		"source": "firewall_managed",
    		"version": "10"
    	},
    	"success": true,
    	"errors": [],
    	"messages": []
    }
  2. Pokud vstupní sada pravidel již existuje (to znamená, pokud jste obdrželi 200 OK stavový kód a definici sady pravidel), poznamenejte si ID sady pravidel z odpovědi. Poté zavolejte Vytvoření pravidla sady pravidel zóny operaci pro přidání execute pravidlo do stávající sady pravidel nasazující Cloudflare Managed Ruleset (s ID efb7b8c949ac4650a09736fc376e9aee). Ve výchozím nastavení se pravidlo přidá na konec seznamu pravidel, která už v sadě pravidel jsou.

    Vytvoření pravidla sady pravidel zóny
    curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets/$RULESET_ID/rules" \
    	--request POST \
    	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
    	--json '{
    		"action": "execute",
    		"action_parameters": {
    				"id": "efb7b8c949ac4650a09736fc376e9aee"
    		},
    		"expression": "true",
    		"description": "Execute the Cloudflare Managed Ruleset"
    	}'
    {
    	"result": {
    		"id": "<RULESET_ID>",
    		"name": "Zone-level phase entry point",
    		"description": "",
    		"kind": "zone",
    		"version": "11",
    		"rules": [
    			// ... any existing rules
    			{
    				"id": "<RULE_ID>",
    				"version": "1",
    				"action": "execute",
    				"action_parameters": {
    					"id": "efb7b8c949ac4650a09736fc376e9aee",
    					"version": "latest"
    				},
    				"expression": "true",
    				"description": "Execute the Cloudflare Managed Ruleset",
    				"last_updated": "2024-03-18T18:08:14.003361Z",
    				"ref": "<RULE_REF>",
    				"enabled": true
    			}
    		],
    		"last_updated": "2024-03-18T18:08:14.003361Z",
    		"phase": "http_request_firewall_managed"
    	},
    	"success": true,
    	"errors": [],
    	"messages": []
    }
  3. Pokud vstupní sada pravidel neexistuje (to znamená, pokud jste obdrželi 404 Not Found stavový kód v kroku 1), vytvořte ji pomocí Vytvoření rulesetu zóny operaci. Zahrňte jedno pravidlo do rules pole, které spouští Cloudflare Managed Ruleset (s ID efb7b8c949ac4650a09736fc376e9aee) pro všechny příchozí požadavky v zóně.

    Vytvoření rulesetu zóny
    curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/rulesets" \
    	--request POST \
    	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
    	--json '{
    		"name": "My ruleset",
    		"description": "Entry point ruleset for WAF managed rulesets",
    		"kind": "zone",
    		"phase": "http_request_firewall_managed",
    		"rules": [
    				{
    						"action": "execute",
    						"action_parameters": {
    								"id": "efb7b8c949ac4650a09736fc376e9aee"
    						},
    						"expression": "true",
    						"description": "Execute the Cloudflare Managed Ruleset"
    				}
    		]
    	}'

Další kroky

Chcete-li nakonfigurovat Cloudflare Managed Ruleset přes API, vytvořte přepisy pomocí Rulesets API. Můžete provést následující konfigurace:

Příklady vytváření přepisů pomocí API najdete v Přepsání spravované sady pravidel.

Další zdroje

Další informace o práci se spravovanými sadami pravidel přes API najdete v Práce se spravovanými sadami pravidel v dokumentaci k Ruleset Engine.

Konfigurace pomocí Terraformu

Následující příklad nasadí Cloudflare Managed Ruleset pro zónu a přepíše akci a stav konkrétního pravidla.

Požadovaná oprávnění API tokenu

Alespoň jeden z následujících oprávnění tokenu je povinné:

  • Zone WAF Write

Nakonfigurujte cloudflare_ruleset ↗ prostředek:

# Configure a ruleset at the zone level for the "http_request_firewall_managed" phase
resource "cloudflare_ruleset" "zone_level_managed_waf" {
  zone_id     = var.cloudflare_zone_id
  name        = "Managed WAF entry point ruleset"
  description = "Zone-level WAF Managed Rules config"
  kind        = "zone"
  phase       = "http_request_firewall_managed"

  # Execute Cloudflare Managed Ruleset
  rules = [{
    ref         = "execute_cloudflare_managed_ruleset"
    description = "Execute Cloudflare Managed Ruleset on my zone-level phase entry point ruleset"
    expression  = "true"
    action      = "execute"
    action_parameters = {
      id = "efb7b8c949ac4650a09736fc376e9aee"
      overrides = {
        rules = [{
          id      = "5de7edfa648c4d6891dc3e7f84534ffa"
          action  = "log"
          enabled = true
        }]
      }
    }
  }]
}
# Configure a ruleset at the zone level for the "http_request_firewall_managed" phase
resource "cloudflare_ruleset" "zone_level_managed_waf" {
  zone_id     = var.cloudflare_zone_id
  name        = "Managed WAF entry point ruleset"
  description = "Zone-level WAF Managed Rules config"
  kind        = "zone"
  phase       = "http_request_firewall_managed"

  # Execute Cloudflare Managed Ruleset
  rules {
    ref         = "execute_cloudflare_managed_ruleset"
    description = "Execute Cloudflare Managed Ruleset on my zone-level phase entry point ruleset"
    expression  = "true"
    action      = "execute"
    action_parameters {
      id = "efb7b8c949ac4650a09736fc376e9aee"
      overrides {
        rules {
          id      = "5de7edfa648c4d6891dc3e7f84534ffa"
          action  = "log"
          enabled = true
        }
      }
    }
  }
}

Další informace najdete v tématu Konfigurace WAF Managed Rules pomocí Terraformu.

Požádejte o pilot zdarma

Domluvit pilot