#!/bin/bash # Check anonymous-ftp logfile voor incoming anonymous transfers WEEKDAG=`date +%a` MAAND=`date +%b` DAGNUM=`date +%d` FTPLOG=/var/adm/ftpd/xferlog TEMPLOG=ftplog.today RESULT=ftplog.mail HTMLRESULT=/home/www/htdocs/system/ftpusage.html FTPMAINTAINER=koos awk ' $1=="'$WEEKDAG'" && $2=="'$MAAND'" && $3=="'$DAGNUM'" { print } ' < $FTPLOG > $TEMPLOG echo "Ftp site usage for `date`" > $RESULT echo "-------------------------------------------------------------" >> $RESULT echo "Incoming anonymous files :" >> $RESULT awk ' $12=="i" && $13=="a" { print } ' < $TEMPLOG >> $RESULT echo "-------------------------------------------------------------" >> $RESULT echo "Outgoing anonymous traffic :" >> $RESULT echo -n "Files : " >> $RESULT awk ' BEGIN { nfiles=0 } $12=="o" && $13=="a" { nfiles++ } END { print nfiles } ' < $TEMPLOG >> $RESULT echo -n "Bytes : " >> $RESULT awk ' BEGIN { nbytes=0 } $12=="o" && $13=="a" { nbytes+=$8 } END { print nbytes } ' < $TEMPLOG >> $RESULT echo "-------------------------------------------------------------" >> $RESULT echo "Incoming realuser traffic :" >> $RESULT echo -n "Files : " >> $RESULT awk ' BEGIN { nfiles=0 } $12=="i" && $13=="r" { nfiles++ } END { print nfiles } ' < $TEMPLOG >> $RESULT echo -n "Bytes : " >> $RESULT awk ' BEGIN { nbytes=0 } $12=="i" && $13=="r" { nbytes+=$8 } END { print nbytes } ' < $TEMPLOG >> $RESULT echo "-------------------------------------------------------------" >> $RESULT echo "outgoing realuser traffic :" >> $RESULT echo -n "Files : " >> $RESULT awk ' BEGIN { nfiles=0 } $12=="o" && $13=="r" { nfiles++ } END { print nfiles } ' < $TEMPLOG >> $RESULT echo -n "Bytes : " >> $RESULT awk ' BEGIN { nbytes=0 } $12=="o" && $13=="r" { nbytes+=$8 } END { print nbytes } ' < $TEMPLOG >> $RESULT echo "-------------------------------------------------------------" >> $RESULT mail -s "FTP server usage report" $FTPMAINTAINER < $RESULT > /dev/null rm -f $RESULT cat > $HTMLRESULT << EOF
EOF
awk ' $12=="o" && $13=="a" { print $9 } ' < $FTPLOG | sort | uniq -c | sort -nr | awk ' { printf "%6d %s\n",$1,$2,$2 } ' >> $HTMLRESULT
cat >> $HTMLRESULT << EOF
Go To my homepage. EOF rm -f $TEMPLOG