INTEGRITY Dokumentace

Výrazy formuláře

Pravidla se zapisují v jazyce Cloudflare Rules: doménově specifickém jazyce (DSL), který má napodobovat sémantiku nástroje Wireshark. Další informace najdete v Rules language dokumentace.

Pro jednoduchý příklad si níže prohlédněte, jak byste porovnali zdrojovou IP adresu:

ip.src == 192.0.2.0

Výrazy mohou být složitější, pokud spojíte více podmínek pomocí logického operátoru:

ip.src == 192.0.2.1 && (tcp.flags.push || tcp.flags.reset)

Možnosti

Cloudflare Network Firewall (dříve Magic Firewall) můžete použít k přeskočení nebo blokování pakety na základě zdrojové nebo cílové IP adresy, zdrojového nebo cílového portu, protokolu, délky paketu nebo bit field match.

Omezení

Porovnání Wirefilter podporují notaci CIDR, ale pouze uvnitř sad. Například:

ip.src == 192.0.2.0/24  # bad
ip.src in { 192.0.2.0/24 }  # good

Výrazy mají limit složitosti, kterého lze snadno dosáhnout, pokud výraz obsahuje mnoho spojených nebo vnořených klauzulí. Zde je příklad:

(tcp.dstport == 1000 || tcp.dstport == 1001) && (tcp.dstport == 1002 || tcp.dstport == 1003) && (tcp.dstport == 1004 || tcp.dstport == 1005) && (tcp.dstport == 1006 || tcp.dstport == 1007) && (tcp.dstport == 1008 || tcp.dstport == 1009) && (tcp.dstport == 1010 || tcp.dstport == 1011) && (tcp.dstport == 1012 || tcp.dstport == 1013) && (tcp.dstport == 1014 || tcp.dstport == 1015) && (tcp.dstport == 1016 || tcp.dstport == 1017)

Pokud je limit dosažen, odpověď bude obsahovat 400 stavový kód a chybovou zprávu ruleset exceeds complexity constraints. Rozdělte výraz do více pravidel a zkuste to znovu.