nmap dauert Minuten, um den localhost zu scannen

2280
jeremysprofile

Ich versuche, nmapzu sehen, welche Ports mein Computer geöffnet hat, indem Sie diese Anleitung befolgen, um das Andockfenster einzurichten . ich benutze

sudo nmap -sU -sS -T4 --defeat-rst-ratelimit -p 1-65535 localhost 

Das dauert ewig. Ich habe es auf nur 500 Ports heruntergesetzt und es dauert ungefähr 45 Sekunden . In der Anleitung sehe ich, dass das Scannen aller 65000 Ports nur ~ 3 Sekunden dauern sollte. Ich habe keine Ahnung, was los ist.

Das System ist ein frischer Centos 7.4.1708 (wurde gestern Abend installiert). Es ist auf keinen Fall ein großartiger Laptop (circa 2010), aber es macht keinen Sinn, dass es so viele Größenordnungen langsamer wäre. Ich stehe hinter einem Consumer-Router, aber ich denke nicht, dass dies wichtig ist, da ich einen Localhost-Scan durchführe.

Jede Hilfe / Beratung wird sehr geschätzt. Ich habe die in dieser Frage vorgeschlagenen Befehle ausprobiert

nmap -d -n -Pn -p 4730 localhost  nmap -d -n -sn localhost  nmap -d -sL localhost 

und erhielt sehr schnelle Antworten, wobei der erste 0,07 Sekunden und der Rest 0,01 Sekunden betrug. Ein einzelner Port-Scan ist ziemlich schnell, aber für eine große Anzahl von Ports ist er sehr langsam. Auch das Entfernen --defeat-rst-ratelimitund -T4die Geschwindigkeit nicht merklich geändert.

Die Antwort auf diese Frage ist wahrscheinlich peinlich naheliegend, da ich fast nichts über Networking weiß.

1

1 Antwort auf die Frage

6
bonsaiviking

Nmap ist dafür nicht das beste Werkzeug. Ich liebe Nmap und meine Vollzeitbeschäftigung arbeitet daran und fördert es, aber dies ist ein Fall, in dem es nicht das beste Werkzeug für diesen Job ist. Der Linux-Kernel führt ausführliche Aufzeichnungen darüber, welche Ports offen sind und für welche Prozesse sie geöffnet sind. Dies kann von gängigen Befehlszeilenprogrammen abgefragt werden. Der Befehl, der für Sie am nützlichsten sein wird netstat -tulnp, ist, alle -lTCP ( -t) - und UDP ( -u) - Portnummern ( -n) und ihre zugehörigen Prozess-IDs ( -p) aufzulisten . Einige Systeme lehnen den Befehl netstat ab, sodass Sie ssstattdessen Folgendes verwenden können :ss -tunpo state listening

Warum Nmap so lange dauert, ist die wahrscheinlichste Ursache der UDP-Scan ( -sU). Nmap möchte herausfinden, welche Ports offen und welche geschlossen sind, aber UDP benötigt kein Antwortpaket von offenen Ports. Es sendet stattdessen eine ICMP Port Unreachable-Nachricht als Antwort auf Tests an geschlossene Ports. Linux begrenzt diese ICMP-Nachrichten, so dass Nmap langsamer werden muss, um die Stille "offener Port ohne Antwort" vom geschlossenen Port zu unterscheiden, aber es ist noch nicht an der Zeit, eine ICMP-Nachricht zu senden.

Ich dachte, nmap würde eher als Bestätigung dienen - nicht nur, dass Sie keine Prozesse ausführen, sondern auch, dass Ihre Ports definitiv geschlossen sind, Sie haben iptables-Sachen richtig gemacht, gute Arbeit geleistet. Bei UDP-Scans ist diese Antwort sinnvoll, aber ich verstehe nicht, wie [diese Anleitung auf Seite 6] (http://devops.com/wp-content/uploads/2017/05/How-To- Guide-1.pdf) hat so eine schnelle Antwort bekommen. jeremysprofile vor 6 Jahren 0
iptables-Regeln werden nicht getestet, wenn Sie gegen localhost laufen, da die Pakete nicht eingehend sind. Sie können das Tariflimit selbst entfernen, wenn Sie möchten. [Die icmp-Manpage] (https://linux.die.net/man/7/icmp) zeigt, dass Sie das `icmp_ratelimit` auf` 0` setzen können, um es zu deaktivieren: `echo 0 | Sudo tee / proc / sys / net / ipv4 / icmp_ratelimit` bonsaiviking vor 6 Jahren 1
Oh. Das sind gute Dinge zu wissen. Danke für Ihre Hilfe! jeremysprofile vor 6 Jahren 0