Om loggen indikerar att en användare har misslyckats att logga in eller angivit fel sudo lösenord så skrivs raden ut i rött. Om en användare har användt ett sudo kommando skrivs raden ut i orange. Alla andra rader skrivs ut i vanlig färg.
Eftersom scriptet använder tail -f så kommer rader som läggs till i loggfilen att skrivas ut direkt...
För att avsluta scriptet, tryck Ctrl +C om innehållet i terminalen efter man kört scriptet blir i fel färg eller något annat skriv då bara reset i terminalen så återställs den.
Kod: Markera allt
#!/usr/bin/perl -w
use Term::ANSIColor;
open(PIPE,"/usr/bin/tail -f /var/log/auth.log |") or die "open pipe: $!\n";
while(<PIPE>) {
if(/Failed/ || /failure/ || /user unknown/ || /Invalid user/ || /warning/) {
$color = "red";
} elsif(/sudo/) {
$color = "yellow";
} else {
$color = "reset";
}
print color($color), "$_", color("reset");
print color("reset"),"\n";
}