From 1b31665b4fe66648a55f539072f61f8a4b9f0db2 Mon Sep 17 00:00:00 2001 From: Julien Herr Date: Fri, 22 May 2026 23:38:41 +0200 Subject: [PATCH] docs: update WAF rate limiting instructions for free tier accuracy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix menu path: Security → Security rules (not Security → WAF) - Add free tier limitations note: 1 rule max, 10s period/block cap - Show recommended vs free tier limits side by side in table - Remove HTTP method filter from conditions (not available in rate limiting rules) - Note Terraform supports method filtering and longer periods (paid plan) Co-Authored-By: Claude Sonnet 4.6 --- docs/index.html | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/docs/index.html b/docs/index.html index d76d43b..a1cc075 100644 --- a/docs/index.html +++ b/docs/index.html @@ -923,7 +923,8 @@ bucket_name = "kill-the-news-attachments"

Via Cloudflare Dashboard

-

Go to Security → WAF → Rate limiting rules and create one rule per endpoint below.

+

Go to Security → Security rules, click Create rule, choose Rate limiting rule, and create one rule per endpoint below.

+

⚠️ Free tier limitations: only 1 rate limiting rule allowed; period and block duration capped at 10 seconds. Prioritise the /api/inbound rule — it's the public-facing attack surface. Upgrade to a paid plan for full coverage.

Terraform
@@ -937,26 +938,30 @@ bucket_name = "kill-the-news-attachments"
WAF rules
- + - + + + - + + +
EndpointConditionLimitAction
EndpointCondition (URI Path)Limit (recommended)Limit (free tier)Action (recommended)Action (free tier)
/api/inboundURI path = /api/inbound, method = POSTwildcard /api/inbound/* 60 req / min / IP10 req / 10 s / IP Block (1 min)Block (10 s)
/admin*URI path starts with /adminwildcard /admin/* 20 req / min / IP20 req / 10 s / IP Managed Challenge (5 min)Managed Challenge (10 s)
-

Terraform equivalent:

+

Terraform equivalent (supports method filtering and longer periods — requires a paid Cloudflare plan):

main.tf
resource "cloudflare_ruleset" "rate_limiting" {