nmap su Linux: guida completa alla scansione e discovery di rete
#tech
spcnet.it/nmap-su-linux-guida-…
@informatica
nmap su Linux: guida completa alla scansione e discovery di rete
nmap è uno degli strumenti più potenti e longevi nell’arsenale di qualsiasi sistemista Linux. Nato nel 1997, è oggi uno standard de facto per l’audit di rete, la verifica della superficie d’attacco esposta e il troubleshooting di connettività. Questa guida copre i comandi e le tecniche che un sysadmin usa davvero in produzione: niente teoria astratta, solo esempi concreti.Nota legale: scansionate solo reti e host di vostra proprietà o per cui avete un’autorizzazione esplicita. La scansione non autorizzata può essere illegale nella vostra giurisdizione.
Installazione di nmap
nmap è disponibile nei repository di tutte le principali distribuzioni Linux:# Debian / Ubuntu sudo apt install nmap # Fedora / RHEL / CentOS sudo dnf install nmap # Arch / Manjaro sudo pacman -S nmap
Verificate l’installazione con:nmap --version
Dovreste vedere qualcosa comeNmap version 7.94o superiore. Le funzionalità più avanzate (SYN scan, OS detection) richiedono privilegi root.Host Discovery: chi è attivo sulla rete?
Il primo passo in qualsiasi audit è capire quali host sono raggiungibili. Il ping scan usa il flag-sn, che dice a nmap di non eseguire scansioni delle porte:nmap -sn 192.168.1.0/24
Su una LAN locale nmap usa ARP discovery, più veloce e capace di trovare dispositivi che ignorano il ping ICMP. L’output tipico è:Nmap scan report for 192.168.1.1 Host is up (0.0011s latency). MAC Address: A4:3E:51:XX:XX:XX (Ubiquiti Networks) Nmap scan report for 192.168.1.10 Host is up (0.00032s latency). MAC Address: DC:A6:32:XX:XX:XX (Raspberry Pi Trading)
È un inventario rapido: ottimo dopo aver aggiunto un nuovo dispositivo e non ricordarsi quale IP ha ottenuto dal DHCP.Scansione delle Porte
Scansione di default
Senza flag aggiuntivi, nmap scansiona le 1.000 porte TCP più comuni. Non richiede root, ma i risultati sono meno dettagliati:nmap 192.168.1.10SYN Scan (Stealth Scan)
La SYN scan è la modalità default quando si esegue nmap come root. Invia un pacchetto SYN senza completare il three-way handshake TCP: più veloce e meno visibile nei log applicativi:sudo nmap -sS 192.168.1.10Scansione di tutte le 65.535 porte
Le 1.000 porte di default possono mancare servizi su porte non standard — MySQL su 33060, SSH spostato su 2222:sudo nmap -sS -p- 192.168.1.10Porte specifiche o range
# Porte specifiche sudo nmap -p 22,80,443,3306 192.168.1.10 # Range di porte sudo nmap -p 1-1024 192.168.1.10UDP Scanning
L’UDP è spesso dimenticato. DNS (porta 53), SNMP (161) e NTP (123) girano su UDP e sono vettori comuni di attacco e misconfiguration:sudo nmap -sU -p 53,161,123 192.168.1.1Rilevamento di Servizi e Versioni
Il flag-sVesegue probe sulle porte aperte per determinare servizio e versione. È il primo scan da eseguire su un server sconosciuto:sudo nmap -sV 192.168.1.10
Output esempio:PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.6 80/tcp open http nginx 1.24.0 3306/tcp open mysql MySQL 8.0.35
Rivela immediatamente con cosa si ha a che fare e può evidenziare software obsoleto — un win immediato per la sicurezza.Rilevamento del Sistema Operativo
nmap può fare ipotesi sull’OS basandosi sul fingerprinting del TCP/IP stack:sudo nmap -O 192.168.1.10
Output:OS details: Linux 5.15 - 5.19, Linux 6.1 Network Distance: 1 hop
Non è sempre preciso su VM o dispositivi con stack TCP personalizzati, ma fornisce un segnale utile per distinguere server Linux da macchine Windows o embedded su un segmento di rete.Aggressive Scan: tutto in uno
Il flag-Aabilita OS detection, version detection, script scanning e traceroute in un colpo solo:sudo nmap -A 192.168.1.10
Genera molto traffico e richiede tempo. Non usatelo su reti di produzione senza motivo, ma per un audit completo di un singolo host è estremamente comodo.Nmap Scripting Engine (NSE)
L’NSE è ciò che distingue nmap da un semplice port scanner. Permette di eseguire script contro host e servizi scoperti. Gli script si trovano in/usr/share/nmap/scripts/e coprono vulnerability detection, enumerazione di servizi e molto altro.Verifiche pratiche
# Categoria default sudo nmap --script=default 192.168.1.10 # Scansione vulnerabilità (più invasivo - usare deliberatamente) sudo nmap --script=vuln 192.168.1.10 # FTP anonimo abilitato? sudo nmap --script=ftp-anon -p 21 192.168.1.10 # Header HTTP esposti (versioni server, debug info) sudo nmap --script=http-headers -p 80,443 192.168.1.10 # Open SMTP relay? sudo nmap --script=smtp-open-relay -p 25 192.168.1.20
L’HTTP headers scan è sorprendentemente utile: è frequente trovare server che espongono header con versione del software e informazioni di debug che avrebbero dovuto essere rimosse.Per elencare tutti gli script disponibili per un servizio:
ls /usr/share/nmap/scripts/ | grep -i sshFormati di Output
Per qualunque cosa oltre un controllo rapido, salvare l’output è fondamentale:# Output normale su file sudo nmap -sV 192.168.1.0/24 -oN scan_results.txt # XML (utile per automazione e import in altri tool) sudo nmap -sV 192.168.1.0/24 -oX scan_results.xml # Formato grepable sudo nmap -sV 192.168.1.0/24 -oG scan_results.gnmap # Tutti i formati in una volta sola sudo nmap -sV 192.168.1.0/24 -oA scan_results
Il flag-oAcrea tutti e tre i file con il prefisso specificato. L’output XML si presta bene al parsing automatizzato.Timing e Velocità
nmap dispone di sei template di timing, daT0(lentissimo) aT5(aggressivo). Il default èT3. Per la maggior parte delle scansioni su reti locali affidabili:sudo nmap -sS -T4 192.168.1.0/24
Su VPN o connessioni lente, scendere aT2evita falsi negativi causati da pacchetti persi.Combinazioni Pratiche per Sysadmin
Questi sono i comandi che si usano davvero nel lavoro quotidiano:# Porte aperte su un host (solo quelle definitivamente aperte) sudo nmap -sS -T4 --open 192.168.1.10 # Trovare tutti i server SSH su una subnet sudo nmap -p 22 --open -sV 192.168.1.0/24 # MySQL esposto sulla rete? (non dovrebbe mai esserlo) sudo nmap -p 3306 --open 192.168.1.0/24 # Host discovery + version scan concatenati (solo host attivi) sudo nmap -sn 192.168.1.0/24 -oG - | grep "Up" | awk '{print $2}' | sudo nmap -sV -iL -
L’ultimo comando è particolarmente potente: esegue prima un ping scan, filtra gli host attivi, poi esegue la version scan solo su di loro. Ideale per subnet grandi.Gestione dei Target e Firewall
# Range di IP nmap 192.168.1.1-50 # Host da file (uno per riga) nmap -iL hosts.txt # Escludere host dalla scansione nmap 192.168.1.0/24 --exclude 192.168.1.1,192.168.1.5
nmap distingue tre stati delle porte:open,closedefiltered. Una portafilteredindica che un firewall sta bloccando i probe. Se vedete molte porte filtered su un server di vostra proprietà senza aspettarvelo, investigate: potrebbe essereufw,firewalld, regolenftableso un security group del cloud provider.Conclusione
Host discovery, port scanning, version detection, NSE scripts e salvataggio dell’output sono le fondamenta di nmap. Iniziate con-snper la discovery, aggiungete-sVquando servono i dettagli sui servizi, portate gli script NSE quando volete approfondire. Mantenete il timing conservativo sulle reti di produzione e aggressivo nel vostro lab.Se state verificando le regole firewall, nmap è tra i migliori strumenti per controllare che ciò che pensate sia bloccato lo sia davvero.
Fonte originale: nmap on Linux: Guide to Network Scanning and Discovery — LinuxBlog.io
nmap on Linux: Guide to Network Scanning and Discovery | LinuxBlog.io
A practical guide to nmap on Linux covering host discovery, port and service scanning, OS detection, NSE scripts, output formats, and real-world command combinations sysadmins actually use.Hayden James (LinuxBlog.io)
like this
thisisbutaname likes this.
thisisbutaname doesn't like this.
reshared this
The Pirate Post, The Privacy Post, Cybersecurity & cyberwarfare, Poliversity - Università ricerca e giornalismo e Elezioni e Politica 2026 reshared this.
House Panther
in reply to Free Software Foundation Europe • • •Zło To 🏴☠️ ᵗʰʳᵉᵉᶠᶦᵈᵈʸ
in reply to Free Software Foundation Europe • • •gustl
in reply to Free Software Foundation Europe • • •While i agree in principal, IMHO it is rather nonsensical to demand this in general.
Having worked for universities in the past, i recall plenty of software of no value at all to anbody else (neither for use nor study). And i don't think anybody in their right mind would be willing to publish software today that was closed to the public until yesterday.
And let's not forget the overhead involved: Simply throwing code out into the wild usually doesn't help anybody; Preparing a software-package for publication and distribution is work too.
Still, i am certain there's more than enough interesting stuff that actually could and should be published.
🫧 socialcoding..
in reply to gustl • • •@gustl
I put a footnote recently to a similar call to "Use FOSS, people!" as it should come with the notion that #FOSS does not appear out of the blue, especially not valuable, sustainable FOSS that satisfies all the real needs that these people have. FOSS can do much better to anticipate them, which is my fascination in exploring and elaborating Social experience design (SX) at coding.social ..
social.coop/@smallcircles/1166…
#SX focuses on the ability to form social supply chains within the #commons, and foster chaordic organization where commons participants engage in #service development, delivery, and exchange so that over time a commons based value #economy can emerge.
Instead of FOSS projects, SX refers to SOSS initiatives. Sustainable open social software / systems / services / solutions / social experiences. FOSS then is just the codebase + a license, the deliverable at the end of the pipeline that must satisfy needs, and bridge the gap between tech and people.
Joyful creation for the Social web
Social coding commons🫧 socialcoding..
2026-05-29 07:55:51