Quand on doit découvrir les machines actives sur un réseau, identifier les ports ouverts sur un serveur, ou auditer la sécurité d’une infrastructure, nmap est l’outil de référence. Créé en 1997 par Gordon Lyon (Fyodor), ce scanner réseau open source permet d’explorer, analyser et sécuriser des infrastructures de toute taille.
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- Découvrir les hôtes actifs sur un réseau
- Scanner les ports et identifier les services
- Détecter le système d’exploitation des cibles
- Utiliser les scripts NSE pour l’audit de sécurité
- Exporter les résultats pour documentation et comparaison
Rappel légal important
Section intitulée « Rappel légal important »La commande nmap dans l’écosystème sécurité
Section intitulée « La commande nmap dans l’écosystème sécurité »nmap fait partie des outils de reconnaissance réseau. Chaque outil a sa spécialité :
| Outil | Spécialité | Quand l’utiliser |
|---|---|---|
nmap | Découverte hôtes/ports/services | Cartographie réseau, audit sécurité |
masscan | Scan très rapide | Grands réseaux (millions d’IP) |
netcat | Connexion manuelle | Test ponctuel d’un service |
tcpdump | Capture de paquets | Analyse du trafic en temps réel |
wireshark | Analyse protocolaire | Débogage réseau approfondi |
nikto | Scan vulnérabilités web | Audit serveurs HTTP |
Quand utiliser nmap vs masscan ?
| Situation | nmap | masscan |
|---|---|---|
| Scan d’un serveur | ✅ Détails complets | Overkill |
| Scan réseau /24 | ✅ Parfait | ✅ |
| Scan Internet entier | ❌ Trop lent | ✅ Conçu pour |
| Détection de services | ✅ -sV | ❌ Limité |
| Scripts personnalisés | ✅ NSE | ❌ |
| Détection d’OS | ✅ -O | ❌ |
Workflow typique d’audit :
# 1. Découverte des hôtes actifs (rapide)nmap -sn 192.168.1.0/24
# 2. Scan des ports courants sur les hôtes trouvésnmap -F -oA scan-initial 192.168.1.10-50
# 3. Scan approfondi sur les cibles intéressantesnmap -sV -sC -O -oA scan-detail 192.168.1.42
# 4. Recherche de vulnérabilitésnmap --script vuln -p 80,443 192.168.1.42Comprendre la commande nmap en 2 min
Section intitulée « Comprendre la commande nmap en 2 min »🧠 Modèle mental — Comment fonctionne nmap
nmap = Définir la cible → Choisir le type de scan → Analyser les résultats
Points clés
- nmap envoie des paquets réseau pour découvrir hôtes, ports et services
- Le scan SYN (-sS) est le plus courant : rapide et discret
- Le scan TCP Connect (-sT) complète la connexion : plus visible mais fiable
- Le scan UDP (-sU) est lent mais détecte DNS, DHCP, SNMP
- L'option -A combine : détection OS, services, scripts et traceroute
- -T0 à -T5 contrôle la vitesse (T4 = bon compromis rapidité/discrétion)
Règles d'or
Vocabulaire essentiel
- -sS
- Scan SYN (semi-ouvert, rapide)
- -sT
- Scan TCP Connect (complet)
- -sU
- Scan UDP
- -p 22,80,443
- Ports spécifiques
- -p-
- Tous les 65535 ports
- -A
- Scan agressif (OS + services + scripts)
📚 Pour aller plus loin — 6 options avancées
- -sV
- Détection des versions de services
- -O
- Détection du système d'exploitation
- -sn
- Ping scan (découverte hôtes sans scan ports)
- --script
- Exécuter des scripts NSE
- -T4
- Timing agressif (rapide)
- -oA
- Exporter dans tous les formats
nmap envoie des paquets réseau vers les cibles, analyse les réponses (ou leur absence), et en déduit l’état des ports et les services qui tournent.
Syntaxe minimale
Section intitulée « Syntaxe minimale »nmap [OPTIONS] [CIBLE]Les types de scans principaux
Section intitulée « Les types de scans principaux »| Scan | Option | Usage | Vitesse |
|---|---|---|---|
| SYN | -sS | Scan standard (semi-ouvert) | Rapide |
| TCP Connect | -sT | Connexion complète | Moyen |
| UDP | -sU | Services UDP (DNS, DHCP) | Lent |
| Ping | -sn | Découverte hôtes uniquement | Très rapide |
Scan SYN vs TCP Connect
Section intitulée « Scan SYN vs TCP Connect »Le scan SYN (-sS) est le plus utilisé :
# Scan SYN (nécessite root) - rapide et discretsudo nmap -sS 192.168.1.100
# Scan TCP Connect - pas besoin de root, mais plus lentnmap -sT 192.168.1.100Différence technique :
- SYN : envoie SYN, reçoit SYN-ACK, envoie RST (pas de connexion complète)
- TCP Connect : établit une vraie connexion TCP (3-way handshake complet)
Spécifier les ports
Section intitulée « Spécifier les ports »| Syntaxe | Signification | Exemple |
|---|---|---|
-p N | Port N seul | -p 22 → port SSH |
-p N,M,P | Ports N, M et P | -p 22,80,443 |
-p N-M | De N à M | -p 1-1024 → ports privilégiés |
-p- | Tous les 65535 ports | Exhaustif mais lent |
-F | Fast (100 ports courants) | Rapide |
Détection avancée
Section intitulée « Détection avancée »# Détection des versions de servicesnmap -sV 192.168.1.100
# Détection du système d'exploitationsudo nmap -O 192.168.1.100
# Scan "agressif" : OS + services + scripts + traceroutesudo nmap -A 192.168.1.100Contrôle de la vitesse
Section intitulée « Contrôle de la vitesse »L’option -T contrôle l’agressivité du scan :
| Niveau | Nom | Usage |
|---|---|---|
-T0 | Paranoid | Évitement IDS extrême |
-T1 | Sneaky | Évitement IDS |
-T2 | Polite | Charge réseau réduite |
-T3 | Normal | Par défaut |
-T4 | Aggressive | Réseaux rapides et fiables |
-T5 | Insane | Très rapide, risque de rater des ports |
Recommandation : -T4 pour les audits internes, -T2 ou -T3 pour rester discret.
Export des résultats
Section intitulée « Export des résultats »# Format normal (lisible)nmap -oN scan.txt 192.168.1.100
# Format XML (pour outils d'analyse)nmap -oX scan.xml 192.168.1.100
# Format grepable (pour scripts)nmap -oG scan.gnmap 192.168.1.100
# Tous les formats en une foisnmap -oA scan-2026-01-28 192.168.1.100Installation
Section intitulée « Installation »sudo apt update && sudo apt install nmapnmap --versionsudo dnf install nmapnmap --versionbrew install nmapnmap --versionTéléchargez l’installateur depuis nmap.org/download.
L’installation inclut Zenmap (interface graphique) et Npcap (driver de capture).
Les scripts NSE (Nmap Scripting Engine)
Section intitulée « Les scripts NSE (Nmap Scripting Engine) »Le NSE permet d’automatiser des tâches avancées grâce à des scripts en Lua.
Catégories de scripts
Section intitulée « Catégories de scripts »| Catégorie | Usage | Risque |
|---|---|---|
safe | Scripts non intrusifs | Aucun |
default | Exécutés avec -sC | Faible |
discovery | Collecte d’informations | Faible |
version | Détection de versions | Faible |
auth | Tests d’authentification | Moyen |
vuln | Détection de vulnérabilités | Moyen |
brute | Force brute | Élevé |
exploit | Exploitation | Très élevé |
intrusive | Scripts potentiellement disruptifs | Élevé |
Utilisation des scripts
Section intitulée « Utilisation des scripts »# Scripts par défaut (safe + version)nmap -sC 192.168.1.100
# Scripts d'une catégorienmap --script discovery 192.168.1.100
# Script spécifiquenmap --script http-title -p 80 192.168.1.100
# Plusieurs scriptsnmap --script "http-*" -p 80,443 192.168.1.100
# Scripts avec argumentsnmap --script http-brute --script-args userdb=users.txt -p 80 192.168.1.100Scripts utiles pour l’audit
Section intitulée « Scripts utiles pour l’audit »# Recherche de vulnérabilitésnmap --script vuln -p 80,443 192.168.1.100
# Énumération HTTPnmap --script http-enum -p 80,443 192.168.1.100
# Détection SSL/TLSnmap --script ssl-enum-ciphers -p 443 192.168.1.100
# Informations SSHnmap --script ssh-auth-methods -p 22 192.168.1.100
# Découvrir les scripts disponiblesnmap --script-help "*ssh*"Les Modèles de scans courants
Section intitulée « Les Modèles de scans courants »Ces recettes couvrent les cas d'usage les plus fréquents. Cliquez sur un pattern pour voir la formule complète et un exemple prêt à copier.
Scan basique Base Découvrir les ports ouverts sur une cible
nmap 192.168.1.100
nmap <cible> nmap 192.168.1.100 -
cible— IP, hostname, ou plage CIDR
Ports spécifiques Base Scanner uniquement certains ports
nmap -p 22,80,443,8080 192.168.1.100
nmap -p <ports> <cible> nmap -p 22,80,443,8080 192.168.1.100 -
ports— Liste ou plage de ports -
cible— Hôte cible
Tous les ports Inter. Scanner les 65535 ports
nmap -p- -T4 192.168.1.100
nmap -p- <cible> nmap -p- -T4 192.168.1.100 -
cible— Hôte cible
Détection de services Base Identifier les versions des services
nmap -sV -p 22,80 192.168.1.100
nmap -sV <cible> nmap -sV -p 22,80 192.168.1.100 -
cible— Hôte cible
Détection d'OS Inter. Identifier le système d'exploitation
sudo nmap -O 192.168.1.100
nmap -O <cible> sudo nmap -O 192.168.1.100 -
cible— Hôte cible
Scan agressif Inter. Collecter le maximum d'informations
sudo nmap -A -T4 192.168.1.100
nmap -A <cible> sudo nmap -A -T4 192.168.1.100 -
cible— Hôte cible
Scan furtif SYN Inter. Scanner discrètement sans compléter les connexions
sudo nmap -sS -T2 192.168.1.100
sudo nmap -sS <cible> sudo nmap -sS -T2 192.168.1.100 -
cible— Hôte cible
Scan UDP Inter. Découvrir les services UDP (DNS, DHCP, SNMP)
sudo nmap -sU -p 53,67,161 192.168.1.100
sudo nmap -sU <cible> sudo nmap -sU -p 53,67,161 192.168.1.100 -
cible— Hôte cible
Découverte réseau Base Trouver les hôtes actifs sans scanner les ports
nmap -sn 192.168.1.0/24
nmap -sn <réseau> nmap -sn 192.168.1.0/24 -
réseau— Plage CIDR du réseau
Scan de vulnérabilités Avancé Détecter les vulnérabilités connues
nmap --script vuln -p 22,80,443 192.168.1.100
nmap --script vuln <cible> nmap --script vuln -p 22,80,443 192.168.1.100 -
cible— Hôte cible
Export multi-format Base Sauvegarder les résultats pour analyse
nmap -oA scan-2025-01-28 192.168.1.100
nmap -oA <prefix> <cible> nmap -oA scan-2025-01-28 192.168.1.100 -
prefix— Préfixe des fichiers de sortie -
cible— Hôte cible
Contrôle de timing Base Ajuster la vitesse du scan
nmap -T4 192.168.1.100
nmap -T<0-5> <cible> nmap -T4 192.168.1.100 -
niveau— 0=paranoid, 1=sneaky, 2=polite, 3=normal, 4=aggressive, 5=insane -
cible— Hôte cible
Aucune recette ne correspond à votre recherche.
Les Pièges à éviter
Section intitulée « Les Pièges à éviter »Ces erreurs courantes peuvent faire perdre du temps ou causer des dégâts. Les pièges les plus critiques sont affichés en premier.
Scanner sans autorisation nmap entreprise-externe.com
Danger
nmap entreprise-externe.com
Scan SYN sans root nmap -sS 192.168.1.100
Attention
nmap -sS 192.168.1.100
sudo nmap -sS 192.168.1.100 Scan -p- sur un grand réseau nmap -p- 192.168.0.0/16
Attention
nmap -p- 192.168.0.0/16
nmap -sn 192.168.0.0/16 | grep "up" && nmap -F <cibles> Scan UDP sans cibler les ports nmap -sU 192.168.1.100
Attention
nmap -sU 192.168.1.100
sudo nmap -sU -p 53,67,123,161 192.168.1.100 Scan -A déclenche les alertes nmap -A -T5 cible.com
Attention
nmap -A -T5 cible.com
nmap -sV -T3 cible.com Interpréter "filtered" comme fermé Ignorer les ports "filtered"
Info
Ignorer les ports "filtered"
nmap --reason -sS -sA 192.168.1.100 Résolution DNS ralentit le scan nmap 192.168.1.0/24
Info
nmap 192.168.1.0/24
nmap -n 192.168.1.0/24 Versions de services incorrectes Se fier aveuglément à -sV
Info
Se fier aveuglément à -sV
Dépannage
Section intitulée « Dépannage »🔧 Quand ça ne marche pas
Méthodes de debug
Mode verbeux
Afficher la progression en temps réel
nmap -v <cible> Mode très verbeux
Détails complets sur chaque étape
nmap -vv <cible> Raison des résultats
Comprendre pourquoi un port est open/closed/filtered
nmap --reason <cible> Debug des paquets
Voir les paquets envoyés/reçus
nmap -d <cible> Test de script
Débugger un script NSE
nmap --script-trace --script <script> <cible> Erreurs fréquentes
You requested a scan type which requires root privileges
- Scan SYN (-sS), OS (-O), ou UDP (-sU) sans sudo
- Vérifier le type de scan demandé
- Les scans raw socket nécessitent root
Ajouter sudo devant la commande
sudo nmap -sS localhost Host seems down
- Pare-feu bloque ICMP
- Hôte réellement éteint
- Mauvaise IP
- ping <cible>
- Vérifier l'IP
- Tester -Pn pour ignorer le ping
Utiliser -Pn pour forcer le scan même sans réponse ping
nmap -Pn <cible> All 1000 scanned ports are filtered
- Pare-feu strict
- Hôte protégé
- Mauvais réseau
- Vérifier la connectivité
- Tester un autre type de scan
Essayer -sA (ACK scan) ou --scan-delay pour contourner
nmap -sA <cible> Scan taking too long
- Réseau trop grand
- Timing trop lent
- Trop de ports
- Vérifier la taille de la plage
- Vérifier le timing (-T)
Réduire le scope, augmenter le timing, utiliser -F
nmap -T4 -F <cible> Cheatsheet
Section intitulée « Cheatsheet » 📋
Cheatsheet nmap
📝 Syntaxe :
nmap <cible> Scan basique des 1000 ports courants nmap <réseau>/24 Scanner tout un sous-réseau nmap -iL fichier.txt Lire les cibles depuis un fichier 🚀 Commandes types :
nmap 192.168.1.100 nmap -p 22,80,443,8080 192.168.1.100 nmap -sV -p 22,80 192.168.1.100 nmap -sn 192.168.1.0/24 nmap -oA scan-2025-01-28 192.168.1.100 ⚙️ Options
-p <ports> | Ports spécifiques | -p 22,80,443 |
-p <debut>-<fin> | Plage de ports | -p 1-1024 |
-p- | Tous les 65535 ports | nmap -p- localhost |
-F | Fast scan (100 ports) | nmap -F localhost |
-sS | Scan SYN (semi-ouvert, rapide) | sudo nmap -sS localhost |
-sT | Scan TCP Connect (complet) | nmap -sT localhost |
-sU | Scan UDP | sudo nmap -sU -p 53 localhost |
-sn | Ping scan (découverte hôtes) | nmap -sn 192.168.1.0/24 |
-sV | Détection des versions de services | nmap -sV localhost |
-O | Détection du système d'exploitation | sudo nmap -O localhost |
-A | Scan agressif (OS + services + scripts) | sudo nmap -A localhost |
--script <nom> | Exécuter un script NSE | --script http-title |
--script <catégorie> | Scripts d'une catégorie | --script vuln |
--script-help | Aide sur les scripts | nmap --script-help "*ssh*" |
-T<0-5> | Niveau de timing | -T4 (agressif) |
-n | Pas de résolution DNS | nmap -n 192.168.1.0/24 |
--min-rate | Paquets/seconde minimum | --min-rate 1000 |
-oN <fichier> | Export format normal | -oN scan.txt |
-oX <fichier> | Export format XML | -oX scan.xml |
-oG <fichier> | Export format grepable | -oG scan.gnmap |
-oA <prefix> | Export tous formats | -oA scan-2025 |
-v / -vv | Mode verbeux | nmap -vv localhost |
-Pn | Ignorer le ping (hôte down) | nmap -Pn localhost |
--reason | Afficher la raison du résultat | nmap --reason localhost |
Contrôle de connaissances
Section intitulée « Contrôle de connaissances »Contrôle de connaissances
Validez vos connaissances avec ce quiz interactif
Informations
- Le chronomètre démarre au clic sur Démarrer
- Questions à choix multiples, vrai/faux et réponses courtes
- Vous pouvez naviguer entre les questions
- Les résultats détaillés sont affichés à la fin
Lance le quiz et démarre le chronomètre
Vérification
(0/0)Profil de compétences
Quoi faire maintenant
Ressources pour progresser
Des indices pour retenter votre chance ?
Nouveau quiz complet avec des questions aléatoires
Retravailler uniquement les questions ratées
Retour à la liste des certifications
Conclusion
Section intitulée « Conclusion »Nmap est l’outil incontournable pour la découverte réseau et l’audit de sécurité. Sa polyvalence (scans TCP/UDP, détection OS/services, scripts NSE) en fait un allié puissant pour cartographier et sécuriser vos infrastructures.
Points clés à retenir :
- Toujours avoir une autorisation avant de scanner
- Commencer simple (
-sn,-F) puis approfondir - -sV pour les services, -O pour l’OS, -A pour tout
- -T4 pour la rapidité, -T2 pour la discrétion
- -oA pour exporter dans tous les formats
- —script vuln pour l’audit de vulnérabilités