Contrairement à Google qui indexe les pages web, Shodan explore Internet pour indexer les machines connectées : serveurs, routeurs, caméras, bases de données, objets connectés… absolument tout ce qui répond sur un port réseau.
- Shodan CLI permet d’explorer Internet depuis le terminal pour identifier les machines, services et objets connectés exposés sur le réseau.
- Apprendre à installer et utiliser Shodan CLI facilement afin de lancer ses premières recherches et analyser les informations retournées.
- Exploiter concrètement les résultats obtenus pour analyser une infrastructure, détecter des services publics et des systèmes connectés.
La plupart des utilisateurs découvrent Shodan via son site web. Pourtant, les professionnels utilisent souvent Shodan CLI, une interface en ligne de commande qui permet d’interroger la base de données directement depuis le terminal.
Plus rapide, scriptable et extrêmement puissant, Shodan CLI devient vite un outil incontournable dès que l’on souhaite automatiser des recherches ou analyser des services exposés sur Internet.
Dans ce tutoriel, vous allez découvrir comment utiliser Shodan en CLI depuis le terminal, même si vous débutez complètement. Nous verrons comment l’installer, comment effectuer des recherches, comment interpréter les résultats et surtout comment exploiter les informations obtenues.
- Qu’est-ce que Shodan et à quoi ça sert ?
- Pourquoi utiliser Shodan CLI ?
- Installer Shodan sur votre terminal
- Première recherche avec Shodan CLI
- Comprendre les résultats de Shodan
- Les commandes principales de Shodan CLI
- Rechercher un produit spécifique
- Obtenir les informations détaillées d’une IP
- Obtenir l'ip d'un serveur ou d'un site web
- Comment se connecter à un port ouvert ?
- Méthodologie classique d’un pentest réseau
- Chercher des webcams sur le site de Shodan
- Identifier le service exposé
- Télécharger les résultats d’une recherche
- À quoi servent ces informations ?
- Exemple concret : trouver une webcam exposée
- Shodan CLI vs Censys CLI
- Tableau récapitulatif des commandes Shodan CLI
Qu’est-ce que Shodan et à quoi ça sert ?
Pour bien comprendre Shodan CLI, il faut d’abord comprendre ce qu’est Shodan.
On le décrit souvent comme le moteur de recherche des objets connectés.
Au lieu d’indexer des pages web comme Google, Shodan scanne Internet en permanence et enregistre :
- les serveurs web
- les routeurs
- les caméras IP
- les serveurs FTP
- les bases de données
- les objets connectés (IoT)
- les services réseau exposés
Chaque fois qu’un appareil répond sur Internet, il envoie généralement une bannière de service. Cette bannière contient des informations précieuses :
- logiciel utilisé
- version
- système d’exploitation
- localisation approximative
- ports ouverts
Shodan collecte toutes ces informations et les stocke dans une immense base de données. Grâce à cela, vous pouvez par exemple rechercher :
- des serveurs Apache en France
- des caméras IP accessibles
- des serveurs FTP anonymes
- des bases de données mal configurées
Et c’est précisément là que Shodan CLI devient intéressant : il permet d’interroger cette base de données directement depuis le terminal.

