Secode has asked for the wisdom of the Perl Monks concerning the following question:
Greetings (Monks){
Thanks very much to all those who helped me with my first question.
I have progressed somewhat with my Pix syslog project and learning a lot but I am up against a new challenge : how do I get my results to look like the following:
src ipaddress - dest ipaddress - port - number of times of occurance
from the results below
%PIX-4-106023 Deny tcp src inside 1.1.1.1 1637 dst outside 4.4.4.4 80 +by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 1.1.1.1 2519 dst outside 4.4.4.4 80 +by access-group inside_access_in
would look like:
1.1.1.1 4.4.4.4 80 2
My code looks like the following so far (excuse newbie hacking I am learning) I am using Activestate perl.
#c:\perl\bin\perl use Socket; open(INFILE, "<syslog.txt"); open(OUTFILE, ">sorted4.txt"); while (<INFILE>) { my($line2) = $_; $line2 =~ s/\"//g; $line2 =~ s/\:/ /g; $line2 =~ s/\,/ /g; $line2 =~ s/\// /g; $line = substr $line2, index($line2, '%PIX'); push @input, $line; } @in = map substr( $_, 8 ), sort map { my ( $src ) = /src\D+([\d.]+)/; my $srcip = inet_aton( $src ) || "\0\0\0\0"; my ( $dst ) = /dst\D+([\d.]+)/; my $dstip = inet_aton( $dst ) || "\0\0\0\0"; my ( $port ) = /$dst\D+([\d.]+)/; "$srcip$dstip$_"; } @input; print @in; close(INFILE); close(OUTFILE);
the output looks like this currently and is sorted by source IP and then dst IP per source.
%PIX-4-106023 Deny udp src inside 1.1.1.1 1161 dst outside 3.3.3.3 53 +by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 1.1.1.1 1637 dst outside 4.4.4.4 80 +by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 1.1.1.1 2519 dst outside 4.4.4.4 80 +by access-group inside_access_in %PIX-4-106023 Deny udp src inside 1.1.1.1 1161 dst outside 7.7.7.7 53 +by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 1.1.1.1 2519 dst outside 9.9.9.9 80 +by access-group inside_access_in %PIX-4-106023 Deny udp src inside 1.1.1.1 1161 dst outside 9.9.9.9 443 + by access-group inside_access_in %PIX-4-106023 Deny udp src inside 1.1.1.1 1161 dst outside 9.9.9.9 53 +by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 2.2.2.2 2605 dst outside 3.3.3.3 80 +by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 2.2.2.2 3944 dst outside 3.3.3.3 80 +by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 2.2.2.2 1263 dst outside 4.4.4.4 80 +by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 2.2.2.2 2605 dst outside 7.7.7.7 80 +by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 2.2.2.2 3944 dst outside 7.7.7.7 80 +by access-group inside_access_in %PIX-4-106023 Deny udp src inside 5.5.5.5 1047 dst outside 3.3.3.3 143 +3 by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 5.5.5.5 1379 dst outside 6.6.6.6 443 + by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 5.5.5.5 1379 dst outside 6.6.6.6 80 +by access-group inside_access_in %PIX-4-106023 Deny udp src inside 5.5.5.5 1047 dst outside 6.6.6.6 161 + by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 8.8.8.8 1263 dst outside 4.4.4.4 80 +by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 8.8.8.8 2677 dst outside 6.6.6.6 80 +by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 10.10.10.10 1637 dst outside 4.4.4.4 + 80 by access-group inside_access_in %PIX-4-106023 Deny tcp src inside 10.10.10.10 2677 dst outside 6.6.6.6 + 80 by access-group inside_access_in
thanks
Secode
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: looping through an array
by McDarren (Abbot) on Apr 25, 2006 at 13:07 UTC | |
by ikegami (Patriarch) on Apr 25, 2006 at 16:47 UTC | |
|
Re: looping through an array
by reasonablekeith (Deacon) on Apr 25, 2006 at 13:00 UTC | |
by reasonablekeith (Deacon) on Apr 25, 2006 at 15:34 UTC | |
|
Re: looping through an array
by mantadin (Beadle) on Apr 25, 2006 at 13:05 UTC | |
|
Re: looping through an array
by johngg (Canon) on Apr 25, 2006 at 14:02 UTC |