Agrupando falhas vsftpd usando logwatch

3

Estou tentando compactar as entradas do syslog de vsftpd com logwatch, para obter:

 vsftpd: pam_succeed_if(vsftpd:auth): error retrieving information about user Administrator
 vsftpd: pam_succeed_if(vsftpd:auth): error retrieving information about user Administrator
 vsftpd: pam_succeed_if(vsftpd:auth): error retrieving information about user Administrator
 vsftpd: pam_succeed_if(vsftpd:auth): error retrieving information about user Administrator
 vsftpd: pam_succeed_if(vsftpd:auth): error retrieving information about user Administrator
 ... many many times

para

vsftpd: pam_succeed_if(vsftpd:auth): error retrieving information about user Administrator : 125 time(s)

Como posso fazer isso?

    
por Robert Munteanu 11.06.2009 / 11:52

3 respostas

1

Qual versão e distribuição do Linux / Unix você está usando e qual versão é logwatch? Estou executando o Redhat 4 - logwatch 5.2.2 e no meu script vsftp (/etc/log.d/scripts/services/vsftp) existe o seguinte:

if (keys %FailedLogins) {
   print "\nFailed FTP Logins:\n";
   foreach $ThisOne (keys %FailedLogins) {
      print $ThisOne . $FailedLogins{$ThisOne} . " Time(s)\n";
   }
}

Mais cedo no script, soma as falhas de cada usuário.

    
por 26.06.2009 / 20:46
1

Atualize o logwatch. Novos scripts de logwatch fazem isso automaticamente.

    
por 11.07.2009 / 04:55
0
O

uniq fará isso por você: Eu não acho que você possa controlar o formato, mas você pode facilmente corrigir isso com o awk.

# echo -e "two\ntwo\none\ntwo\ntwo" | uniq -c
      2 two
      1 one
      2 two

Estou assumindo que você não se importa com carimbos de data e hora, o que você não tem em seus exemplos.

    
por 11.06.2009 / 13:39

Tags