Pourquoi utiliser Shodan CLI ?
La version web de Shodan est très pratique. Cependant, la version CLI (Command Line Interface) apporte plusieurs avantages.
D’abord, elle est beaucoup plus rapide. Une commande dans le terminal peut lancer une recherche instantanément.
Ensuite, elle permet l’automatisation. Vous pouvez par exemple :
- intégrer Shodan dans un script
- automatiser un audit de sécurité
- analyser régulièrement votre infrastructure
Enfin, la CLI permet d’exporter et manipuler facilement les résultats.
Pour les développeurs, administrateurs système ou chercheurs en cybersécurité, Shodan CLI devient vite un outil quotidien.
Shodan en OSINT
Shodan est avant tout un outil OSINT (Open Source Intelligence) : il permet d’explorer une base de données publique contenant des informations sur des machines connectées à Internet (serveurs, routeurs, webcams, objets connectés). L’utilisateur ne scanne pas directement les systèmes ; il consulte simplement des données déjà collectées par Shodan, ce qui permet d’analyser des infrastructures, identifier des technologies utilisées ou repérer des services exposés.
Autrement dit, lorsque vous utilisez Shodan :
- vous ne lancez pas d’attaque
- vous ne scannez pas directement les machines
- vous consultez des informations déjà collectées
C’est exactement le principe de l’OSINT : exploiter des données publiques pour analyser une infrastructure.
Par exemple, avec Shodan vous pouvez découvrir :
- qu’un serveur expose un port SSH
- qu’une base de données MongoDB est accessible
- qu’une webcam est connectée à Internet
- qu’un serveur utilise une version ancienne d’Apache
Toutes ces informations sont visibles sans interaction intrusive avec la machine cible.
Shodan en pentest
En pentesting, Shodan est principalement utilisé lors de la phase de reconnaissance. Il aide à identifier des ports ouverts, des services accessibles ou des versions de logiciels potentiellement vulnérables. Ces informations servent ensuite de point de départ pour approfondir l’analyse avec d’autres outils spécialisés comme Nmap ou Metasploit.
Même si Shodan est d’abord un outil OSINT, il est aussi très utilisé en phase de reconnaissance lors d’un pentest.
Dans un test d’intrusion, la première étape consiste souvent à cartographier la surface d’attaque.
Shodan peut alors servir à identifier :
- les ports ouverts
- les services exposés
- les technologies utilisées
- les versions de logiciels
Installer Shodan sur votre terminal
Passons maintenant à la pratique, l’installation de Shodan CLI est très simple.
Étape 1 : installer Python
Shodan CLI fonctionne grâce à Python.
Pour vérifier si Python est installé :
python3 --version
Si vous obtenez une version (par exemple Python 3.11), tout va bien.
Sinon, installez Python depuis : https://python.org
Étape 2 : installer Shodan CLI
Une fois Python installé, utilisez pipx, le gestionnaire de paquets Python.
Dans votre terminal :
pipx install shodan
En quelques secondes, la CLI sera installée.
Installer setuptools compatible :
~/.local/pipx/venvs/shodan/bin/python -m pip install "setuptools<70"
Pour vérifier :
shodan version
Si une version apparaît, l’installation est réussie.
👉 Pour aller plus loin : Pip, Pip3 et Pipx : Gérer vos paquets
Étape 3 : créer un compte Shodan
Pour utiliser Shodan CLI, vous devez posséder une clé API.
Rendez-vous sur : https://account.shodan.io
- Créez un compte gratuit.
Dans votre tableau de bord, vous trouverez une clé API personnelle.
Étape 4 : connecter Shodan CLI à votre compte
Dans le terminal :
shodan init VOTRE_CLE_API
Si tout se passe bien, le message suivant apparaît :
Successfully initialized
Votre Shodan CLI est maintenant prêt à fonctionner.
Première recherche avec Shodan CLI
Commençons par une recherche simple. Depuis le terminal, tapez :
Attention, il vous faut une licence payante.
shodan search apache
Cette commande demande à Shodan :
Montre-moi tous les serveurs utilisant Apache.
Les résultats ressemblent à ceci :
IP: 192.168.1.10
Port: 80
Organisation: OVH
Location: France
Server: Apache/2.4.41
Chaque ligne représente un serveur détecté par Shodan.
Comprendre les résultats de Shodan
Lorsqu’on utilise Shodan CLI, il est important de comprendre les informations affichées. Voici les éléments les plus courants.
Adresse IP
Exemple :
192.168.1.10
C’est l’adresse publique du serveur.
Port
Exemple :
80
Le port correspond au service réseau.
Les ports les plus fréquents :
| Port | Service |
|---|---|
| 80 | HTTP |
| 443 | HTTPS |
| 22 | SSH |
| 21 | FTP |
| 3306 | MySQL |
👉 Tout savoir sur : Les ports en informatique
Organisation
Exemple :
OVH
Cela indique souvent le fournisseur d’hébergement.
Localisation
Exemple :
France
Shodan estime la localisation via l’adresse IP.
Bannière de service
Exemple :
Apache/2.4.41
C’est l’information envoyée par le serveur.
Elle indique souvent :
- le logiciel
- la version
- parfois le système d’exploitation
Ces données sont extrêmement utiles pour détecter des vulnérabilités.
Les commandes principales de Shodan CLI
Voyons maintenant les commandes les plus importantes.
Rechercher un service
shodan search nginx
Cette commande affiche les serveurs utilisant Nginx.
Rechercher dans un pays
shodan search apache country:FR
Cela affiche les serveurs Apache situés en France.
Rechercher un port spécifique
shodan search port:22
Cela liste les machines avec SSH accessible.
Rechercher un produit spécifique
shodan search product:MongoDB
Shodan affichera les serveurs MongoDB détectés.
Obtenir les informations détaillées d’une IP
Une autre commande très utile :
Accessible avec la licence gratuite.
shodan host 8.8.8.8
Elle affiche toutes les informations connues sur cette adresse IP.
Par exemple :
- ports ouverts
- services détectés
- certificats SSL
- informations réseau

