LINUX.ORG.RU
ФорумAdmin

Спам, флуд etc. монитор


0

0

Всем привет. Существует ли какой либо софт который смог бы фильтровать например tcpdump на предмет флуда, дос атак и так далее. И имел простой вывод например - IP такой-то замечен флуд на порту таком-то.

Задание спасибо.


Ответ на: комментарий от PUZO

кому интересно написал не большой скрипт для анализа tcpdump после чего удаленный адрес блокируется ipfw

#!/usr/bin/perl
use strict;


my $if = $ARGV[0] || do { print "usage tdtest.pl [Inteface_name]\n"; exit 0 };

my $tdc = "tcpdump -i $if -n -c 200 ether dst 00:e0:81:20:32:a7";
my %H;
my %S;

open(TD,"$tdc |");
my $start = time;
while(<TD>){
    my @a = split;
    my @toa = split /\./,$a[4];
    my $to = $toa[0].'.'.$toa[1].'.'.$toa[2].'.'.$toa[3];
    my @foa = split /\./,$a[2];
    my $from = $foa[0].'.'.$foa[1].'.'.$foa[2].'.'.$foa[3];
    $S{"$to"} = {} if ! defined $S{"$to"};
    $S{"$to"}{"$from"}=1;
    $H{"$to"}++;
}
my $end = time;

print "\n\n\n === Get Time: ".($end - $start)." seconds \n";
while( my ($k,$v) = each %S) {
        my $c = count($v);
        if ( $c > 50) {
                print "probaly DDoS dest: ".$k." blocking \n";
                `ipfw table 13 add $k`;
        }
        print "$k\t".$c."\n";
}

use Data::Dumper;
#print Dumper(\%S);

sub count {
    my $h = $_[0];
    my @a = keys %{$h};
    my $b =$#a;
    return $b;
}

PUZO
() автор топика

http://66.102.9.104/search?q=cache:cn13qZiaFaAJ:sunsite.cs.msu.su/~gamajun/free- ids-survey.pdf+free+IDS&hl=ru&ct=clnk&cd=1&lr=lang_ru&client =opera

Ej_Pulsar
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.