Tester Telnet sur un port : syntaxe, commandes et interprétation des résultats
La commande telnet hôte port teste un port TCP et révèle s’il est ouvert, fermé ou filtré.
- Syntaxe identique sur Windows, Linux et macOS : hôte puis port.
- Plage testable : de 1 à 65535, port 23 par défaut Telnet.
- Connected to signifie port ouvert, un service écoute.
- Connection refused : hôte joignable, port fermé, service absent.
- Connection timed out : pare-feu bloque, port filtré.
- Quitter la session ouverte avec Ctrl + ].
Tester un port avec Telnet : syntaxe et interprétation des résultats
Syntaxe universelle et premiers tests
- Commande de base :
telnet hôte portpour ouvrir une connexion ciblée. - Exemple port 80 :
telnet example.com 80teste un serveur web. - Identique Windows, Linux, macOS : même ordre hôte puis port.
La commande telnet hôte port fonctionne de manière strictement identique sur Windows, Linux et macOS. Vous indiquez d’abord le nom de domaine ou l’adresse IP, puis le numéro de port TCP à tester.
Vous pouvez tester n’importe quel port dans la plage des 1 à 65535 numéros de port TCP. Le port 23 reste le port par défaut historique du protocole Telnet, standardisé par l’IANA, mais vous pouvez viser un port totalement différent pour un diagnostic.
Interpréter les trois réponses possibles
Après une commande telnet hôte port, le terminal affiche l’un des trois messages suivants. Chacun possède une signification précise sur l’état du port ciblé.
| Message affiché | Signification | État du port |
|---|---|---|
| Connected to… | Connexion TCP établie | Ouvert |
| Connection refused | Hôte joignable, service absent | Fermé |
| Connection timed out | Pare-feu bloque les paquets | Filtré |
Le message Connected to… confirme que le port est ouvert et qu’un service écoute. Le retour Connection refused signifie que l’hôte répond mais qu’aucun service n’occupe ce port : il est fermé.
Enfin, Connection timed out indique qu’un pare-feu bloque silencieusement les paquets, sans jamais renvoyer de refus. Pour quitter une session ouverte, appuyez sur Ctrl + ] afin d’accéder au mode commande Telnet.
Qu’est-ce que Telnet et comment ça fonctionne

