Nós usamos o AWK.
Feb 25 12:18:50 host.example.come kernel: LOGPREFIX: IN=eth0 OUT= MAC=00:aa:aa:bb:cc:dd:00:ee:00:aa:dc:00:aa:00 SRC=x.x.x.x DST=y.y.y.y LEN=40 TOS=0x00 PREC=0x00 TTL=95 ID=256 PROTO=TCP SPT=6000 DPT=22 WINDOW=16384 RES=0x00 SYN URGP=0
- Despertar o endereço do SRC
- Classifique a lista numericamente (prereq to uniq)
- Use o uniq com o sinalizador -c para obter contagens por origem
- Opcionalmente: classifique novamente numericamente para ver os violadores mais pesados.
[[email protected] faculty]# grep LOGPREFIX /var/log/messages | \
awk '{print $10}' | sort -n | uniq -c | sort -n
Saída:
5 SRC=x.174.x.x
6 SRC=61.y.y.y
6 SRC=z.z.z.196
17 SRC=a.a.246.a
Finalmente: um Primer do AWK: link