84 lines
2.8 KiB
Bash
Executable file
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
|