Nmap

dnf -y install nmap nmap-ncat
dnf -y install https://nmap.org/dist/zenmap-7.92-1.noarch.rpm

Man beachte: Zenmap ist in Python 2 geschrieben. Falls Python 3 der Default auf dem System ist, auf dem Zenmap installiert wurde, kann man den Shebang /usr/bin/env python auf #!/usr/bin/env python2 anpassen.

nmap Cheat Sheet

nmap -n -Pn -oG /tmp/nmap-1.1.1.1-1450321831 -sT -sU -p T:1-65535,U:1-65535 -T4 1.1.1.1

-n Never do DNS resolution
-Pn No ping, skips the Nmap discovery stage altogether
-oG grepable Output
-sT TCP connect scan, operating system establishes a connection with the target machine
-sU UDP scans
-p port ranges
# scan subnet
nmap 192.168.1.0/24

# inkl. UDP-Ports
nmap -sU

# no port scan after host dicovery (null scan)
nmap -sn 192.168.1.0/24

# specify custom ports for scanning to probe specific ports with SYN/UDP packets
sudo nmap -sn -PS22,3389 192.168.1.0/24
sudo nmap -sn -PU161 192.168.1.0/24

# disable reverse DNS resolution
nmap -n ...

# don't show "setup_target: failed to determine route to ...
nmap ... 2> /dev/null

# nur ausgewählte TCP- und UDP-Ports, Intense Scan:
nmap -sS -sU -T4 -A -v -p T:80,443,3479,U:3479 turn.linuxfabrik.io

Schnellster Scan ohne Fehlermeldungen:

sudo nmap -Pn -sn -PS22,3389 10.0.0.0/8 2> /dev/null
sudo nmap -Pn -sn -PU161 10.0.0.0/8 2> /dev/null

Bemerkung

Wird Nmap als root ausgeführt (evtl. per „sudo“), arbeitet es wesentlich schneller, da so ARP-Scans möglich sind.

Ein Fast Scan gegen ein Netz mit 540’672 IP-Adressen mit nmap -sn -n -PS22,3389 10.0.0.0/8 2> /dev/null kann drei Stunden und länger gehen.

Wie testet man, ob ein Host auf einem Port einen Dienst anbietet bzw. ob der Port erreichbar ist?

dnf -y install nmap-ncat

# TCP
ncat -z ---verbose ---wait 3 $HOST $PORT

# UDP
ncat -z ---udp ---verbose ---wait 3 $HOST $PORT

Wie bietet man selbst einen Service an, der auf die Ports 1024 bis 65535 hört?

for j in {1024..65536}; do nc -lvnp $j & done

Wie testet man automatisiert auf die Erreichbarkeit von Ports?

nmap -p 1-65535 -T4 -A -v

Portscan:

# UDP
nmap -sU 192.168.1.1

# TCP, just a few ports
nmap -sS 192.168.1.1 -p U:53,111,137,T:21-25,80,139,8080