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