Também sou a favor do que o Júlio disse.. e quero que você pense em seu
script e faça a primeira versão....
Vou dar uma ajudinha... mas só para estimular seu pensamento....

read COUNT IP < <(grep LOGIN\ FAILED a | sed 's/.*\[::ffff:// ; s/\]//' |
sort | uniq -c)
echo $COUNT $IP

claro que não funcionará se houver mais de um IP, lógico que também não fará
o iptables que você quer... mas creio que você consiga fazer o resto, ou
pelo menos tentar...
estude-o, procure fazer seu script e depois coloca aqui na lista de novo.
Tenho certeza que teremos muitas sugestões e melhorias significativas,
inclusive sobre o que eu postei.

abs

Em 21 de fevereiro de 2010 12:23, Marcio Gil <marciom...@bol.com.br>escreveu:

>
>
> Você pode filtrar os IPs com "LOGIN FAILED" e aí utilizar o comando
> "uniq -c" para contar cada IP, exemplo:
>
> $ grep "LOGIN FAILED" temp.txt | grep -o "ip=\[.*\]" | sort | uniq
> -c
> 12 ip=[::ffff:189.126.109.221]
>
> O resto é com você.
>
>
> > -----Original Message-----
> > From: ricardoscript
> >
> > Pessoal, estou precisando de um script que leia meu arquivo
> > mail.log e ao encontrar a palavra "LOGIN FAILED" vindo de um
> > mesmo IP por mais de 6 vezes ele execute o comando iptables
> > -A INPUT -s xxx.xxx.xxx.xxx(IP atacante) -j DROP
> >
> > Segue corte de meu mail.log onde se observa a tentativa de
> brute-force
> > Por qualquer ajudo, estou desde já agradecido.
> >
> > Feb 20 09:20:35 matrix pop3d: Connection,
> ip=[::ffff:189.126.109.221]
> > Feb 20 09:20:35 matrix pop3d: LOGIN FAILED, user=staff,
> > ip=[::ffff:189.126.109.221]
> > (...)
> >
>
>  
>



-- 
Jacson R. C. Silva


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



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

---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como 
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
aviso.
---------------------------------------------------------------------
Sair da lista: shell-script-unsubscr...@yahoogrupos.com.br
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil

Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/shell-script/

<*> Para sair deste grupo, envie um e-mail para:
    shell-script-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html


Responder a