Nmap (“Network Mapper”) est un outil opensource pour l'exploration des réseaux et l'audit de sécurité. Il a été conçu pour analyser rapidement les grands réseaux, bien qu'il fonctionne parfaitement avec des hôtes individuels.
Nmap utilise les paquets IP bruts de manière originale pour déterminer quels hôtes sont disponibles sur le réseau, quels services (nom et version de l'application) ces hôtes offrent, quels systèmes d'exploitation (et versions de SE) ils utilisent, quel type de filtres de paquets et de pare-feux sont utilisés, et des dizaines d'autres caractéristiques.
Si Nmap est couramment utilisé pour les audits de sécurité, de nombreux administrateurs de systèmes et de réseaux le trouvent utile pour les tâches de routine telles que l'inventaire du réseau, la gestion des calendriers de mise à niveau des services et la surveillance du temps de fonctionnement des hôtes ou des services.
Scanner une adresse IP (IPv4)
$ nmap 192.168.1.1
Scanner un seul hôte (FQDN)
$ nmap server1.oowy.lan
Scanner un seul hôte (FQDN) en mode verbeux
$ nmap -v server1.oowy.lan
Scanner de multiples adresses IP
$ nmap 192.168.1.1 192.168.1.2 192.168.1.3
Scanner un réseau
$ nmap 192.168.1.0/24
Scanner un range IP
$ nmap 192.168.1.1-20
L'option -iL permet de lire la liste des systèmes cibles à l'aide d'un fichier texte. Ceci est utile pour scanner un grand nombre d'hôtes/réseaux.
Exemple d'un fichier
server1.oowy.lan 192.168.1.0/24 192.168.1.1/24 10.1.2.3 localhost
La syntaxe est la suivante :
$ nmap -iL /tmp/test.txt
Lorsque vous scannez un grand nombre d'hôtes/réseaux, vous pouvez exclure des hôtes d'un scan :
$ nmap 192.168.1.0/24 --exclude 192.168.1.5 $ nmap 192.168.1.0/24 --exclude 192.168.1.5,192.168.1.254
OU exclure la liste d'un fichier appelé /tmp/exclude.txt
$ nmap -iL /tmp/scanlist.txt --excludefile /tmp/exclude.txt
Pour scanner différents port/protocol
## Scan TCP port 80 nmap -p T:80 192.168.1.1 ## Scan UDP port 53 nmap -p U:53 192.168.1.1 ## Scan two ports ## nmap -p 80,443 192.168.1.1 ## Scan port ranges ## nmap -p 80-200 192.168.1.1 ## Combine all options ## nmap -p U:53,111,137,T:21-25,80,139,8080 192.168.1.1 nmap -p U:53,111,137,T:21-25,80,139,8080 server1.cyberciti.biz nmap -v -sU -sT -p U:53,111,137,T:21-25,80,139,8080 192.168.1.254 ## Scan all ports with * wildcard ## nmap -p "*" 192.168.1.1 ## Scan top ports i.e. scan $number most common ports ## nmap --top-ports 5 192.168.1.1 nmap --top-ports 10 192.168.1.1
Enable OS detection, version detection, script scanning, and traceroute
$ nmap -A 192.168.1.254 $ nmap -v -A 192.168.1.1 $ nmap -A -iL /tmp/scanlist.txt
Find out if a host/network is protected by a firewall
$ nmap -sA 192.168.1.254 $ nmap -sA server1.oowy.lan
Perform a fast scan
$ nmap -F 192.168.1.1 $ nmap -6 -F IPv6_Address_Here