diff --git a/CHANGELOG b/CHANGELOG index 793cb8b9..2eb5540c 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -17,6 +17,7 @@ ver. 0.7.7 (2007/??/??) - Call Python interpreter directly (instead of using "env") - Added file support to fail2ban-regex. Benchmark feature has been removed +- Added cacti script and template. ver. 0.7.6 (2007/01/04) - beta ---------- diff --git a/MANIFEST b/MANIFEST index 2a71efd5..209a64a0 100644 --- a/MANIFEST +++ b/MANIFEST @@ -90,3 +90,4 @@ man/fail2ban-regex.h2m man/generate-man files/gentoo-initd files/redhat-initd +files/cacti/fail2ban_stats.sh diff --git a/files/cacti/fail2ban_stats.sh b/files/cacti/fail2ban_stats.sh new file mode 100644 index 00000000..afe52466 --- /dev/null +++ b/files/cacti/fail2ban_stats.sh @@ -0,0 +1,47 @@ +#!/bin/bash +# This file is part of Fail2Ban. +# +# Fail2Ban is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# Fail2Ban is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Fail2Ban; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# This script can be used to collect data for Cacti. One parameter is needed, +# the jail name. It must be a currently running jail. The script returns two +# value: the number of failures and the number of banned host. +# +# If Fail2ban is not available in the path, you can change the value of the +# variable FAIL2BAN below.. You can add option to this variable too. Please +# look at the man page of fail2ban-client for more information. +# +# Author: Cyril Jaquier +# +# $Revision$ + +FAIL2BAN="fail2ban-client" + +JAIL=$1 + +if [ -z $JAIL ]; then + echo "Usage:" `basename $0` "" + exit +fi + +IFS="" + +STATS=$($FAIL2BAN status $JAIL) + +TOTAL_FAILED=$(echo $STATS | grep "Total failed:" | awk '{ print $5 }') +TOTAL_BANNED=$(echo $STATS | grep "Total banned:" | awk '{ print $4 }') + +echo "failed:"$TOTAL_FAILED "banned:"$TOTAL_BANNED +