This is a simple application to restrict access by IP address. There’s a few other apps that do this out there, but they tend to have other features such as rate limiting. I think it’s best to leave rate-limiting to rate-limiting specific apps, so this just blocks IPs.
- pip install django-block-ip
- Add block_ip to your INSTALLED_APPS.
- Add block_ip.middleware.BlockIPMiddleware to your MIDDLEWARE_CLASSES.
- Run syncdb.
- Add one or more entries to the BlockIP list in the admin.
You can just enter a single IP or use a network mask, like this: 184.108.40.206/24
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.