Skip to content

Releases: Jason2605/PyFilter

PyFilter release v2.1.0!

12 Feb 16:20
17fb6ba
Compare
Choose a tag to compare

Release 2.1.0

This release includes many changes:

  • Redis now holds data on the last 10 bans (PyFilter-Admin) and changes the sqlite table layout

  • Ability to instantly ban IPs on certain regex patterns.

  • Save ban reason and server name to redis/sqlite (PyFilter-Admin)

  • Implement IPv6 banning

  • Remove debug print statements, add a month directory for the logs.

  • Redis PubSub

  • Fix iptables commands for v4/v6

  • Change scan method for Redis

  • Safe cursor closing on insert in Sql

  • Missing docstring

  • Fix "http_status_blocks" and remove IP from dictionary on ban

Details

  • Redis PubSub.
    • PubSub allows connection to be made to listen for published messages rather than scanning the entirety of redis looking for bans. That only happens on startup now rather than periodically.
  • IPv6 has been introduced!
  • Changes to the way data is stored to allow the use of PyFilter-Admin.
  • General cleanup of the files.
  • Ability to instantly ban on user defined regex patterns.

PyFilter-Admin has been released!

10 Dec 01:55
24e6072
Compare
Choose a tag to compare

PyFilter-Admin has now been released! This is a web front, which is still being worked on, to give some information into the bans PyFilter has made; it allows for manual banning if the datastore is set to redis.

PyFilter release v2.0.0

13 Nov 19:04
Compare
Choose a tag to compare

Release 2.0.0

  • Implement the use of threading

    • Each file will have its own thread keeping the file open and reading lines as they are wrote, this will help as each file is not being read over and over again for no reason, and will also act as logs are passed instead of the wait time.
  • Implement cross server ban syncing

    • Ban syncing works with the use of redis and supports unlimited servers with custom server names (no longer restricted to 0-9)
  • Cleanup of the files

  • Fixes for regex strings, and more regex strings included by default

  • Fixed CPU going to 100%

pyFilter

02 Nov 13:52
Compare
Choose a tag to compare

pyFilter aims to filter out all of the requests that are not legitimate to your server, and blocks them if too many are sent. It works by reading log files and checking if a failed request has came from the same IP address within a user configurable amount of time and adding rules to the firewall if too many attempts have been captured.