<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:"Segoe UI";
        panose-1:2 11 5 2 4 2 4 2 2 3;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Testo fumetto Carattere";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.TestofumettoCarattere
        {mso-style-name:"Testo fumetto Carattere";
        mso-style-priority:99;
        mso-style-link:"Testo fumetto";
        font-family:"Tahoma","sans-serif";}
span.StileMessaggioDiPostaElettronica20
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 2.0cm 2.0cm 2.0cm;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=IT link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Facci la versione in prosa.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Daniele<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Segoe UI","sans-serif"'>Da:</span></b><span style='font-size:10.0pt;font-family:"Segoe UI","sans-serif"'> gl-como [mailto:gl-como-bounces+danielefigini=alice.it@lists.linux.it] <b>Per conto di </b>Davide De Prisco<br><b>Inviato:</b> domenica 24 agosto 2014 19.40<br><b>A:</b> Gruppo Linux Como<br><b>Oggetto:</b> Re: [gl-como] R: Controllo i log<o:p></o:p></span></p></div><p class=MsoNormal><o:p> </o:p></p><p>Domani scriverò un bel commento per tutto<o:p></o:p></p><div><p class=MsoNormal>Il 23/ago/2014 11:30 "Daniele Figini" <<a href="mailto:danielefigini@alice.it">danielefigini@alice.it</a>> ha scritto:<o:p></o:p></p><p class=MsoNormal>Ciao.<br><br>Siccome sono 'gnurant, con cosa è scritto?<br><br>Daniele<br><br>-----Messaggio originale-----<br>Da: gl-como [mailto:<a href="mailto:gl-como-bounces%2Bdanielefigini">gl-como-bounces+danielefigini</a>=<a href="mailto:alice.it@lists.linux.it">alice.it@lists.linux.it</a>]<br>Per conto di Davide De Prisco<br>Inviato: venerdì 22 agosto 2014 16.22<br>A: Gruppo Linux Como<br>Oggetto: Re: [gl-como] Controllo i log<br><br>Piccoli miglioramenti, poco tempo e tanto legno da piallare....<br>Manca la parte per la gestione dello sblocco degli ip_monelli dopo n giorni,<br>o meglio c'e' ma e' in fase di test.<br>E manca pure l'inserimento all'avvio di una regola di iptables per ogni ip<br>di quelli bloccati ma e' una cosa semplice quella.<br>Altre versioni da lunedi', ora vado a piallare.<br><br>#!/bin/bash<br>#Script per il controllo degli accessi ad un server web mando_la_mail=0;<br>connessioni_al_giorno=150; file_di_log="/var/log/apache2/acces.log";<br>file_ip_bloccati="./IP_BLOCCATI";<br>file_ip_conosciuti="./IP_CONOSCIUTI";<br>file_temp="./temp";<br>giorni_di_blocco=7;<br>ip_conosciuti="";<br>oggi=`date +%y%m%d`;<br>#Ripulisco gli IP dopo il tempo prestabilito riga=1; while read<br>riga_ip_bloccato do { ip_bloccato=`echo $riga_ip_bloccato | awk ' { print<br>$1}'`; giorno_di_blocco=`echo $riga_ip_bloccato | awk ' { print $2}'`; if[<br>$oggi -gt $(($giorno_di_blocco+$giorni_di_blocco)) ] then sed -e 'd$riga'<br>$file_ip_bloccati riga=$(($riga+1)); } done < $file_ip_bloccati<br><br>while read ip_conosciuto<br>do<br>{<br>ip_conosciuti=$ip_conosciuti"|"$ip_conosciuto;<br>}<br>done < $file_ip_conosciuti<br>echo "Controllo dei log di apache" > ./testo_mail echo "IP bloccatti oggi" ><br>./elenco_ip_giornaliero grep -q -v [\'$ip_conosciuti\'] $file_di_log | awk '<br>{ print $1}' | sort | uniq -c | sort -n --key=1,8  > $file_temp while read<br>linea do { volte=`echo $linea | awk ' { print $1}'`; ip=`echo $linea | awk '<br>{ print $2}'` ; if [ $volte -gt 150 ] then mando_la_mail=1; if  grep -q $ip<br>/etc/hosts.allow then echo $ip " deve essere un tuo IP non inserito in "<br>$file_ip_conosciuti<br>>> ./testo_mail<br>else<br>if  grep -q $ip /etc/hosts.deny<br>then<br>echo $ip " e' gia' inserito in /etc/hosts.deny" >> ./testo_mail else<br>oggi=`date +%j`; echo $ip " Inserisco un nuovo ip da bloccare per " $volte "<br>connessioni">> ./testo_mail<br>echo " ALL: "$ip >> /etc/hosts.deny ;<br>iptables -I INPUT -s $ip -p tcp --dport 80 -j DROP iptables -I INPUT -s $ip<br>-p udp --dport 80 -j DROP echo $ip >> ./elenco_ip_giornaliero; echo $ip >><br>$file_ip_bloccati" "$oggi; fi fi fi } done < $file_temp if [ $mando_la_mail<br>-gt 0 ] then numerorighe=`wc --lines ./elenco_ip_giornaliero | egrep -o<br>'[0-9]*'` if [ $numerorighe -gt 1 ] then mutt -s "Connessioni giornaliere"<br>-- <a href="mailto:vosta_mail@dominio.com">vosta_mail@dominio.com</a>  < ./testo_mail fi fi<br><br>--<br>Davide<br><br>--<br>Mailing list info: <a href="http://lists.linux.it/listinfo/gl-como" target="_blank">http://lists.linux.it/listinfo/gl-como</a><br><br><br>---<br>Questa e-mail è priva di virus e malware perché è attiva la protezione avast! Antivirus.<br><a href="http://www.avast.com" target="_blank">http://www.avast.com</a><br><br><br>--<br>Mailing list info: <a href="http://lists.linux.it/listinfo/gl-como" target="_blank">http://lists.linux.it/listinfo/gl-como</a><o:p></o:p></p></div></div>
<br /><br />
<hr style='border:none; color:#909090; background-color:#B0B0B0; height: 1px; width: 99%;' />
<table style='border-collapse:collapse;border:none;'>
        <tr>
                <td style='border:none;padding:0px 15px 0px 8px'>
                        <a href="http://www.avast.com/">
                                <img border=0 src="http://static.avast.com/emails/avast-mail-stamp.png" />
                        </a>
                </td>
                <td>
                        <p style='color:#3d4d5a; font-family:"Calibri","Verdana","Arial","Helvetica"; font-size:12pt;'>
                                Questa e-mail è priva di virus e malware perché è attiva la protezione <a href="http://www.avast.com/">avast! Antivirus</a> .
                        </p>
                </td>
        </tr>
</table>
<br />
</body></html>