← Cloudflare One / cloudflare-one / traffic-policies / dns-policies
Časté zásady
Následující zásady DNS v Cloudflare Gateway se běžně používají k zabezpečení provozu DNS. Každý příklad obsahuje postup jak pro dashboard, tak pro API, který si můžete přizpůsobit potřebám své organizace.
Základní sadu doporučených zásad najdete v Zabezpečení internetového provozu a aplikací SaaS.
Viz Stránka zásad DNS pro úplný seznam dalších selektorů, operátorů a akcí.
Povolit firemní domény
Tato zásada umožňuje uživatelům přistupovat k oficiálním firemním doménám. Nasazením zásady s vysokou pořadí priority, zajistíte, že zaměstnanci budou mít přístup k důvěryhodným doménám, i když spadají do blokované kategorie, jako je Nově zjištěné domény nebo Přihlašovací stránky.
| Selektor | Operátor | Hodnota | Akce | Priorita |
|---|---|---|---|---|
| Doména | v seznamu | Povolené domény | Allow | 1 |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Allow corporate domains",
"description": "Allow any internal corporate domains added to a list",
"precedence": 0,
"enabled": true,
"action": "allow",
"filters": [
"dns"
],
"traffic": "any(dns.domains[*] in $<LIST_UUID>)",
"identity": ""
}'Chcete-li získat identifikátory UUID svých seznamů, použijte Seznam seznamů Zero Trust koncový bod.
Blokovat bezpečnostní hrozby
Blokovat kategorie zabezpečení jako Command & Control, Botnet a Malware na základě zpravodajských informací Cloudflare o hrozbách.
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| Security Categories | v | Všechna bezpečnostní rizika | Block |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "All-DNS-SecurityCategories-Blocklist",
"description": "Block security categories based on Cloudflare'\''s threat intelligence",
"precedence": 20,
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "any(dns.security_category[*] in {68 178 80 83 176 175 117 131 134 151 153})",
"identity": ""
}'resource "cloudflare_zero_trust_gateway_policy" "block_security_threats" {
account_id = var.cloudflare_account_id
name = "All-DNS-SecurityCategories-Blocklist"
description = "Block security categories based on Cloudflare's threat intelligence"
precedence = 20
enabled = true
action = "block"
filters = ["dns"]
traffic = "any(dns.security_category[*] in {68 178 80 83 176 175 117 131 134 151 153})"
}Blokovat kategorie obsahu
Kategorie zahrnuté v této zásadě nemusí vždy představovat bezpečnostní hrozbu, ale jejich blokování může pomoci minimalizovat riziko, kterému je vaše organizace vystavena. Další informace naleznete v kategorie domén.
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| Content Categories | v | Questionable Content, Bezpečnostní rizika, Různé | Block |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "All-DNS-ContentCategories-Blocklist",
"description": "Block common content categories that may pose a risk",
"precedence": 30,
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "any(dns.content_category[*] in {17 85 87 102 157 135 138 180 162 32 169 177 128 15 115 119 124 141 161})",
"identity": ""
}'resource "cloudflare_zero_trust_gateway_policy" "block_content_categories" {
account_id = var.cloudflare_account_id
name = "All-DNS-ContentCategories-Blocklist"
description = "Block common content categories that may pose a risk"
enabled = true
action = "block"
filters = ["dns"]
traffic = "any(dns.content_category[*] in {17 85 87 102 157 135 138 180 162 32 169 177 128 15 115 119 124 141 161})"
identity = ""
}Blokovat dynamický seznam kategorií
Seznam ID kategorií můžete přidat do EDNS (Extension Mechanisms for DNS) ↗ hlavičky požadavku odeslaného do Gateway jako objekt JSON pomocí kódu OPT 65050. EDNS umožňuje k dotazu DNS připojit další metadata nad rámec standardních polí. Například:
{
"categories": [2, 67, 125, 133]
}S Request Context Categories selektor, můžete blokovat ID kategorií odesílaná pomocí EDNS. To se hodí pro filtrování podle kategorií, které nejsou známé v době vytváření zásady, nebo pro vynucení filtrování obsahu DNS specifického pro dané zařízení, aniž byste dosáhli limitu účtu. Když Gateway pomocí tohoto selektoru zablokuje dotaz DNS, požadavek vrátí kód Extended DNS Error (EDE) 15 (Blocked), spolu s polem obsahujícím seznam shodujících se kategorií.
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| Request Context Category | je | Present | Block |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "All-DNS-Bock-Category-Matches-In-Request",
"description": "Block all category matches in the request EDNS context",
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "dns.categories_in_request_context_matches",
"identity": ""
}'resource "cloudflare_zero_trust_gateway_policy" "block_content_categories" {
account_id = var.cloudflare_account_id
name = "All-DNS-Bock-Category-Matches-In-Request"
description = "Block all category matches in the request EDNS context"
enabled = true
action = "block"
filters = ["dns"]
traffic = "dns.categories_in_request_context_matches"
identity = ""
}Blokovat neautorizované aplikace
Chcete-li minimalizovat riziko Shadow IT, některé organizace se rozhodnou omezit svým uživatelům přístup k určitým webovým nástrojům a aplikacím. Následující zásada například blokuje známé nástroje AI:
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| Aplikace | v | Umělá inteligence | Block |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "All-DNS-Application-Blocklist",
"description": "Block access to unauthorized AI applications",
"precedence": 40,
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "any(app.type.ids[*] in {25})",
"identity": ""
}'resource "cloudflare_zero_trust_gateway_policy" "block_unauthorized_apps" {
account_id = var.cloudflare_account_id
name = "All-DNS-Application-Blocklist"
description = "Block access to unauthorized AI applications"
enabled = true
action = "block"
filters = ["dns"]
traffic = "any(app.type.ids[*] in {25})"
identity = ""
}Blokovat zakázané země
Můžete zavést zásady, které blokují weby hostované v zemích označených jako vysoce rizikové. Toto označení může vycházet z požadavků vaší organizace nebo z předpisů, mimo jiné EAR (Export Administration Regulations) ↗, OFAC (Office of Foreign Assets Control) ↗, a ITAR (International Traffic in Arms Regulations) ↗. Tato zásada blokuje dotazy DNS, které se překládají na IP adresy geolokalizované v zemích, jež zadáte.
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| IP geolokace vyřešené země | v | Afghánistán, Bělorusko, Kongo (Kinshasa), Kuba, Írán, Irák, Korea, Severní, Myanmar, Ruská federace, Súdán, Sýrie, Ukrajina, Zimbabwe | Block |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Block banned countries",
"description": "Block access to banned countries",
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "any(dns.dst.geo.country[*] in {\"AF\" \"BY\" \"CD\" \"CU\" \"IR\" \"IQ\" \"KP\" \"MM\" \"RU\" \"SD\" \"SY\" \"UA\" \"ZW\"})",
"identity": ""
}'Blokovat domény nejvyšší úrovně
Blokování často zneužívané ↗ domény nejvyšší úrovně (TLD): poslední část názvu domény, například .com nebo .ru : může snížit bezpečnostní rizika, zejména pokud povolení přístupu nepřináší žádnou zjevnou výhodu. Podobně může být nutné omezit přístup ke konkrétním národním doménám nejvyšší úrovně (TLD), aby byly dodrženy předpisy, jako je ITAR ↗ nebo OFAC ↗.
| Selektor | Operátor | Hodnota | Logika | Akce |
|---|---|---|---|---|
| Doména | matches regex | [.](cn|ru)$ |
Nebo | Block |
| Doména | matches regex | [.](rest|hair|top|live|cfd|boats|beauty|mom|skin|okinawa)$ |
Nebo | |
| Doména | matches regex | [.](zip|mobi)$ |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Block top-level domains",
"description": "Block top-level domains that are frequently used for malicious practices",
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "any(dns.domains[*] matches \"[.](cn|ru)$\") or any(dns.domains[*] matches \"[.](rest|hair|top|live|cfd|boats|beauty|mom|skin|okinawa)$\") or any(dns.domains[*] matches \"[.](zip|mobi)$\")",
"identity": ""
}'Blokovat phishingové útoky
Chcete-li se chránit proti sofistikované phishingové útoky ↗, můžete uživatelům zabránit v přístupu k phishingovým doménám, které cílí přímo na vaši organizaci. Následující zásada blokuje konkrétní klíčová slova spojená s organizací nebo jejími ověřovacími službami (například okta, 2fa, cloudflare nebo sso), a přitom stále umožňuje přístup k oficiálním firemním doménám.
| Selektor | Operátor | Hodnota | Logika | Akce |
|---|---|---|---|---|
| Doména | not in list | Podnikové domény | And | Block |
| Doména | matches regex | .*okta.*|.*cloudflare.*|.*mfa.*|.sso.* |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Block phishing attacks",
"description": "Block attempts to phish specific domains targeting your organization",
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "not(any(dns.domains[*] in $<LIST_UUID>)) and any(dns.domains[*] matches \".*okta.*\\|.*cloudflare.*\\|.*mfa.*\\|.sso.*\")",
"identity": ""
}'Chcete-li získat identifikátory UUID svých seznamů, použijte Seznam seznamů Zero Trust koncový bod.
Blokovat online sledování
Z důvodu ochrany soukromí uživatelů některé organizace blokují sledovací domény, jako například dig.whatsapp.com a také dalších sledovacích domén integrovaných na úrovni operačního systému. Tato zásada se implementuje vytvořením vlastního blocklistu. Další informace najdete v toto úložiště ↗ pro seznam rozšířených sledovacích domén, které můžete přidat do svého blocklistu.
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| Doména | v seznamu | Nejčastější sledovací domény | Block |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Block online tracking",
"description": "Block domains used for tracking at an OS level",
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "any(dns.domains[*] in $<LIST_UUID>)",
"identity": ""
}'Chcete-li získat identifikátory UUID svých seznamů, použijte Seznam seznamů Zero Trust koncový bod.
Blokovat škodlivé IP adresy
Blokujte konkrétní IP adresy, o kterých je známo, že jsou škodlivé nebo představují hrozbu pro vaši organizaci. Tato zásada se obvykle implementuje vytvořením vlastních blokovacích seznamů nebo pomocí blokovacích seznamů poskytovaných partnery pro threat intelligence či regionálními týmy CERT (Computer Emergency and Response Team).
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| Vyřešená IP | v seznamu | DShield | Block |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Block malicious IPs",
"description": "Block specific IP addresses that are known to be malicious or pose a threat to your organization",
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "any(dns.resolved_ips[*] in $<LIST_UUID>)",
"identity": ""
}'Chcete-li získat identifikátory UUID svých seznamů, použijte Seznam seznamů Zero Trust koncový bod.
Zapnutí filtru CIPA
CIPA Filter (Children's Internet Protection Act) je soubor podkategorií, které pokrývají širokou škálu témat jež mohou být škodlivá nebo nevhodná pro nezletilé. Používá se jako součást Project Cybersafe Schools a zablokujte přístup k nežádoucímu nebo škodlivému online obsahu. Po vytvoření této zásady bude mít vaše organizace minimálně Soulad s CIPA ↗.
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| Content Categories | v | CIPA Filter | Block |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Turn on CIPA filter",
"description": "Block access to unwanted or harmful online content for children",
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "any(dns.content_category[*] in {182})",
"identity": ""
}'Skrýt explicitní výsledky vyhledávání
SafeSearch je funkce vyhledávačů, která pomáhá filtrovat explicitní nebo urážlivý obsah. Funkci SafeSearch můžete vynutit u vyhledávačů jako Google, Bing, Yandex, YouTube a DuckDuckGo:
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| Content Categories | v | Search Engines | Safe Search |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Hide explicit search results",
"description": "Force SafeSearch on search engines to filter explicit or offensive content",
"enabled": true,
"action": "safesearch",
"filters": [
"dns"
],
"traffic": "any(dns.content_category[*] in {145})",
"identity": ""
}'Zkontrolujte identitu uživatele
Nakonfigurujte přístup pro jednotlivé uživatele nebo skupiny přidáním podmínky založené na identitě do vašich zásad.
| Selektor | Operátor | Hodnota | Logika | Akce |
|---|---|---|---|---|
| Aplikace | v | Salesforce | And | Block |
| User Group Names | v | Contractors |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Check user identity",
"description": "Filter traffic based on a user identity group name",
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "any(app.ids[*] in {606})",
"identity": "any(identity.groups.name[*] in {\"Contractors\"})"
}'Omezte přístup na konkrétní skupiny
Filtrujte DNS dotazy, abyste umožnili přístup pouze konkrétním uživatelům.
Následující příklad zahrnuje dvě zásady. První zásada povoluje zadanou skupinu, druhá blokuje všechny ostatní uživatele. Aby se zásady vyhodnocovaly správně, umístěte zásadu povolení nad zásadu blokování. Další informace najdete v pořadí priority.
1. Povolte skupinu
| Selektor | Operátor | Hodnota | Logika | Akce |
|---|---|---|---|---|
| Content Categories | v | Social Networks | And | Allow |
| User Group Names | v | Marketing |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Allow social media for Marketing",
"description": "Allow access to social media sites for users in the Marketing group",
"precedence": 1,
"enabled": true,
"action": "allow",
"filters": [
"dns"
],
"traffic": "any(dns.content_category[*] in {149})",
"identity": "any(identity.groups.name[*] in {\"Marketing\"})"
}'2. Zablokujte všechny ostatní uživatele
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| Content Categories | v | Social Networks | Block |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Block social media",
"description": "Block social media for all other users",
"precedence": 2,
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "any(dns.content_category[*] in {149})",
"identity": ""
}'Řízení verze IP protokolu
Uživatelé s plánem Enterprise mohou tyto zásady kombinovat s zásada Egress řídit, která verze IP se použije, když se Gateway připojuje k cílovému serveru.
Volitelně můžete pomocí selektoru Domain řídit verzi IP protokolu pro konkrétní weby.
Vynutit IPv4
Vynutit u uživatelů připojení přes IPv4 zablokováním AAAA (IPv6) rozlišení záznamu.
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| Typ záznamu dotazu | je | AAAA | Block |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Force IPv4",
"description": "Force users to connect with IPv4 by blocking IPv6 resolution",
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "dns.query_rtype == \"AAAA\"",
"identity": ""
}'Vynutit IPv6
Vynutit u uživatelů připojení přes IPv6 zablokováním A (IPv4) rozlišení záznamu.
| Selektor | Operátor | Hodnota | Akce |
|---|---|---|---|
| Typ záznamu dotazu | je | A | Block |
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"name": "Force IPv6",
"description": "Force users to connect with IPv6 by blocking IPv4 resolution",
"enabled": true,
"action": "block",
"filters": [
"dns"
],
"traffic": "dns.query_rtype == \"A\"",
"identity": ""
}'