Port Specification e Scan Order

Oltre a tutti i metodi discussi in precedenza, Nmap offre la possibilità di specificare quali porte devono essere scansionate e se l'ordine delle porte deve essere casuale oppure sequenziale. Di default Nmap effettua la scansione delle 1.000 porte più comuni per ogni protocollo.

-p <port ranges> (Only scan specified ports)

Questa opzione permette di ignorare le impostazioni di default e di specificare quali porte si vogliono scansionare. È possibile indicare i singoli numeri delle porte, così come gli intervalli, separati da un trattino (ad esempio 1-1023). Il primo e/o l'ultimo valore di un intervallo possono essere omessi, facendo sì che Nmap utilizzi rispettivamente 1 e 65535 come limiti. È quindi possibile utilizzare l'opzione -p- per effettuare la scansione delle porte da 1 a 65535. È possibile effettuare scansioni sulla porta zero se viene espressamente specificato. Nel caso di un IP protocol scan (-sO), questa opzione indica il numero del protocollo che si desidera scansionare (0-255).

Quando si effettua una scansione combinata di protocolli (ad esempio TCP e UDP), è possibile specificare un protocollo particolare anteponendo al numero di porta T: per TCP, U: per UDP, S: per SCTP o P: per IP Protocol. Tale indicazione risulta valida sino a che non ne viene indicata un'altra. Per esempio, l'opzione -p U:53,111,137,T:21-25,80,139,8080 effettua una scansione UDP delle porte 53, 111 e 137, lo stesso per le porte TCP. Si noti che per effettuare una scansione su entrambi i protocolli UDP e TCP, è necessario specificare l'opzione -sU e almeno un metodo di TCP scan (come -sS, -sF o -sT). Se non viene indicato nulla, i numeri di porta vengono aggiunti a tutte le liste dei protocolli.

Le porte possono anche essere indicate tramite il loro nome, così come sono indicate nell'nmap-services. Si possono anche utilizzare i caratteri speciali * e ? con i nomi. Ad esempio, per scansionare l'FTP e tutte le porte il cui nome inizia con "http", si può usare -p ftp,http*. Si raccomanda di prestare attenzione alla "shell expansions" e di racchiudere tra apici (quote) l'argomento di -p se non si è sicuri.

I range di porte possono essere racchiusi da parentesi quadre per indicare le porte all'interno di quel range che appare in nmap-services. Ad esempio, ciò che segue eseguirà la scansione di tutte le porte in nmap-services uguali o minori di 1024: -p [-1024]. Si raccomanda di prestare attenzione alla "shell expansions" e di racchiudere tra apici (quote) l'argomento di -p se non si è sicuri.

--exclude-ports <port ranges> (Exclude the specified ports from scanning)

Quest'opzione specifica quali porte Nmap deve escludere dalla scansione. I <port ranges> devono essere specificati in modo simile a -p. Per le scansioni IP protocol (-sO), questa opzione specifica il numero di protocolli che si vuole escludere (0–255).

Quando si richiede di escludere le porte, queste vengono escluse da tutti i tipi di scansione. Ciò include anche la fase di discovery.

-F (Fast (limited port) scan)

Indica che si intende effettuare la scansione di un minor numero di porte rispetto al default. Normalmente Nmap scansione le 1.000 porte più comuni per ogni protocollo scansionato. Con l'opzione -F il numero si riduce a 100.

Nmap ha bisogno del file nmap-services che contiene le informazioni di frequenza, in modo da sapere quali sono le porte più comuni (vedi «Well Known Port List: nmap-services» per maggiori informazioni sulle "port frequencies"). Se la "port frequency information" non è disponibile, forse perché si sta utilizzando un file nmap-services personalizzato, Nmap scansiona tutte le porte nominate più le porte nell'intervallo 1-1024. In questo caso, l'opzione -F indica di scansionare solo le porte che sono presenti nel file nmap-services.

-r (Don't randomize ports)

Di default, Nmap effettua la scansione delle porte in ordine casuale (tranne che per alcune porte comuni che vengono controllate per prime per motivi di efficienza). La scansione delle porte in ordine casuale è tipicamente un vantaggio, ma è possibile utilizzare l'opzione -r così da effettuare i controlli in ordine sequenziale crescente.

--port-ratio <ratio><decimal number between 0 and 1>

Scansiona tutte le porte presenti nel file nmap-services con un rapporto maggiore di quello indicato. <ratio> deve essere compreso tra 0.0 e 1.1.

--top-ports <n>

Scansiona le <n> porte presenti nel file nmap-services con il maggior rapporto, dopo aver escluso tutte le porte indicate in --exclude-ports. <n> deve essere maggiore o uguale a 1.