As with all the projects available through R-fx Networks, they over time have been designed to meet the everyday administrative needs I have and there-in are released to the public as if they are useful to me they certainly must be useful to someone else.
In recent months the previous version of BFD began to show signs of it age and limitations, not that there was anything inherently wrong with it per say it was just slow over large log sets and had a few quirks that I had never gotten around to addressing as quite simply - it worked.
With some consideration to performance and overall efficiency of the current project and weighting the options, it was decided that rewriting the core functions (not that there is many) and all rule files was the best approach . A couple days later and after testing across a number of system configurations (ensim, interworx, cpanel, plesk, direct admin), I am confident in saying that the next stable release of BFD is completed.
This new version has a rewritten core check function in the main bfd script that is by far more efficient and all rule files have been rewritten to use stream based regexp parsing with sed making for incredibly superior performance:
Test Log Set:
- 1.53 million lines of log data combined from /var/log/messages and /var/log/secure from 200+ Linux Cpanel servers
- processed for a resulting total of 27,193 auth failure events
- executed 4,708 bans post-processing of rules
- time to completion of bfd run on a Pentium D 2.8Ghz system with 1GB of RAM:
BFD 1.2: 21sec average
BFD 0.9: 3 minutes 47 seconds
- Results: BFD 1.2 is roughly 10 times faster than previous versions
With the performance aside, the alerting template for e-mail alerts is now far more manageable, especially on mobile devices. The configuration file has also been reworked with all variables renamed for better consistency and management along with the ordering of variables changed for better usability.
Finally, the execution time of default BFD installs is now 3 minutes and can safely be reduced to once a minute should it be desired by the user with no noticeable performance impacts.
Having said all that, you can download the new BFD 1.2 with the following details:
Home: http://www.rfxn.com/bfd.php
Download: http://www.rfxn.com/downloads/bfd-current.tar.gz
README: http://www.rfxn.com/appdocs/README.bfd
ChangeLog: http://www.rfxn.com/appdocs/CHANGELOG.bfd
If you have a copy of BFD already installed, the new version will overwrite it and you need only open /usr/local/bfd/conf.bfd and reset the e-mail settings and trigger value for bans. Please also be sure to take a quick read of the README file so you can properly configure BFD to meet your needs (especially those performing new BFD installs).
