[gl-como] R: Controllo i log

Davide De Prisco deprisco.davide@gmail.com
Dom 24 Ago 2014 19:39:36 CEST


Domani scriverò un bel commento per tutto
Il 23/ago/2014 11:30 "Daniele Figini" <danielefigini@alice.it> ha scritto:

> Ciao.
>
> Siccome sono 'gnurant, con cosa è scritto?
>
> Daniele
>
> -----Messaggio originale-----
> Da: gl-como [mailto:gl-como-bounces+danielefigini=alice.it@lists.linux.it]
> Per conto di Davide De Prisco
> Inviato: venerdì 22 agosto 2014 16.22
> A: Gruppo Linux Como
> Oggetto: Re: [gl-como] Controllo i log
>
> Piccoli miglioramenti, poco tempo e tanto legno da piallare....
> Manca la parte per la gestione dello sblocco degli ip_monelli dopo n
> giorni,
> o meglio c'e' ma e' in fase di test.
> E manca pure l'inserimento all'avvio di una regola di iptables per ogni ip
> di quelli bloccati ma e' una cosa semplice quella.
> Altre versioni da lunedi', ora vado a piallare.
>
> #!/bin/bash
> #Script per il controllo degli accessi ad un server web mando_la_mail=0;
> connessioni_al_giorno=150; file_di_log="/var/log/apache2/acces.log";
> file_ip_bloccati="./IP_BLOCCATI";
> file_ip_conosciuti="./IP_CONOSCIUTI";
> file_temp="./temp";
> giorni_di_blocco=7;
> ip_conosciuti="";
> oggi=`date +%y%m%d`;
> #Ripulisco gli IP dopo il tempo prestabilito riga=1; while read
> riga_ip_bloccato do { ip_bloccato=`echo $riga_ip_bloccato | awk ' { print
> $1}'`; giorno_di_blocco=`echo $riga_ip_bloccato | awk ' { print $2}'`; if[
> $oggi -gt $(($giorno_di_blocco+$giorni_di_blocco)) ] then sed -e 'd$riga'
> $file_ip_bloccati riga=$(($riga+1)); } done < $file_ip_bloccati
>
> while read ip_conosciuto
> do
> {
> ip_conosciuti=$ip_conosciuti"|"$ip_conosciuto;
> }
> done < $file_ip_conosciuti
> echo "Controllo dei log di apache" > ./testo_mail echo "IP bloccatti oggi"
> >
> ./elenco_ip_giornaliero grep -q -v [\'$ip_conosciuti\'] $file_di_log | awk
> '
> { print $1}' | sort | uniq -c | sort -n --key=1,8  > $file_temp while read
> linea do { volte=`echo $linea | awk ' { print $1}'`; ip=`echo $linea | awk
> '
> { print $2}'` ; if [ $volte -gt 150 ] then mando_la_mail=1; if  grep -q $ip
> /etc/hosts.allow then echo $ip " deve essere un tuo IP non inserito in "
> $file_ip_conosciuti
> >> ./testo_mail
> else
> if  grep -q $ip /etc/hosts.deny
> then
> echo $ip " e' gia' inserito in /etc/hosts.deny" >> ./testo_mail else
> oggi=`date +%j`; echo $ip " Inserisco un nuovo ip da bloccare per " $volte
> "
> connessioni">> ./testo_mail
> echo " ALL: "$ip >> /etc/hosts.deny ;
> iptables -I INPUT -s $ip -p tcp --dport 80 -j DROP iptables -I INPUT -s $ip
> -p udp --dport 80 -j DROP echo $ip >> ./elenco_ip_giornaliero; echo $ip >>
> $file_ip_bloccati" "$oggi; fi fi fi } done < $file_temp if [ $mando_la_mail
> -gt 0 ] then numerorighe=`wc --lines ./elenco_ip_giornaliero | egrep -o
> '[0-9]*'` if [ $numerorighe -gt 1 ] then mutt -s "Connessioni giornaliere"
> -- vosta_mail@dominio.com  < ./testo_mail fi fi
>
> --
> Davide
>
> --
> Mailing list info: http://lists.linux.it/listinfo/gl-como
>
>
> ---
> Questa e-mail è priva di virus e malware perché è attiva la protezione
> avast! Antivirus.
> http://www.avast.com
>
>
> --
> Mailing list info: http://lists.linux.it/listinfo/gl-como
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.linux.it/pipermail/gl-como/attachments/20140824/c1e552c8/attachment.html>


Maggiori informazioni sulla lista gl-como