Las reglas por IP y por país son reglas de borde de tipo ip y geo. Se aplican en cualquier modo del WAF, antes de los límites de peticiones y del WAF.
Reglas por IP
| Campo | Valor |
|---|---|
ip | Una dirección IPv4 o IPv6 (203.0.113.7, 2001:db8::1) o un rango CIDR (203.0.113.0/24, 2001:db8::/32). Se guarda en forma canónica. |
action | block: responder 403. allow: saltarse las listas de amenazas y las reglas por país para esta dirección. |
Una regla allow no se salta los límites de peticiones, el WAF, los escudos ni el control de rastreadores IA. Evita reglas solapadas con acciones distintas para la misma dirección.
Reglas por país
| Campo | Valor |
|---|---|
country_code | Código ISO 3166-1 alfa-2, p. ej. RU. Se guarda en mayúsculas. |
action | block: responder 403 a los visitantes de ese país. allow: no bloquear nunca ese país con una regla por país. |
Una regla por país solo actúa sobre el país que nombra: una regla allow no bloquea al resto de países. Para limitar un sitio a unos pocos países, añade reglas block para los que no quieras. Los visitantes cuyo país no se puede determinar nunca se bloquean con una regla por país.
Añadir una regla
Dominio → Seguridad → Firewall → Reglas: Reglas por IP → Añadir regla por IP o Países → Añadir regla por país. Elige la Acción y, si quieres, los nombres en Se aplica a y una Nota.
openwaf-cloud ctl rules add example.com kind=ip ip=203.0.113.0/24 action=block note="Escáner" --reason "Bloquear la red del escáner"
openwaf-cloud ctl rules add example.com kind=geo country_code=KP action=block --reason "Sin clientes allí"
openwaf-cloud ctl rules add example.com kind=ip ip=198.51.100.10 action=allow hosts:='["admin.example.com"]' --reason "IP de la oficina"
openwaf-cloud ctl rules list example.com
openwaf-cloud ctl rules rm example.com 42 --reason "El escáner ya no está"curl -sS -X POST "https://dash.openwaf.dev/v1/orgs/$ORG/zones/example.com/rules" \
-H "Authorization: Bearer $OPENWAF_TOKEN" \
-H "X-Change-Reason: Bloquear la red del escáner" \
-H "Content-Type: application/json" \
-d '{"kind": "ip", "ip": "203.0.113.0/24", "action": "block", "note": "Escáner"}'Borra una regla con DELETE /v1/orgs/{org}/zones/{zone}/rules/{rule} y la misma cabecera X-Change-Reason.
add_rule con {"zone": "example.com", "kind": "ip", "ip": "203.0.113.0/24", "action": "block", "reason": "…"}; list_rules enseña los identificadores y remove_rule borra una. Las dos simulan primero.
Las peticiones bloqueadas aparecen en los eventos de seguridad como IP Rule o Geo Block.