Skip to main content

Django middleware for blocking IPs listed in stopforumspam.com

Project description

A django application that provides middleware for blocking IPs listed in stopforumspam.com’s database.

A management command is provided for updating the database:

manage.py sfsupdate [–force]

…and all IPs are stored in Django models so you can add your own as well (remember to mark them permanent so they don’t get deleted!)

Installation

Install the latest 1.1 release from pypi:

sudo pip install stopforumspam

Add this to settings.MIDDLEWARE_CLASSES

‘stopforumspam.middleware.StopForumSpamMiddleware’

Then add this to INSTALLED_APPS

‘stopforumspam’

And run

./manage.py syncdb

To insert all the IPs run this command, which you should make a cronjob (run it every 24h).

./manage.py sfsupdate

You may remove stopforumspam from your INSTALLED_APPS after, if you do not wish to see it in your admin pages.

Configuration

The following options exist for your project’s settings.py file:

To check ALL POST requests:

SFS_ALL_POST_REQUESTS = True

To ignore some URLS:

SFS_URLS_IGNORE = [“url_name”, “/url/path”]

To only include some URLS (only works if SFS_ALL_POST_REQUEST=False):

SFS_URLS_INCLUDE = [“url_name”, “/url/path”]

To configure where to download the file from (you can MAX download 2 times a day) - see http://www.stopforumspam.com for more resources:

SFS_SOURCE_ZIP = “http://www.stopforumspam.com/downloads/listed_ip_7.zip

You can control how often at most the update should be performed

SFS_CACHE_EXPIRE = 1 #day

…and how long back the log should remember the rejection of POSTS and IPs.

SFS_LOG_EXPIRE = 1 #days

Remember to configure this as well – it’s the name of the file inside the .zip file:

SFS_ZIP_FILENAME = “listed_ip_7.txt”

For testing you can force all requests to be checked.

SFS_FORCE_ALL_REQUESTS = True

Cron Jobs

You probably want to automatically update the list of blocked IP addresses every 24 hours or 48 hours. To do that, you can insert a line in crontab.

0 2 * * * cd /your/project/path/ && python manage.py sfsupdate

The above would update at 2 AM every night.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stopforumspam-1.2.tar.gz (5.4 kB view details)

Uploaded Source

File details

Details for the file stopforumspam-1.2.tar.gz.

File metadata

  • Download URL: stopforumspam-1.2.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for stopforumspam-1.2.tar.gz
Algorithm Hash digest
SHA256 0f1c5eec7143b031a1ddc49587dd68bcff8491f358724254841bdd54a0269aff
MD5 25065b935d00df9c4647518e17611bf6
BLAKE2b-256 2047cfbf4f3eb22dd7112e429b9cd9f517aadd3f0bd08970db3c78fa8d9ee721

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page