flaskddos

How can I limit requests per minute on a web server (Flask)


I want to make an anti-ddos. I want to make it so if more than 45 requests are made in one minute, the ip that requested that will be ip-blacklisted for 30 minutes.

How can I do this with flask, no db


Solution

  • I won't recommend only rate-limiting it just won't help you if the attacker is using proxies and can set the requests per second for every Proxy. I would recommend using Cloudflare with challenges (js challenges) you can also rate Limit your requests there for 0.05$ every 10000 legit requests.