shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Script Firewall


From: Standler meir
Subject: Re: [shell-script] Script Firewall
Date: Thu, 12 Nov 2009 08:36:29 -0800 (PST)

Olá Jimmy,

Grato pela atenção.

Vou tentar explicar resumidamente e de forma bem clara.

A
função do script é ficar ouvindo o log messages..... e toda vez que
aparecer no log as palavras mismatch ou Wrong password ele pega o IP
que gerou essa mensagem adiciona uma regra de bloqueio para este ip
ustilizando o iptables, salva essas informações num arquivo e me manda
por e-mail.


Basicamente é isso.

Setiveres alguma sugestão eu agradeço.

Att,

Stanley

--- Em qui, 12/11/09, jimmy <address@hidden> escreveu:

De: jimmy <address@hidden>
Assunto: Re: [shell-script] Script Firewall
Para: address@hidden
Data: Quinta-feira, 12 de Novembro de 2009, 10:25







 



  


    
      
      
      saudações,



On Wed, Nov 11, 2009 at 04:10:57AM -0800, Standler meir wrote:

> 

> 

>    Olá Gurus,

> 

>    Alguém poderia me ajudar com o script abaixo?

>    Quando rodo ele fica dando essa mensagem:

> 

>    grep: [ ou [^ descasados

>    grep: [ ou [^ descasados



esse tipo de erro ocorre quando se inicia uma lista de caracteres e esta

não é terminada com o par dos colchetes.



> 

>    Aceito qualquer sugestão de melhorias.

pelo menos para mim, apenas melhorias não resolvem o seu problema, creio

que você precise estudar mais sobre as ferramentas que deseja utilizar,

não cheguei a analisar o seu código, mas me pareceu bastante confuso.



> 

>    Desde já grato pela atenção dos amigos.

> 

>    ------------ --------- --------- --------- --------- --------- -

> 

>    #!/bin/sh

> 

>    idjits=`basename $0`

>    TMPFILE=`mktemp /tmp/${idjits} .XXXXXX` || exit 1

> 

>    messages=/var/ log/asterisk/ messages

>    time=`tail -n 2 /var/log/asterisk/ messages | sed -n '1p' | awk '{print

>    $2}' | awk -F : '{print $1":"}'`

> 

>    day=`tail -n 2 /var/log/asterisk/ messages | sed -n '1p' | awk '{print

>    $1}'`

> 

>    echo "grep \"$day $time\" $messages" |sh|\

>    awk '/Wrong password/{print $11}'|\

>    sed 's:'\''::g'| sort -u|grep -vi [a-z] >> $TMPFILE

> 

>    echo "grep \"$day $time\" $messages" |sh|\

> 

>    awk '/Wrong password/{print $10}' |\

>    sed 's:'\''::g'| sort -u|grep -vi [a-z] >> $TMPFILE

> 

>    echo "awk '/mismatch/{ print $11}' $messages" |sh|\

> 

>    grep -vi [a-z]|sed 's:'\''::g'

> 

>    echo "Creating rules"

> 

>    for i in `cat $TMPFILE|sed 's:for::g'`

> 

>    do

> 

>    echo "iptables -A INPUT -s $i -p udp --dport 5060:5061 -j REJECT

>    --reject-with icmp-host-

> 

>    prohibited" > /etc/dbeats

> 

>    echo "iptables -A INPUT -s $i -p tcp --dport 5060:5061 -j REJECT

>    --reject-with icmp-host-

> 

>    prohibited" > /etc/dbeats

> 

>    sort /etc/dbeats2 | uniq > /etc/deadbeats

> 

>    echo "Limpar Firewall"

> 

>    iptables -F

> 

>    echo "Reloading normal rules"

> 

>    sh /etc/firewall

> 

>    echo "Adding deadbeats"

> 

>    sh /etc/deadbeats

> 

>    done

> 

>    date > /tmp/blocked

>    echo >> /tmp/blocked

> 

>    echo "grep \"$day $time\" $messages" |sh|\

> 

>    awk '/Wrong password/{print $11}'|\

>    sed 's:'\''::g'| sort -u|grep -vi [a-z] >> /tmp/blocked

> 

>    echo "grep \"$day $time\" $messages" |sh|\

> 

>    awk '/Wrong password/{print $10}'|\

>    sed 's:'\''::g'| sort -u|grep -vi [a-z] | mail -s "Acessos Bloqueados"

>    meuemail@gmail. com

> 

>    rm -f $TMPFILE

> 

>    ____________ _________ _________ _________ _________ _________ _



-- 

"Não manejo bem as palavras

Mas manipulo bem as strings."

------------ --------- ---------



    
     

    
    


 



  






      
____________________________________________________________________________________
Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]