Telnet signifie Teletype Network Protocol. Ce protocole de communication a été créé en 1969 pour les besoins de l’ARPANET, le réseau ancêtre d’Internet. Son objectif initial : permettre à un opérateur de piloter une machine distante depuis un terminal, comme s’il était physiquement devant elle.
Techniquement, Telnet s’appuie sur le protocole TCP et ouvre une connexion terminal à terminal. Il fonctionne selon trois modes : le mode par défaut (négociation caractère par caractère), le mode ligne et le mode binaire. Son port par défaut, le 23, a été standardisé par l’IANA.
Sa limite principale reste la sécurité : les données, mots de passe compris, circulent en clair sur le réseau. N’importe quel observateur positionné sur le chemin peut les intercepter. C’est précisément ce point faible qui a poussé les administrateurs à migrer vers SSH pour l’administration en production, et à réserver Telnet aux tests de connectivité et au diagnostic.
Activer et installer Telnet selon votre système
Le client Telnet n’est pas disponible immédiatement sur tous les systèmes. Sur Windows 10 et 11, il est désactivé par défaut et doit être installé manuellement, tandis que sur Linux et macOS, la procédure dépend de la distribution et de la version.
Windows 10 et 11 : GUI, PowerShell et DISM
Trois méthodes permettent d’activer le client Telnet sous Windows. Choisissez celle qui correspond à votre profil et à vos droits d’administration sur la machine.
- Panneau fonctionnalités Windows : cochez « Client Telnet » puis validez.
- Commande PowerShell : Enable-WindowsOptionalFeature -Online -FeatureName TelnetClient en administrateur.
- Méthode DISM : dism /online /Enable-Feature /FeatureName:TelnetClient depuis une invite élevée.
Une fois l’activation terminée, ouvrez une invite de commandes et tapez telnet pour vérifier que le client répond. Si la commande est reconnue, l’installation est réussie et vous pouvez enchaîner sur vos tests de ports.
Linux et macOS : paquets et préinstallation
Sous Debian et Ubuntu, installez le paquet avec sudo apt install telnet. Sur les distributions basées sur Red Hat ou Fedora, utilisez dnf install telnet. Le binaire est ensuite disponible immédiatement dans le terminal.
Sur macOS, le client Telnet était préinstallé jusqu’à High Sierra. Sur les versions plus récentes, passez par Homebrew avec la commande brew install telnet pour retrouver l’outil.
Quelle que soit la plateforme, gardez en tête le raccourci Ctrl + ] pour basculer en mode commande pendant une session, et la plage complète de 1 à 65535 pour vos futurs tests de ports TCP.
Alternatives à Telnet : Netcat, Nmap et Test-NetConnection
| Outil | Système cible | Forces pour tester un port |
|---|---|---|
| Netcat (nc) | Linux, macOS, Windows | TCP et UDP, scan rapide |
| Nmap | Multiplateforme | Audit complet des services |
| Test-NetConnection | Windows PowerShell | Diagnostic intégré sans installation |
Telnet reste pratique pour un test ponctuel, mais d’autres outils offrent plus de souplesse. Netcat gère aussi bien le TCP que l’UDP, là où Telnet se limite au TCP. Son option -z lance un scan silencieux, -v affiche les détails et -w fixe un délai d’attente. La commande nc -zv hôte port donne ainsi une réponse immédiate sur l’état d’un port.
Nmap va beaucoup plus loin : il identifie les services, leurs versions et l’état de chaque port. C’est l’outil de référence pour un audit de ports professionnel, là où Telnet ne fait qu’un test ad hoc.
Test-NetConnection sur Windows
Sur Windows, inutile d’installer quoi que ce soit avec PowerShell. La commande Test-NetConnection hôte -Port numéro teste un port TCP précis et renvoie un résultat structuré. Elle affiche notamment TcpTestSucceeded sur True si le port répond.
Le choix dépend donc du besoin. Pour un diagnostic rapide, Test-NetConnection ou Netcat suffisent. Pour une analyse approfondie d’un parc de machines, Nmap reste le plus adapté. Telnet conserve sa place pour un test manuel immédiat, sans dépendance externe.
Telnet contre SSH : différences et sécurité
Telnet transmet l’intégralité de la session, y compris le mot de passe, en clair sur le réseau. N’importe quel intermédiaire positionné sur le chemin peut donc intercepter les identifiants. SSH (Secure Shell) chiffre toute la communication et s’appuie sur des clés publiques et privées, ce qui rend l’écoute passive inexploitable.
Pour cette raison, SSH a remplacé Telnet dans l’administration de production. Telnet conserve une seule raison d’être légitime : le diagnostic rapide d’un port, sans authentification ni échange sensible. Dès qu’une session implique un compte ou une commande, il faut basculer sur SSH.
En pratique, réservez Telnet aux tests internes sur un réseau maîtrisé, jamais à la gestion de serveurs exposés. La bonne habitude tient en une phrase : Telnet pour vérifier qu’un port répond, SSH pour travailler.
Exemples pratiques par service : SMTP, HTTP et MySQL
Tester un serveur web sur les ports 80 et 443
Pour vérifier qu’un serveur web répond, lancez telnet hôte 80 (HTTP) ou telnet hôte 443 (HTTPS). Un message « Connected to… » confirme que le service écoute et que le port n’est pas filtré par un pare-feu. Ces tests s’appliquent aussi bien à Apache qu’à Nginx.
Une fois connecté sur le port 80, vous pouvez envoyer une requête manuelle en tapant GET / HTTP/1.1, puis Host: exemple.com, et valider par deux retours à la ligne. La réponse HTTP s’affiche directement dans le terminal.
Attention, le port 443 exige une couche TLS que Telnet ne gère pas nativement. Remplacez-le par openssl s_client -connect hôte:443 pour établir une session chiffrée et lire la bannière du serveur.
Vérifier SMTP et MySQL manuellement
Les ports de messagerie et de base de données se diagnostiquent avec la même syntaxe telnet hôte port. Voici les cas les plus courants :
- Port 25 SMTP : affiche le code 220 suivi du nom du serveur de messagerie.
- Port 3306 MySQL : renvoie une chaîne binaire contenant la version du moteur.
- Bannière serveur affichée : confirme que le service répond sans authentification préalable.
Si aucune bannière n’apparaît, le service est peut-être arrêté ou un pare-feu bloque la connexion. Le message « Connection refused » indique un port fermé, tandis qu’un timeout signale un filtrage réseau. Ces signaux vous orientent immédiatement vers la cause probable.
Commandes Telnet en session interactive
Une fois connecté, la session Telnet reste ouverte et attend vos saisies. Pour reprendre la main sans fermer la connexion, appuyez sur Ctrl + ] : vous basculez alors en mode commande Telnet. Un simple retour à la ligne vous ramène dans la session active.
Depuis cette invite, la commande close ferme la connexion en cours, quit met fin au programme et status affiche l’état de la liaison. La commande display liste les paramètres courants, tandis que open hôte port lance une nouvelle connexion sans relancer l’outil.
Sur Linux, Telnet accepte aussi un timeout et un enregistrement des résultats dans un fichier, pratique pour tester plusieurs ports à la suite. Sous Windows, les commandes disponibles restent plus limitées, mais Ctrl + ] et quit suffisent à garder le contrôle de vos diagnostics.
