scripts/archive/archives/analyse_komaz/analyse.cron

84 lines
2.8 KiB
Bash
Executable file

#!/bin/sh
##
## Analyse
##
## Made by Tab <rv@crans.org>
##
## Started on Tue 09 Oct 2001 01:28:25 AM CEST tab
## MAJ : 06/02/2003 -- Fred
TEMPFILE="/tmp/analyse.mail"
# Options pour les stats traffic
PROG="/usr/scripts/analyse_komaz/nacct.py"
OPTIONS="-N 15"
OPTIONS2="-N 15 -c 2"
OPTIONS3="-N 15 -c 5"
# Divers chemins
BLACKLIST="/var/zamok/CRANS/blacklist.cf"
AUTODISC_LOG="/var/log/autodisconnect.log"
VIRUS_BLACKLIST="/tmp/virus_blacklist"
#################################################################################
# Machines ayant été disconnectées dans les 24h :
# affichage de leur historique
echo "Bilan des autodisconnexions des dernières 24h :" >> $TEMPFILE
echo "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=" >> $TEMPFILE
if [ -e $AUTODISC_LOG ]; then
for host in $(awk -F'[ .]' '/'$(date --date=yesterday +%d-%m-%Y)'-(0[7-9]|1|2)|'$(date +%d-%m-%Y)'-0[0-6]/ {print $2}' $AUTODISC_LOG)
do
echo "$host :"
( awk -F'-' '/'$host'.crans.org/ {print $3$2"@"$1"/"$2"/"$3" : autodisconnecté"}' $AUTODISC_LOG
awk -F'[:/ ]' '/^'$host'/ || /^#'$host'/ {print $6$5"@"$4"/"$5"/"$6" : déco manuelle (->"$7"/"$8"/"$9")"}' $BLACKLIST ) \
| sort -r \
| awk -F@ '{print "\t"$2}'
done >> $TEMPFILE
else
echo -e "Problème avec $AUTODISC_LOG" >> $TEMPFILE
fi
echo -e "\n" >> $TEMPFILE
#################################################################################
# Vérolés
if [ -e $VIRUS_BLACKLIST ]; then
echo "Bilan des bloquages web pour virus :" >> $TEMPFILE
echo "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-" >> $TEMPFILE
echo "Il y a $(wc -l $VIRUS_BLACKLIST | awk '{print $1}') machines infectées." >> $TEMPFILE
if [ -e $VIRUS_BLACKLIST.hier ] ; then
diff -U0 -s $VIRUS_BLACKLIST.hier $VIRUS_BLACKLIST \
| egrep -v '\-\-\-|\+\+\+|@@' >> $TEMPFILE
else
cat $VIRUS_BLACKLIST >> $TEMPFILE
fi
cp -f $VIRUS_BLACKLIST $VIRUS_BLACKLIST.hier
echo -e "\n" >> $TEMPFILE
fi
#################################################################################
# Statistiques
echo "Statistiques upload/download :" >> $TEMPFILE
echo "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-" >> $TEMPFILE
if [ -x $PROG ]; then
echo -e "Upload (Download) pur normal :\n" >> $TEMPFILE
$PROG $OPTIONS | tail -15 | awk -F "|" '{print $1" ("$3")"" "$7}' >> $TEMPFILE
echo -e "\nUpload total normal :\n" >> $TEMPFILE
$PROG $OPTIONS2 | tail -15 | awk -F "|" '{print $2" "$7}' >> $TEMPFILE
echo -e "\nUpload total exempté :\n" >> $TEMPFILE
$PROG $OPTIONS3 | tail -15 | awk -F "|" '{print $5" "$7}' >> $TEMPFILE
else
echo -e "Problème avec $PROG" >> $TEMPFILE
fi
#################################################################################
# Envoi du mail
cat $TEMPFILE |/usr/bin/mail -s "Stats -- $(date --date=yesterday +%A\ %d\ %B\ %Y)" disconnect@crans.org
rm -f $TEMPFILE