Skip to content

Protection rules

Rules are evaluated top to bottom per request; the first match wins. Build them in the portal's rule editor and order them by drag and drop.

Match

Key Example
path /admin*, /api/v1/*, /status.php
path_class auth, admin (built-in path groups)
geo list of country codes, [IN, RU]
ip addresses or CIDRs
asn autonomous system numbers
ja4 TLS fingerprints

match_mode combines several keys with and or or; negate inverts the match.

Actions

Action Effect
allow pass, and skip the proof-of-work challenge (use for API clients and monitoring)
deny 403
challenge proof-of-work challenge
rate limit to threshold requests per window (for example 10 per 10 s), then challenge

Defense posture

The standard posture adds default rules: authentication paths are limited to 10 requests per 10 s and admin paths to 20 per 10 s, both with a challenge above the limit. Threat intelligence lists (abuse sources, Tor exits) can be set to log, challenge or deny.

Example: allow an API prefix for machine clients, challenge one country, deny an ASN.

- match: {path: "/api/*"}       action: allow
- match: {geo: [IN]}            action: challenge
- match: {asn: [64496]}         action: deny