Nmap reste, en 2026, l’outil de référence pour cartographier un réseau, repérer les ports ouverts et auditer la surface d’attaque d’une infrastructure. Ce tutoriel vous accompagne pas à pas, de l’installation jusqu’à un projet complet d’audit de votre propre réseau domestique. Comptez environ 30 minutes pour suivre les 12 étapes, sur Linux, Windows ou macOS.
Avant toute chose, une règle non négociable : on ne scanne que les systèmes que l’on possède ou que l’on est explicitement autorisé à tester. La section sur la légalité du scan de ports en France détaille ce point. Tout le reste de ce guide part de ce principe.
L’essentiel à retenir sur Nmap
- Nmap est gratuit, open source, et scanne par défaut les 1 000 ports TCP les plus courants.
- La version de référence utilisée ici est Nmap 7.95 (publiée en 2024). Vérifiez toujours la dernière version stable sur nmap.org avant d’installer.
- Les commandes clés tiennent en quelques drapeaux :
-sS(scan SYN),-sV(versions),-O(système d’exploitation),-A(tout combiné). - Le moteur de scripts NSE ajoute plusieurs centaines de scripts pour la détection de vulnérabilités et la reconnaissance.
- En France, scanner un système tiers sans autorisation expose à des poursuites au titre des atteintes aux systèmes de traitement automatisé de données (STAD).
Nmap en 2026 : à quoi sert ce scanner de réseau
Nmap (Network Mapper) est un utilitaire d’exploration réseau et d’audit de sécurité créé par Gordon Lyon (alias Fyodor) en 1997. Près de trente ans plus tard, il équipe les administrateurs système, les pentesteurs et les équipes de réponse à incident. Son rôle : envoyer des paquets soigneusement construits vers une ou plusieurs machines, puis analyser les réponses pour déduire quelles machines sont actives, quels ports sont ouverts, quels services tournent derrière, et parfois quel système d’exploitation est utilisé.
Un scan Nmap répond à trois questions concrètes. Premièrement, qui est présent sur le réseau (découverte d’hôtes). Deuxièmement, quelles portes sont ouvertes sur chaque machine (scan de ports). Troisièmement, que se cache-t-il derrière ces portes (détection de services et de versions). Pour un défenseur, cette photographie révèle la surface d’attaque réelle : un serveur SSH oublié sur le port 22, une base de données exposée sur le port 5432, ou une caméra IP qui parle en clair sur le port 80.
Nmap ne se résume pas à un binaire. Le projet livre tout un écosystème : Ncat (lecture et écriture de données sur le réseau, successeur de Netcat), Nping (génération de paquets et mesure de temps de réponse), Ndiff (comparaison de deux scans) et Zenmap, l’interface graphique multiplateforme. Sous Windows, le pilote de capture Npcap est requis pour les scans en paquets bruts. Windows est d’ailleurs, selon la documentation officielle, la deuxième plateforme la plus utilisée pour Nmap après Linux.
La popularité de Nmap tient à sa précision et à sa souplesse. Le même outil sert à inventorier 65 535 ports sur un seul hôte ou à balayer un réseau /16 en quelques minutes avec le bon réglage de vitesse. Il s’intègre dans des scripts, exporte vers des formats exploitables par d’autres outils, et sa logique de détection s’appuie sur des bases de signatures maintenues activement. Pour aller plus loin sur la sécurisation des services que vous découvrirez, consultez notre guide Fail2ban pour protéger SSH.
Le scan de ports est-il légal en France et en Europe
Question centrale, trop souvent éludée dans les tutoriels. La réponse courte : scanner vos propres machines ou un système pour lequel vous détenez une autorisation écrite est légal. Scanner un système tiers sans accord ne l’est pas, et le risque juridique est réel.
En France, les atteintes aux systèmes informatiques sont encadrées par les articles 323-1 et suivants du Code pénal, qui répriment l’accès et le maintien frauduleux dans un système de traitement automatisé de données (STAD). Un scan de ports ne constitue pas toujours un accès frauduleux à lui seul, mais il peut être interprété comme un acte préparatoire ou comme la preuve d’une intention hostile, surtout s’il est suivi d’une tentative d’exploitation. Les peines encourues pour les atteintes aux STAD vont jusqu’à plusieurs années d’emprisonnement et de fortes amendes selon la gravité.
À l’échelle européenne, la directive 2013/40/UE relative aux attaques contre les systèmes d’information harmonise ces infractions entre États membres. Chaque pays conserve toutefois ses nuances d’application. Un scan parfaitement toléré dans le cadre d’un audit contractuel peut devenir une infraction si l’autorisation manque ou si elle a expiré.
Trois bonnes pratiques s’imposent avant tout scan. Obtenez une autorisation écrite et datée, qui précise les plages d’adresses IP, les fenêtres horaires et les types de tests autorisés. Limitez-vous strictement au périmètre défini. Conservez les journaux de vos scans, qui prouvent que vous êtes resté dans le cadre convenu. Pour vous exercer sans risque, utilisez votre propre réseau domestique, une machine virtuelle locale, ou des cibles d’entraînement légales prévues à cet effet comme scanme.nmap.org, que le projet Nmap autorise explicitement à scanner pour des tests modérés.
L’ANSSI publie des recommandations sur les tests d’intrusion et l’audit de sécurité. Consultez le portail cyber.gouv.fr pour le cadre français, et notre panorama de la cybermenace ANSSI 2025 pour le contexte des menaces actuelles.
Prérequis et versions à installer
Nmap fonctionne sur les trois grands systèmes. Voici les versions et composants recommandés en juin 2026. Vérifiez systématiquement la page de téléchargement officielle car le numéro de version évolue.
| Composant | Version de référence | Rôle | Obligatoire |
|---|---|---|---|
| Nmap | 7.95 (2024) ou plus récent | Moteur de scan principal | Oui |
| Npcap (Windows) | 1.79 ou plus récent | Capture et envoi de paquets bruts | Oui sous Windows |
| Zenmap | Fournie avec l’installeur | Interface graphique | Non |
| Ncat / Nping | Fournis avec Nmap | Connexion réseau et génération de paquets | Non |
| Droits administrateur | root / Administrateur | Scans SYN, UDP et détection d’OS | Recommandé |
Côté matériel, aucune exigence particulière : Nmap tourne sur un portable modeste comme sur un serveur. Comptez quelques mégaoctets d’espace disque. Une connexion réseau filaire offre des résultats plus stables que le Wi-Fi pour les scans précis, car la latence variable du sans-fil perturbe les mesures de temps de réponse.
Les scans les plus complets (SYN furtif, UDP, détection du système d’exploitation) exigent les droits superutilisateur, car ils manipulent des paquets bruts. Sans ces droits, Nmap bascule automatiquement sur un scan de connexion TCP complet (-sT), plus lent et plus visible. Prévoyez donc un accès sudo sous Linux et macOS, ou une invite de commandes ouverte en tant qu’administrateur sous Windows.
Étape 1 : Installer Nmap sur Linux, Windows et macOS
L’installation varie selon le système. Sur les distributions Linux courantes, le gestionnaire de paquets fait le travail. Sur Windows et macOS, un installeur officiel est disponible.
# Debian, Ubuntu et dérivés
sudo apt update && sudo apt install -y nmap
# Fedora, RHEL, Rocky Linux
sudo dnf install -y nmap
# Arch Linux
sudo pacman -S nmap
# macOS avec Homebrew
brew install nmap
# Windows (PowerShell, avec winget)
winget install Insecure.Nmap
Sous Windows, l’installeur graphique téléchargé depuis nmap.org reste l’option la plus fiable, car il installe automatiquement Npcap, sans lequel les scans en paquets bruts échouent. Acceptez l’installation de Npcap lorsqu’elle est proposée. Si vous utilisez WSL (sous-système Windows pour Linux), installez plutôt la version Linux via apt pour bénéficier des privilèges réseau natifs.
Sur macOS, Homebrew installe une version récente sans Zenmap. Si vous tenez à l’interface graphique, préférez l’image disque officielle. Notez que macOS impose parfois des autorisations supplémentaires pour la capture de paquets, validées dans les Réglages Système.
Étape 2 : Vérifier l’installation et la syntaxe de base
Une fois Nmap installé, confirmez la version et familiarisez-vous avec la structure d’une commande. La syntaxe générale est simple : nmap [type de scan] [options] [cible].
# Afficher la version installée
nmap --version
# Sortie attendue (extrait)
# Nmap version 7.95 ( https://nmap.org )
# Platform: x86_64-pc-linux-gnu
# Compiled with: liblua-5.4.6 openssl-3.x libpcap ...
# Compiled without:
# Available nsock engines: epoll poll select
# Aide rapide
nmap --help
# Premier scan, sur la cible d'entraînement officielle autorisée
nmap scanme.nmap.org
Les cibles acceptent plusieurs formats. Une adresse IP unique (192.168.1.10), un nom de domaine (scanme.nmap.org), une plage (192.168.1.1-50), un sous-réseau en notation CIDR (192.168.1.0/24), ou une liste lue depuis un fichier avec -iL cibles.txt. Maîtriser ces notations vous fait gagner un temps précieux.
Un point essentiel sur les droits : exécutez sudo nmap ... pour débloquer les scans avancés. Sans sudo, la commande fonctionne quand même, mais Nmap utilise des techniques moins furtives et ne peut pas détecter le système d’exploitation. Pour ce tutoriel, partez du principe que vous lancez Nmap avec les privilèges adéquats sur un réseau qui vous appartient.
Étape 3 : Découvrir les hôtes actifs sur le réseau
Avant de scanner des ports, identifiez les machines vivantes. Le scan de découverte (-sn, ancien -sP) effectue un balayage ping sans scanner aucun port. Idéal pour dresser l’inventaire d’un réseau local.
# Lister les machines actives sur le réseau local
sudo nmap -sn 192.168.1.0/24
# Sortie typique
# Nmap scan report for livebox.home (192.168.1.1)
# Host is up (0.0021s latency).
# MAC Address: 44:CE:7D:xx:xx:xx (Sagemcom)
# Nmap scan report for 192.168.1.23
# Host is up (0.018s latency).
# Nmap scan report for nas.home (192.168.1.40)
# Host is up (0.0009s latency).
# Nmap done: 256 IP addresses (3 hosts up) scanned in 2.74 seconds
Ce balayage combine plusieurs techniques de découverte : requêtes ARP sur le réseau local (très fiables), pings ICMP, et sondes TCP sur les ports 80 et 443. Sur un réseau local, l’ARP donne des résultats quasi instantanés et révèle aussi l’adresse MAC, donc le fabricant de l’équipement. C’est ainsi que vous repérez une box opérateur, un NAS, une imprimante ou un objet connecté inconnu.
Si certains hôtes bloquent le ping, ajoutez -Pn pour considérer toutes les cibles comme actives et passer directement au scan de ports. Attention, cette option ralentit fortement un balayage de sous-réseau entier, car Nmap teste alors chaque adresse sans tri préalable. Réservez -Pn aux hôtes précis que vous savez protégés par un pare-feu filtrant l’ICMP.
Étape 4 : Scanner les ports TCP (SYN et connect)
Le cœur de Nmap reste le scan de ports. Deux techniques dominent pour le TCP. Le scan SYN (-sS), dit semi-ouvert, envoie un paquet SYN et n’achève jamais la poignée de main : rapide, discret, mais il exige les droits root. Le scan connect (-sT) établit une connexion TCP complète via le système d’exploitation : plus lent, plus visible dans les journaux, mais utilisable sans privilèges.
# Scan SYN sur les 1000 ports par défaut (nécessite sudo)
sudo nmap -sS 192.168.1.40
# Scan TCP connect, sans privilèges
nmap -sT 192.168.1.40
# Scanner des ports précis
sudo nmap -sS -p 22,80,443,3306,5432 192.168.1.40
# Scanner une plage de ports
sudo nmap -sS -p 1-1024 192.168.1.40
# Scanner les 65535 ports TCP
sudo nmap -sS -p- 192.168.1.40
# Scanner les 100 ports les plus courants (rapide)
sudo nmap -sS --top-ports 100 192.168.1.40
Le tableau ci-dessous résume les principaux types de scan et leur usage. Chaque technique répond à un besoin précis : furtivité, contournement de pare-feu, ou simple inventaire.
| Drapeau | Type de scan | Droits root | Usage typique |
|---|---|---|---|
-sS | SYN (semi-ouvert) | Oui | Scan rapide et discret par défaut |
-sT | TCP connect | Non | Sans privilèges, plus bruyant |
-sU | UDP | Oui | DNS, SNMP, DHCP, VPN |
-sA | ACK | Oui | Cartographier les règles de pare-feu |
-sN / -sF | Null / FIN | Oui | Contourner certains filtres simples |
Les ports renvoyés portent un état. open signale un service à l’écoute. closed indique qu’aucun service n’écoute mais que l’hôte répond. filtered révèle qu’un pare-feu bloque la sonde, sans que Nmap puisse trancher. Les états open|filtered et closed|filtered traduisent une incertitude, fréquente en UDP. Comprendre ces nuances évite des conclusions hâtives.
Étape 5 : Détecter les services et leurs versions
Savoir qu’un port est ouvert ne suffit pas. Le drapeau -sV interroge chaque service pour en deviner le logiciel et la version exacte. Cette information est capitale pour un défenseur : une version précise se compare directement aux bases de vulnérabilités connues.
# Détection de versions sur les ports ouverts
sudo nmap -sV 192.168.1.40
# Sortie typique
# PORT STATE SERVICE VERSION
# 22/tcp open ssh OpenSSH 9.6p1 Ubuntu 3ubuntu13 (protocol 2.0)
# 80/tcp open http nginx 1.24.0
# 139/tcp open netbios-ssn Samba smbd 4.x
# 445/tcp open netbios-ssn Samba smbd 4.x
# 5000/tcp open http Synology DiskStation Manager httpd
# Service detection performed. Please report any incorrect results.
# Détection plus agressive (sondes supplémentaires)
sudo nmap -sV --version-intensity 9 192.168.1.40
L’intensité de détection se règle de 0 à 9 avec --version-intensity. Une valeur basse limite le nombre de sondes (scan plus rapide, moins précis), une valeur haute multiplie les tests (plus lent, plus fiable). Le raccourci --version-light équivaut à l’intensité 2, --version-all à l’intensité 9.
Dans l’exemple ci-dessus, on découvre un serveur SSH OpenSSH 9.6, un nginx 1.24, et un partage Samba. Chacun mérite une vérification : la version SSH est-elle à jour, le partage Samba est-il volontairement exposé, l’interface web du NAS est-elle protégée. Après un tel scan, durcissez vos accès SSH avec une authentification par clé SSH plutôt que par mot de passe, et chiffrez les flux web avec un certificat SSL via Certbot.
Étape 6 : Identifier le système d’exploitation
Nmap devine le système d’exploitation d’une cible en analysant de subtiles particularités de sa pile réseau : valeurs initiales de fenêtre TCP, options, comportement face à des paquets inhabituels. Le drapeau -O active cette détection, qui exige les droits root et au moins un port ouvert et un port fermé pour fonctionner correctement.
# Détection du système d'exploitation
sudo nmap -O 192.168.1.40
# Sortie typique
# Running: Linux 5.X|6.X
# OS CPE: cpe:/o:linux:linux_kernel:6
# OS details: Linux 6.1 - 6.8
# Network Distance: 1 hop
# Scan agressif : versions + OS + scripts + traceroute en une commande
sudo nmap -A 192.168.1.40
# Forcer une supposition même avec peu d'indices
sudo nmap -O --osscan-guess 192.168.1.40
Le drapeau -A (agressif) cumule détection de versions (-sV), détection d’OS (-O), exécution des scripts par défaut (-sC) et traceroute. C’est la commande tout-en-un pour une reconnaissance complète d’un hôte, au prix d’un scan plus long et bien plus bruyant. Réservez-la aux cibles ciblées, jamais à un sous-réseau entier que vous voudriez garder discret.
La détection d’OS n’est jamais certaine à 100 %. Nmap affiche un pourcentage de confiance et propose parfois plusieurs hypothèses. Un pare-feu, un routeur intermédiaire ou une pile réseau modifiée peuvent fausser le résultat. Traitez cette information comme un indice, pas comme une vérité absolue.
Étape 7 : Régler la vitesse avec les modèles de timing
La vitesse d’un scan se règle finement. Trop rapide, il sature le réseau et déclenche les alertes des systèmes de détection d’intrusion. Trop lent, il prend des heures. Les six modèles de timing, de -T0 à -T5, offrent un compromis prêt à l’emploi.
| Modèle | Nom | Vitesse | Quand l’utiliser |
|---|---|---|---|
-T0 | Paranoid | Très lente | Contourner une détection d’intrusion stricte |
-T1 | Sneaky | Lente | Discrétion maximale, scan furtif |
-T2 | Polite | Modérée | Réseau fragile à ménager |
-T3 | Normal | Par défaut | Usage courant équilibré |
-T4 | Aggressive | Rapide | Réseau local fiable et rapide |
-T5 | Insane | Très rapide | Réseau très rapide, précision sacrifiée |
# Scan rapide sur réseau local fiable
sudo nmap -T4 -sS 192.168.1.0/24
# Scan discret sur un hôte sensible
sudo nmap -T1 -sS 192.168.1.40
# Réglages manuels fins (au-delà des modèles)
sudo nmap --min-rate 500 --max-retries 2 -sS 192.168.1.40
En pratique, -T4 est le réglage le plus courant sur un réseau local moderne : il accélère nettement sans trop sacrifier de précision. Sur Internet ou un réseau saturé, -T3 reste plus sûr. Les modèles -T0 et -T1 servent uniquement à passer sous le radar d’une détection d’intrusion, au prix d’une lenteur extrême (un scan complet peut alors durer des heures). Pour un contrôle fin, les options --min-rate et --max-retries ajustent directement le débit de paquets et le nombre de tentatives.
Étape 8 : Scanner l’UDP et composer avec les pare-feu
Le TCP attire toute l’attention, mais de nombreux services critiques utilisent l’UDP : DNS (53), SNMP (161), DHCP (67), NTP (123), ou encore certains VPN. Le scan UDP (-sU) est notoirement lent, car l’absence de réponse en UDP ne signifie pas grand-chose : Nmap doit attendre et réessayer.
# Scanner les ports UDP les plus courants
sudo nmap -sU --top-ports 50 192.168.1.40
# Combiner TCP et UDP sur des ports ciblés
sudo nmap -sS -sU -p T:22,80,443,U:53,161,123 192.168.1.40
# Ignorer la découverte d'hôte (hôte derrière un pare-feu)
sudo nmap -Pn 192.168.1.40
# Fragmenter les paquets pour gêner un filtrage simple
sudo nmap -f 192.168.1.40
# Spécifier un port source
sudo nmap --source-port 53 192.168.1.40
Pour un scan UDP raisonnable, limitez-vous aux ports les plus courants avec --top-ports. Un scan UDP des 65 535 ports peut durer des heures, voire dépasser une journée sur un hôte filtrant. La syntaxe -p T:...,U:... permet de combiner ports TCP et UDP en une seule commande, économisant un passage.
Face à un pare-feu, plusieurs leviers existent. -Pn évite la phase de découverte que le pare-feu pourrait bloquer. La fragmentation (-f) découpe les paquets pour échapper à des filtres rudimentaires, technique aujourd’hui largement détectée par les équipements modernes. Le port source modifié (--source-port 53) exploite parfois des règles trop permissives autorisant le trafic DNS. Ces techniques relèvent du test autorisé : leur usage sur un système tiers reste illégal.
Étape 9 : Automatiser l’analyse avec le moteur de scripts NSE
Le moteur de scripts NSE (Nmap Scripting Engine) transforme Nmap en plateforme d’audit complète. Écrits en Lua, ces scripts (plusieurs centaines, classés par catégories) automatisent la détection de vulnérabilités, l’énumération de services, la collecte d’informations et bien plus.
# Exécuter les scripts par défaut (sûrs et utiles)
sudo nmap -sC 192.168.1.40
# Lancer une catégorie entière de scripts
sudo nmap --script vuln 192.168.1.40
# Cibler un script précis
sudo nmap --script ssh2-enum-algos -p 22 192.168.1.40
# Détecter les partages SMB exposés
sudo nmap --script smb-enum-shares -p 445 192.168.1.40
# Lister les scripts disponibles localement
ls /usr/share/nmap/scripts/ | head
# Mettre à jour la base de scripts
sudo nmap --script-updatedb
Les scripts se rangent par catégories : default (sûrs, exécutés par -sC), safe (sans effet de bord), vuln (recherche de vulnérabilités connues), discovery (collecte d’informations), auth, brute (attaques par force brute), intrusive (potentiellement perturbants) et exploit. Maniez les catégories brute, intrusive et exploit avec une extrême prudence, et uniquement sur vos propres systèmes : elles peuvent perturber un service en production.
# Exemple de sortie d'un script vuln
# PORT STATE SERVICE
# 80/tcp open http
# | http-csrf:
# | Spidering limited to: maxdepth=3; maxpagecount=20
# | Found the following possible CSRF vulnerabilities:
# |_ Path: http://192.168.1.40:80/login
# | http-server-header: nginx/1.24.0
# |_http-title: NAS Login
Le script http-csrf ci-dessus signale un formulaire potentiellement vulnérable. Pour comprendre et corriger ce type de faille, lisez notre guide complémentaire sur la signature d’API avec HMAC-SHA256, utile pour protéger vos endpoints.
Étape 10 : Exporter et exploiter les résultats
Un scan n’a de valeur que si vous pouvez en conserver et en analyser les résultats. Nmap propose plusieurs formats de sortie, chacun adapté à un usage : lecture humaine, traitement automatisé, ou import dans un autre outil.
# Sortie texte lisible
sudo nmap -sV 192.168.1.40 -oN scan.txt
# Sortie XML (pour traitement par script ou import)
sudo nmap -sV 192.168.1.40 -oX scan.xml
# Sortie greppable (pour grep, awk, cut)
sudo nmap -sV 192.168.1.40 -oG scan.gnmap
# Les trois formats à la fois
sudo nmap -sV 192.168.1.40 -oA scan_complet
# Extraire les hôtes avec le port 22 ouvert
grep "22/open" scan.gnmap | cut -d' ' -f2
Le format -oN (normal) reproduit l’affichage console dans un fichier. Le format -oX (XML) structure les données pour un traitement programmatique ou un import dans des outils comme Metasploit. Le format -oG (greppable) tient sur une ligne par hôte, parfait pour les filtres en ligne de commande. L’option -oA scan_complet génère les trois d’un coup, avec une base de nom commune.
Pour un suivi dans le temps, l’outil Ndiff compare deux scans XML et met en évidence les changements : nouveau port ouvert, service mis à jour, hôte apparu ou disparu. C’est un excellent moyen de surveiller la dérive de configuration d’un parc : ndiff scan_lundi.xml scan_vendredi.xml.
Étape 11 : Projet complet, auditer son réseau domestique
Mettons tout en pratique sur un cas réel et légal : l’audit de votre propre réseau domestique. L’objectif est de dresser un inventaire complet, repérer les services exposés et identifier ce qui mérite un durcissement. Voici un script reproductible.
#!/usr/bin/env bash
# audit-reseau-domestique.sh
# Usage : sudo ./audit-reseau-domestique.sh 192.168.1.0/24
set -euo pipefail
RESEAU="${1:-192.168.1.0/24}"
HORODATAGE="$(date +%Y%m%d-%H%M)"
DOSSIER="audit-${HORODATAGE}"
mkdir -p "$DOSSIER"
echo "[1/4] Decouverte des hotes actifs sur $RESEAU"
sudo nmap -sn "$RESEAU" -oG "$DOSSIER/hotes.gnmap"
HOTES=$(grep "Up" "$DOSSIER/hotes.gnmap" | cut -d' ' -f2 | tr '\n' ' ')
echo "Hotes detectes : $HOTES"
echo "[2/4] Scan des ports et detection de versions"
sudo nmap -sS -sV -T4 --top-ports 1000 $HOTES -oA "$DOSSIER/ports"
echo "[3/4] Scripts de securite par defaut"
sudo nmap -sC $HOTES -oN "$DOSSIER/scripts.txt"
echo "[4/4] Recherche de services sensibles exposes"
grep -E "open" "$DOSSIER/ports.gnmap" | \
grep -E "telnet|ftp|vnc|rdp|smb|mysql|postgres" || \
echo "Aucun service sensible evident detecte."
echo "Audit termine. Resultats dans : $DOSSIER/"
Ce script déroule les quatre phases d’un audit propre. Il découvre d’abord les hôtes actifs, puis scanne leurs ports avec détection de versions, applique les scripts de sécurité par défaut, et signale enfin les services historiquement risqués (Telnet, FTP, VNC, RDP, partages SMB, bases de données exposées). Rendez-le exécutable avec chmod +x audit-reseau-domestique.sh avant de le lancer.
Interprétez les résultats avec méthode. Un port Telnet (23) ouvert est une alerte rouge : ce protocole transmet tout en clair, remplacez-le par SSH. Un partage SMB accessible sans authentification expose vos fichiers. Une interface d’administration de box ou de NAS joignable depuis tout le réseau mérite un mot de passe fort et, idéalement, une restriction d’accès. Chaque ligne du rapport est une décision à prendre.
Étape 12 : Bonnes pratiques et sécurisation après le scan
Un scan n’est qu’un diagnostic. La vraie valeur naît des actions qui suivent. Voici la marche à suivre pour transformer vos résultats en réseau plus sûr.
- Fermez les ports inutiles. Chaque service exposé est une porte. Désactivez ce qui ne sert pas et restreignez l’accès au reste via un pare-feu.
- Mettez à jour les versions vulnérables. Les versions repérées avec
-sVse comparent aux bulletins de sécurité. Corrigez en priorité les services exposés sur Internet. - Remplacez les protocoles en clair. Telnet, FTP et HTTP cèdent la place à SSH, SFTP et HTTPS. Déployez un certificat SSL gratuit sur vos services web.
- Renforcez l’authentification. Clés SSH plutôt que mots de passe, authentification à deux facteurs sur les interfaces d’administration.
- Segmentez le réseau. Isolez les objets connectés et les invités sur un réseau séparé du reste.
- Surveillez dans le temps. Relancez l’audit régulièrement et comparez avec Ndiff pour détecter toute dérive.
Pensez aussi à durcir le poste depuis lequel vous scannez. Un VPN protège vos communications lors d’audits distants ; notre tutoriel VPN WireGuard sur Linux détaille une configuration robuste. Pour la gestion des clés et certificats que vous manipulerez en sécurisant vos services, le guide OpenSSL : clés et certificats complète parfaitement ce parcours.
6 erreurs fréquentes avec Nmap
Même les utilisateurs expérimentés tombent dans ces pièges. Les éviter améliore la précision et la sécurité de vos scans.
- Scanner sans les droits root. Lancer un scan SYN sans
sudofait basculer Nmap en scan connect, plus lent et plus visible, et désactive la détection d’OS. Vérifiez toujours vos privilèges. - Oublier que UDP est lent. Lancer
-sU -p-sur un hôte filtrant peut bloquer le terminal des heures. Limitez l’UDP aux ports utiles avec--top-ports. - Confondre filtered et closed. Un port filtered n’est pas fermé : un pare-feu masque sa réponse. Conclure trop vite à l’absence de service induit en erreur.
- Utiliser -T5 partout. Le mode Insane perd des ports ouverts sur un réseau chargé. Préférez
-T4en local et-T3à distance. - Lancer -A sur un sous-réseau entier. Le scan agressif génère un trafic massif et bruyant. Réservez-le à des hôtes ciblés.
- Scanner sans autorisation. L’erreur la plus grave. Hors de votre propre réseau ou d’un périmètre autorisé par écrit, vous vous exposez à des poursuites.
Dépannage : 8 problèmes courants et leurs solutions
| Symptôme | Cause probable | Solution |
|---|---|---|
| « You requested a scan type which requires root privileges » | Scan SYN, UDP ou OS sans privilèges | Relancer avec sudo ou en administrateur |
| Tous les hôtes apparaissent « down » | Le pare-feu bloque le ping de découverte | Ajouter -Pn pour forcer le scan |
| « dnet: Failed to open device eth0 » (Windows) | Npcap absent ou mal installé | Réinstaller Npcap depuis npcap.com |
| Scan extrêmement lent | UDP, ou modèle de timing trop bas | Limiter les ports, passer en -T4 |
| Tous les ports en « filtered » | Pare-feu strict côté cible | Tester -sA, -f ou un autre port source |
| Détection d’OS imprécise | Pas de port ouvert et fermé combinés | Ajouter --osscan-guess |
| « Host seems down. If it is really up… » | Hôte filtrant l’ICMP | Utiliser -Pn |
| Aucun script NSE trouvé | Base de scripts non indexée | Lancer sudo nmap --script-updatedb |
Si un scan paraît figé, appuyez sur une touche pendant son exécution : Nmap affiche alors une estimation de progression et de temps restant. Cette astuce, méconnue, rassure sur les scans longs et confirme qu’aucun blocage n’est survenu. En cas de doute persistant, ajoutez -v ou -vv pour augmenter le niveau de verbosité et suivre le déroulement en détail.
Sur Windows, la plupart des erreurs de bas niveau remontent à Npcap. Vérifiez sa présence dans la liste des programmes installés et, en cas de doute, réinstallez-le depuis npcap.com en cochant le mode compatibilité WinPcap si un ancien outil l’exige. Un redémarrage règle souvent les problèmes de pilote.
Astuces avancées pour aller plus loin
Une fois les bases acquises, ces techniques affinent vos scans et accélèrent votre travail au quotidien.
- Reprendre un scan interrompu. L’option
--resume scan.gnmapreprend là où un balayage s’est arrêté, précieux sur de gros sous-réseaux. - Exclure des hôtes.
--exclude 192.168.1.1ou--excludefile liste.txtévite de scanner la passerelle ou des machines hors périmètre. - Lire les cibles depuis un fichier.
-iL cibles.txtindustrialise les audits récurrents sur une liste maîtrisée. - Combiner scan et traceroute.
--traceroutecartographie le chemin réseau vers chaque cible. - Accélérer la résolution DNS.
-ndésactive la résolution inverse,-Rla force. Sans DNS, un gros scan gagne un temps notable. - Auditer un service précis. Couplez
-pet un script NSE ciblé pour un diagnostic chirurgical, par exemple--script ssl-enum-ciphers -p 443pour évaluer la qualité d’une configuration TLS.
Pour les audits réguliers, créez des alias ou des scripts shell qui encapsulent vos commandes favorites. Un alias nmap-rapide pointant vers sudo nmap -sS -sV -T4 --top-ports 200 standardise vos scans et réduit les erreurs de frappe. Documentez ces commandes dans un dépôt versionné pour toute l’équipe.
Enfin, gardez à l’esprit que Nmap n’est qu’une brique d’une démarche défensive. Croisez ses résultats avec une veille sur les vulnérabilités, comme l’illustre l’exploitation rapide de la faille Ivanti Sentry, scorée CVSS 10 et exploitée en moins de 24 heures. Un port ouvert combiné à une CVE critique exige une réaction immédiate.
Nmap face aux autres scanners de réseau
Nmap n’est pas seul sur le marché, et bien le situer face à ses concurrents aide à choisir le bon outil selon le contexte. Trois alternatives reviennent souvent dans les discussions des équipes de sécurité.
Masscan vise la vitesse brute. Il balaie l’intégralité de l’espace IPv4 en quelques minutes sur un lien suffisant, mais reste limité au scan de ports TCP, sans la richesse de détection de Nmap. Beaucoup de professionnels combinent les deux : Masscan pour repérer les ports ouverts à grande échelle, puis Nmap pour analyser en profondeur les hôtes intéressants. RustScan joue un rôle similaire, en pré-filtrant rapidement les ports avant de passer le relais au moteur Nmap pour la détection de versions et l’exécution des scripts NSE.
Pour la détection de vulnérabilités à proprement parler, OpenVAS (devenu Greenbone) et Nessus vont plus loin que les scripts NSE de la catégorie vuln. Ils maintiennent d’immenses bases de tests et produisent des rapports détaillés adaptés à la conformité. Nmap conserve l’avantage sur la reconnaissance, la rapidité d’exécution et la souplesse en ligne de commande. Le bon réflexe consiste à voir ces outils comme complémentaires : Nmap cartographie et identifie, un scanner dédié approfondit l’analyse des failles. Pour un usage quotidien, Nmap reste le couteau suisse que tout administrateur réseau devrait maîtriser, gratuit, léger et présent dans tous les dépôts.
FAQ : vos questions sur Nmap
Scanner mon propre réseau avec Nmap est-il légal ?
Oui. Scanner les équipements que vous possédez, sur votre propre réseau, est parfaitement légal. La frontière se situe au scan de systèmes tiers sans autorisation, qui peut tomber sous le coup des articles 323-1 et suivants du Code pénal en France. Pour vous entraîner, utilisez scanme.nmap.org, une cible que le projet Nmap autorise explicitement.
Quelle est la différence entre nmap -sS et nmap -sT ?
Le scan SYN (-sS) n’achève pas la connexion TCP : il est rapide, discret, et nécessite les droits root. Le scan connect (-sT) établit une connexion complète via le système d’exploitation : il fonctionne sans privilèges mais reste plus lent et plus visible dans les journaux de la cible.
Combien de ports Nmap scanne-t-il par défaut ?
Par défaut, Nmap scanne les 1 000 ports TCP les plus courants, pas les 65 535 ports possibles. Pour tout scanner, ajoutez -p-. Pour limiter aux ports les plus fréquents, utilisez --top-ports 100 ou un nombre de votre choix.
Pourquoi mon scan affiche-t-il tous les ports en « filtered » ?
Un état filtered signifie qu’un pare-feu bloque les sondes de Nmap avant qu’elles n’atteignent le port. Ce n’est pas la preuve que les ports sont fermés. Essayez un scan ACK (-sA) pour cartographier les règles du pare-feu, ou un autre type de scan.
Nmap peut-il détecter des vulnérabilités ?
Oui, via le moteur de scripts NSE. La commande nmap --script vuln cible lance les scripts de recherche de vulnérabilités connues. Nmap n’est toutefois pas un scanner de vulnérabilités dédié comme OpenVAS ou Nessus ; il en couvre une partie et reste excellent pour la reconnaissance.
Zenmap est-il toujours disponible en 2026 ?
Oui. Zenmap, l’interface graphique officielle, reste distribuée avec l’installeur Nmap pour Windows et disponible pour Linux et macOS. Elle convient bien aux débutants pour visualiser les résultats et construire des commandes, mais la ligne de commande reste plus puissante et scriptable.
Quelle version de Nmap installer ?
Installez toujours la dernière version stable disponible sur nmap.org/download. Au moment de la rédaction, la version 7.95 (publiée en 2024) sert de référence. Les versions récentes apportent des signatures de détection à jour et corrigent des failles, donc évitez les versions trop anciennes des dépôts.
Related Coverage
- ssh-keygen : créer une clé SSH en 12 étapes
- Fail2ban : protéger SSH en 12 étapes
- VPN WireGuard sur Linux en 30 minutes
- Certificat SSL gratuit avec Certbot et Nginx
- OpenSSL : clés et certificats en 12 étapes
- Panorama de la cybermenace ANSSI 2025
- Tous nos guides Cybersécurité
Sources et références : Nmap.org, Manuel de référence Nmap, Documentation du moteur NSE, Téléchargements officiels, Npcap et ANSSI (cyber.gouv.fr).




