nmap : scan de ports et de réseau

6 min de lecture 1 042 mots Mis à jour 17 mai 2026

nmap (Network Mapper) est le scanner réseau de référence depuis 1997. En une commande, il cartographie un réseau : quels hôtes sont en ligne, quels ports sont ouverts, quels services tournent et même quel système d’exploitation tourne en face. Indispensable pour les administrateurs réseau, les pentesters et toute personne qui veut savoir ce qui est exposé sur son IP. Ce guide couvre l’installation, les scans de base, les options avancées et les considérations légales.

Qu’est-ce que nmap ?

nmap est un utilitaire en ligne de commande open source (GPL) qui envoie des paquets ICMP, TCP, UDP et analyse les réponses pour découvrir des hôtes et des services. Il est disponible sur Linux, macOS, Windows et BSD. Une version graphique appelée Zenmap simplifie son usage pour ceux qui préfèrent les interfaces visuelles.

Concrètement, nmap est complémentaire de ping (qui teste un seul hôte) et de netstat (qui voit les sockets locales). nmap voit ce qu’un attaquant verrait depuis l’extérieur — c’est son intérêt et aussi son sujet sensible.

Installation

  • Debian / Ubuntu : sudo apt install nmap
  • Fedora / RHEL : sudo dnf install nmap
  • macOS : brew install nmap
  • Windows : installeur officiel sur nmap.org, inclut Zenmap.

Scans de base

  • nmap 192.168.1.42 — scan rapide des 1000 ports TCP les plus communs sur une IP.
  • nmap 192.168.1.0/24 — découverte de tous les hôtes actifs sur un sous-réseau (voir masque et subnet).
  • nmap -sn 192.168.1.0/24 — ping scan, juste savoir qui est en ligne sans scanner les ports.
  • nmap -p 22,80,443 192.168.1.42 — scanner uniquement les ports listés.
  • nmap -p- 192.168.1.42 — scanner les 65535 ports TCP (long mais exhaustif).
  • nmap -F 192.168.1.42 — fast scan, 100 ports les plus utilisés.
  • nmap scanme.nmap.org — hôte officiel de test fourni par l’équipe nmap.

Détection avancée : services, OS, scripts

  • nmap -sV 192.168.1.42 — détecter version du logiciel derrière chaque port ouvert (ex. « Apache/2.4.65 »).
  • nmap -O 192.168.1.42 — deviner le système d’exploitation par signatures TCP/IP (nécessite root).
  • nmap -A 192.168.1.42 — aggressive : combine -sV -O + traceroute + scripts par défaut.
  • nmap -sC 192.168.1.42 — lance les scripts NSE par défaut (banner grabbing, vulnérabilités basiques).
  • nmap --script vuln 192.168.1.42 — exécuter les scripts dédiés vulnérabilités.
  • nmap --script ssh-brute 192.168.1.42 — brute force SSH (uniquement sur cibles autorisées !).

Types de scan TCP : -sS, -sT, -sA, -sU

  • -sS (SYN scan) : par défaut si root. Envoie un SYN sans terminer la poignée de main. Discret et rapide.
  • -sT (TCP connect) : par défaut si pas root. Ouvre une connexion complète — visible dans les logs.
  • -sU (UDP scan) : pour les services UDP (DNS, DHCP, SNMP). Plus lent (UDP ne répond pas par défaut aux ports fermés).
  • -sA (ACK scan) : utile pour tester si un pare-feu filtre.
  • -sN / -sF / -sX (NULL, FIN, XMAS) : scans furtifs, contournent certains IDS.

États des ports dans la sortie nmap

  • open : port ouvert, un service écoute.
  • closed : port accessible mais aucun service en écoute.
  • filtered : un pare-feu bloque les paquets, nmap ne sait pas si ouvert ou fermé.
  • unfiltered : port accessible mais nmap ne peut pas conclure (avec -sA).
  • open|filtered : indéterminé (typique en UDP).

Cas d’usage pratiques

  • Auditer son propre serveur : nmap -sV -p- mon-domaine.fr depuis l’extérieur, voir ce qui est exposé.
  • Découverte LAN : nmap -sn 192.168.1.0/24, lister tous les appareils du Wi-Fi maison (utile pour repérer un intrus).
  • Tester l’efficacité d’un pare-feu : scanner depuis l’extérieur, comparer avec la config attendue (ports fermés vs filtered).
  • Diagnostiquer un service injoignable : nmap -p 443 mon-serveur.fr dit si le port est ouvert, filtré ou injoignable.
  • Pentest CTF / labos : phase de reconnaissance avant exploitation.
  • Couplé à whois : identifier le propriétaire des IP scannées.
  • Couplé à localiser une IP : voir d’où viennent les hôtes répondants.

Optimisations : vitesse, formats de sortie

  • -T0 à -T5 : timing template. T3 par défaut, T4 plus rapide pour LAN, T5 très agressif.
  • -Pn : ne pas faire le ping préliminaire. Utile si la cible bloque ICMP.
  • -n : pas de résolution DNS, plus rapide.
  • -oN out.txt : sortie texte normale.
  • -oX out.xml : sortie XML structurée, intégrable à d’autres outils.
  • -oG out.grep : sortie grepable.
  • -oA out : tous les formats à la fois.

Scanner un système sur lequel vous n’avez pas d’autorisation explicite peut être qualifié d’accès frauduleux à un système de traitement automatisé de données (article 323-1 du Code pénal en France). Risque : jusqu’à 2 ans de prison et 60 000 € d’amende, même si le scan ne pénètre rien.

  • Vos propres machines, votre LAN domestique : OK.
  • Serveurs sur lesquels vous avez un mandat écrit (pentest) : OK.
  • Sites publics / serveurs tiers sans accord : à éviter, même « juste un scan ».
  • Plateformes de challenges (HackTheBox, TryHackMe, scanme.nmap.org) : explicitement autorisées pour s’entraîner.

FAQ : nmap

nmap est-il illégal ?

L’outil lui-même est légal. Son usage sur un système qui ne vous appartient pas et sans autorisation peut l’être (cf. cadre légal ci-dessus). Pour s’entraîner, utilisez les cibles officielles ou les CTF.

Comment se protéger d’un scan nmap ?

Pare-feu bien configuré (fermer tout sauf l’indispensable), drop des paquets au lieu de reject (rend le scan plus lent et incertain), fail2ban pour bannir les IP qui font trop de tentatives, IDS comme Suricata ou Snort pour détecter les patterns de scan.

Quelle différence entre -sS et -sT ?

-sS (SYN scan) envoie juste le SYN puis abandonne — discret, rapide, nécessite root pour fabriquer les paquets bruts. -sT (TCP connect) ouvre la connexion complète via l’API système — utilisable sans root mais visible dans les logs serveur.

nmap peut-il détecter ma vraie IP derrière un VPN ?

Non, nmap se contente d’envoyer des paquets et lire les réponses. Si vous êtes derrière un VPN ou Tor, c’est l’IP du tunnel qui apparaît côté serveur scanné, pas la vôtre.

Alternatives à nmap ?

masscan : ultra-rapide pour scanner internet entier sur un port donné. rustscan : front-end accéléré qui appelle nmap derrière. Zenmap : GUI nmap. Pour une vision applicative HTTP, nikto ou nuclei.

Outils réseau associés : ping, traceroute, netstat, whois. Voir encyclopédie IP.