C’est très pratique pour analyser une machine exposée sur Internet.
Obtenir l’ip d’un serveur ou d’un site web
Les plus simples :
- dig →
dig example.com - nslookup →
nslookup example.com ping→ping example.comhost→host example.com
Ces outils interrogent le DNS pour obtenir l’IP d’un domaine.
Avec une adresse IP, vous pouvez interroger Shodan pour obtenir des informations sur les services exposés. Exemple avec le CLI :
Attention, il vous faut une licence payante.
shodan host 142.12.60.1
Shodan peut alors afficher :
- les ports ouverts
- les services détectés (Apache, nginx, SSH…)
- le pays / ville
- l’organisation / hébergeur
- parfois la version du logiciel
En résumé : IP → Shodan → informations sur le serveur exposé sur Internet.
Les résultats de Shodan servent surtout à comprendre ce qu’un serveur expose publiquement sur Internet. Concrètement, ils peuvent être utiles dans trois cas principaux.
1. Analyse OSINT
Vous pouvez identifier l’infrastructure technique d’un site ou d’une organisation :
quel hébergeur est utilisé, quels services sont ouverts (SSH, HTTP, FTP…), dans quel pays se trouve le serveur, etc.
2. Audit de sécurité
Pour un administrateur système ou un pentester, Shodan permet de voir rapidement :
si des ports sensibles sont ouverts, quels logiciels tournent sur le serveur et parfois leurs versions. Cela aide à détecter des failles potentielles.
3. Recherche technique ou veille
On peut analyser les technologies utilisées sur Internet : par exemple combien de serveurs utilisent Apache, nginx, ou exposent un certain service.
Shodan permet de savoir rapidement ce qu’un serveur révèle publiquement et si cela peut poser un problème de sécurité.
Un port ouvert n’est pas forcément un problème, c’est simplement un service accessible sur le réseau.
Si vous êtes l’administrateur du serveur
Un port ouvert vous sert à fournir un service.
Exemples classiques :
Des formations informatique pour tous !
Débutant ou curieux ? Apprenez le développement web, le référencement, le webmarketing, la bureautique, à maîtriser vos appareils Apple et bien plus encore…
Formateur indépendant, professionnel du web depuis 2006, je vous accompagne pas à pas et en cours particulier, que vous soyez débutant ou que vous souhaitiez progresser. En visio, à votre rythme, et toujours avec pédagogie.
Découvrez mes formations Qui suis-je ?- 22 (SSH) → administration à distance du serveur
- 80 / 443 → site web
- 25 / 587 → serveur mail
- 3306 → base de données MySQL
Dans ce cas, l’objectif est surtout de sécuriser l’accès :
- limiter l’accès SSH par clé SSH (pas mot de passe) → Sécuriser ses connexion SSH
- changer éventuellement le port SSH
- utiliser un firewall
- limiter les IP autorisées
- installer fail2ban
Si vous analysez un serveur (OSINT / pentest autorisé)
Un port ouvert vous indique quel service est exposé. Exemple :
22/tcp open ssh
80/tcp open http
443/tcp open https
Cela permet de comprendre :
- quelles technologies sont utilisées
- si un service est mal configuré
- si une version vulnérable est exposée
C’est exactement le type d’informations que collecte Shodan.
Un port ouvert ne signifie pas qu’il faut tenter de s’y connecter ou de l’exploiter sans autorisation. Cela devient rapidement illégal.
Comment se connecter à un port ouvert ?
Dans un pentest légal, un port ouvert indique simplement qu’un service écoute. L’objectif est d’identifier ce service puis tester son accès avec des outils adaptés.
Identifier le service
Avant de se connecter, on vérifie quel service tourne derrière le port. Outil classique :
Par exemple :
nmap -sV 192.168.1.10
L’option -sV détecte la version du service.
Tester la connexion au port
Connexion brute au port, les outils simples pour voir si le service répond :
- netcat (nc)
- telnet
👉 Pour en savoir plus : Commande TELNET et NETCAT pour le réseau
Exemple :
nc 192.168.1.10 80
ou
telnet 192.168.1.10 25
Cela permet d’envoyer des commandes manuelles au service.
Se connecter selon le service détecté
SSH (port 22)
ssh user@192.168.1.10
HTTP / HTTPS à l’aide du navigateur ou :
curl http://192.168.1.10
FTP
ftp 192.168.1.10
Les outils utilisés en pentest
Outils courants :
- Nmap → scan et détection des services
- Netcat → connexion brute aux ports
- Metasploit → exploitation de vulnérabilités
- Burp Suite → tests sur applications web
- Hydra → tests d’authentification
Principe général d’un pentest :
- Découvrir les ports ouverts
- Identifier les services
- Se connecter au service
- Tester les configurations et vulnérabilités
Méthodologie classique d’un pentest réseau
Objectif : identifier la cible et son infrastructure.
On collecte des informations sans interaction intrusive.
Outils courants :
- whois → propriétaire du domaine
- dig / nslookup → IP d’un domaine
- Shodan → services exposés
- theHarvester → emails et sous-domaines
Exemples :
dig example.com
whois example.com
On cherche :
- IP
- sous-domaines
- hébergeur
- technologies utilisées
Scan et cartographie
Objectif : découvrir les ports ouverts et services actifs.
Outil principal :
Exemple :
nmap -sS -sV -O 192.168.1.10
Cela révèle :
- ports ouverts
- services
- versions
- système d’exploitation probable
Énumération
Objectif : extraire le maximum d’informations des services.
Exemples :
- version Apache
- bannière SSH
- utilisateurs FTP
- endpoints web
Outils :
Exploitation
Objectif : tester les vulnérabilités identifiées.
Exemples :
- mot de passe faible
- logiciel vulnérable
- mauvaise configuration
Outils :
Post-exploitation
Objectif : évaluer l’impact réel.
Exemples :
- accès administrateur
- extraction de données
- déplacement latéral sur le réseau
On mesure :
- le niveau de contrôle obtenu
- les données accessibles
- les risques pour l’entreprise
Dernière étape : documenter tout ce qui a été trouvé.
Le rapport contient :
- vulnérabilités découvertes
- niveau de risque
- preuves
- recommandations de correction
Voici un résumé très simple
- Reconnaissance → trouver la cible
- Scan → découvrir les ports
- Enumération → comprendre les services
- Exploitation → tester les failles
- Post-exploitation → mesurer l’impact
- Rapport → expliquer les risques
Chercher des webcams sur le site de Shodan
Sur le site de Shodan, vous pouvez utiliser des mots-clés dans la barre de recherche :
webcam
ip camera
Ou des signatures d’appareils :
product:"IP Camera"
server:"GoAhead-Webs"
Ces requêtes affichent parfois :
- caméras IP
- systèmes de vidéosurveillance
- babyphones connectés
- caméras industrielles
Cela montre simplement que l’appareil est accessible depuis Internet.
Pour chaque appareil, Shodan peut afficher :
- l’adresse IP
- le pays
- les ports ouverts
- le type d’appareil
- parfois une capture d’écran du service web
Une caméra IP est simplement un serveur web ou un service réseau comme un autre. Voici la démarche classique pour s’y connecter (uniquement si vous en avez l’autorisation) :
Identifier le service exposé
Une webcam IP expose souvent :
- HTTP → interface web
- RTSP → flux vidéo
- parfois ONVIF → protocole de gestion
On vérifie avec Nmap :
nmap -sV IP_DE_LA_CAMERA
Exemple de résultat :
80/tcp open http
554/tcp open rtsp
Accéder à l’interface web
La plupart des caméras possèdent un panneau d’administration web.
Dans un navigateur :
http://IP_DE_LA_CAMERA
ou
https://IP_DE_LA_CAMERA
Vous verrez souvent :
- page de login
- interface de configuration
- visualisation du flux
Dans un pentest on vérifie :
- mots de passe par défaut
- authentification faible
- vulnérabilités connues du firmware
Tester le flux vidéo (RTSP)
Beaucoup de caméras diffusent un flux RTSP. On peut tester avec VLC media player.
Dans VLC :
Media → Open Network Stream
Puis :
rtsp://IP_DE_LA_CAMERA:554/stream
Les chemins varient selon les marques.
Tester le protocole ONVIF
Certaines caméras utilisent ONVIF pour la gestion.
Outils utilisés :
- ONVIF Device Manager
- scripts Python ONVIF
Cela permet de voir :
- configuration
- flux vidéo
- paramètres réseau
Tests de sécurité typiques
Dans un pentest, on vérifie par exemple :
- identifiants admin / admin
- firmware vulnérable
- accès anonyme
- flux RTSP non protégé
- API exposée
Pour résumé le workflow :
- scanner l’IP (Nmap)
- accéder à l’interface web
- tester le flux RTSP
- vérifier l’authentification
- analyser les vulnérabilités
Télécharger les résultats d’une recherche
Lorsque vous effectuez une recherche, vous pouvez également télécharger les résultats. Commande :
shodan download serveurs_apache "apache country:FR"
Cela crée un fichier contenant les résultats.
Ensuite :
shodan parse serveurs_apache.json.gz
Vous pourrez analyser les données localement.
C’est très utile pour :
- analyser des milliers de machines
- filtrer les résultats
- créer des rapports
À quoi servent ces informations ?
Vous vous demandez peut-être :
Très bien, mais que faire de ces données ?
Les usages sont nombreux.
Audit de sécurité
Une entreprise peut vérifier si :
- un serveur est exposé
- un port sensible est ouvert
- un logiciel obsolète est accessible
Recherche en cybersécurité
Les chercheurs utilisent Shodan pour :
- détecter des services vulnérables
- analyser l’évolution des infrastructures
- identifier des attaques potentielles
OSINT (Open Source Intelligence)
Les analystes OSINT utilisent Shodan pour :
- identifier des infrastructures
- analyser des réseaux
- cartographier des systèmes connectés
Exemple concret : trouver une webcam exposée
Prenons un exemple réel. Vous voulez rechercher des webcams connectées à Internet.
Commande :
shodan search webcam
Shodan peut renvoyer :
IP: 82.x.x.x
Port: 8080
Server: webcamXP
Location: Spain
Ensuite, vous pouvez tester l’accès :
http://82.x.x.x:8080
Dans certains cas, la caméra est accessible publiquement.
Évidemment, l’objectif n’est pas d’espionner les gens, mais de comprendre les problèmes de configuration.
Shodan CLI vs Censys CLI
Shodan n’est pas le seul moteur de recherche d’objets connectés. Un concurrent bien connu est Censys. Les deux outils scannent Internet pour indexer les services exposés.
Cependant, leurs approches sont légèrement différentes.
Shodan est souvent considéré comme plus simple et plus orienté IoT, tandis que Censys est plus technique et plus orienté analyse réseau.
Voici une comparaison rapide.
| Fonction | Shodan CLI | Censys CLI |
|---|---|---|
| Recherche | oui | oui |
| Infos IP | oui | oui |
| Export données | oui | oui |
| Facilité d’utilisation | très simple | plus technique |
| Orientation | IoT / OSINT | sécurité réseau |
| Certificats SSL | correct | excellent |
Dans la pratique, les professionnels utilisent souvent les deux outils.
- Shodan → découverte rapide
- Censys → analyse technique
Tableau récapitulatif des commandes Shodan CLI
Voici les commandes principales à retenir.
| Commande | Description |
|---|---|
| shodan init APIKEY | connecter votre compte |
| shodan search query | effectuer une recherche |
| shodan host IP | afficher les infos d’une IP |
| shodan download | télécharger des résultats |
| shodan parse | analyser les résultats |
| shodan stats | statistiques sur une recherche |
En quelques années, Shodan est devenu l’un des outils les plus fascinants du web moderne. Il révèle une réalité souvent invisible : des millions de machines connectées à Internet, parfois mal configurées, parfois vulnérables, et souvent totalement ignorées par leurs propriétaires.
Utiliser Shodan CLI depuis le terminal permet de franchir un cap. Vous ne vous contentez plus de consulter une interface web : vous interrogez directement l’immense base de données de Shodan, vous automatisez vos recherches et vous analysez les infrastructures du monde entier avec quelques lignes de commande.
Mais comme tout outil puissant, Shodan demande aussi une utilisation responsable. L’objectif n’est pas d’exploiter des failles, mais de mieux comprendre Internet et d’améliorer la sécurité des systèmes. Et à mesure que vous explorerez ses possibilités, vous réaliserez probablement une chose : derrière chaque adresse IP se cache une histoire technique… parfois brillante, parfois surprenante, et parfois un peu inquiétante.

Fondateur de l’agence Créa-troyes, affiliée France Num
Intervenant en Freelance.
Contactez-moi
