Überwachung der Netzwerkpaketrate pro IP

Überwachung der Netzwerkpaketrate pro IP

mein Problem ist, dass ich einen Bericht erhalten habe, dass meine IP bei einem DOS-Angriff verwendet wurde. Das Problem ist, dass ich nicht weiß, welcher Computer infiziert ist und der Angriff nicht mehr aktiv ist.

Gibt es ein einfaches Linux-Tool für meinen Router (auf dem Fedora läuft), das die Paketrate pro lokaler IP zählt und mein Shell-Skript startet, wenn sie über der von mir ausgewählten Konstante liegt?

Beachten Sie, dass ich auch an Paketen interessiert bin, die vom lokalen Host generiert werden (nur für den Fall, dass der Server selbst gehackt wurde).

Antwort1

Also habe ich eine Lösung mit iptables gefunden:

# create new chain for every local ip we wanna monitor
iptables -N ip10     
# forward traffic from monitored IP to it's chain "ip10"
iptables -A FORWARD -i myLan -s 192.168.2.10 -o myWan -j ip10  
# trafic from other IP's we trusted we just accept
iptables -A FORWARD -i myLan -o myWan -j ACCEPT
# here we have even better thing than I asked for 
# we can ban the DOS attack before it gets out
# in following line we set maximum 100 packet per second
iptables -A ip10 -m limit --limit 100/s --limit-burst 300 -j ACCEPT
# here we can directly log if above limit is breached
# log will be in /var/log/message and it will contains IP src+dst, src mac and other info
# note limit 3 msg per minute is important to not have too big log file
iptables -A ip10 -m limit --limit 3/m --limit-burst 10 -j LOG --log-prefix 'mylog:' --log-level 4
# finally packets over limit will be discarded
iptables -A ip10 -j DROP

Um die gesendeten Pakete und ihre Größe von einer IP anzuzeigen, rufen Sie bitte Folgendes auf:

iptables -L ip10 -vxn

Sie müssten es in einem Skript tun und es bei Interesse in Pakete pro Sekunde umrechnen

Hinweis: Um den Server selbst zu überwachen, müssen Sie einen ähnlichen Ansatz für die Kette verwenden

iptables -A OUTPUT

getestet auf Fedora 18. Ich habe versucht, meinen anderen Computer anzugreifen und die Pakete wurden tatsächlich gestoppt :)

Antwort2

Dies ist ein typisches Szenario fürNetFlow. Sie erhalten historische Daten zu Ihrem Datenverkehr, aufgeschlüsselt nach Adressen, Protokollen und Ports, die Sie auswerten und in ansprechenden Diagrammen betrachten können.

verwandte Informationen