Commande Telnet : activer et utiliser Telnet (Windows 11)

Cybersecurity Basics
13 min de lecture
Commande Telnet : activer et utiliser Telnet (Windows 11)
Sur cette page
  1. Qu'est-ce que Telnet et à quoi sert-il encore ?
  2. Comment activer Telnet sur Windows 11 et Windows 10
    1. Option 1 : une seule commande (le plus rapide)
    2. Option 2 : la fenêtre Fonctionnalités de Windows
    3. Vérifier que ça marche
  3. Installer Telnet sur Linux et macOS
  4. Comment utiliser la commande telnet
    1. À quoi ressemble une connexion réussie
    2. À quoi ressemble un échec
    3. Interpréter le résultat
    4. Comment quitter telnet
  5. Les commandes telnet dans une session
  6. Exemples telnet : tester des ports et parler aux services
    1. Tester si un port est ouvert
    2. Envoyer une requête HTTP à la main
    3. Parler à un serveur de messagerie (SMTP)
    4. Vérifications rapides pour d'autres services
  7. Alternatives à telnet quand vous ne pouvez pas l'installer
    1. Windows : Test-NetConnection
    2. macOS et Linux : Netcat
    3. Partout où curl est installé
  8. Telnet vs SSH : ne vous connectez jamais en Telnet
  9. Considérations légales et éthiques
  10. Questions fréquentes
  11. Et maintenant ?

Vous avez ouvert une règle de pare-feu, redémarré le service, et l'application n'arrive toujours pas à joindre la base de données. Le port est-il vraiment ouvert ? Une commande vous répond en deux secondes : telnet hôte port. Ce guide vous montre comment utiliser telnet, de l'activation du client Telnet sous Windows 11 à la lecture de ce que le serveur vous renvoie quand vous lui parlez à la main.

Si vous préférez essayer sur une vraie cible plutôt que lire, notre Learning Lab 102 gratuit vous fait trouver un service Telnet avec Nmap puis vous y connecter depuis un terminal dans le navigateur, sans rien installer.

Réponse rapide :

  1. Windows : le client Telnet est désactivé par défaut. Activez-le une fois depuis une invite de commandes administrateur avec dism /online /Enable-Feature /FeatureName:TelnetClient, puis ouvrez une nouvelle fenêtre.
  2. Lancez-le : telnet <hôte> <port>, par exemple telnet 192.0.2.10 443. Un écran noir vide ou « Connected to » : le port est ouvert. « Échec lors de la connexion » ou « Connection refused » : il est fermé. Une longue attente : un pare-feu jette probablement le trafic.
  3. Pour sortir : Ctrl + ], tapez quit, puis Entrée.

Qu'est-ce que Telnet et à quoi sert-il encore ?

Telnet est un protocole réseau et un client en ligne de commande qui ouvre une simple connexion TCP vers n'importe quel hôte et port, puis transmet tel quel tout ce que vous tapez.

Il date de 1969 et a été normalisé dans la RFC 854 en 1983 pour se connecter à des machines distantes sur le port 23. SSH l'a remplacé depuis longtemps pour cet usage, car telnet envoie tout en clair, mots de passe compris.

Ce qui le garde en vie, c'est justement cette simplicité. Pointez-le vers n'importe quel port TCP et il vous dit immédiatement si quelque chose écoute. Pointez-le vers un protocole texte comme HTTP, SMTP ou Redis et vous pouvez taper le protocole vous-même et lire les réponses brutes. Si les numéros de port restent flous pour vous, notre guide sur les ports réseau reprend les bases.

Usages courants aujourd'hui :

  • Vérifier qu'un port est ouvert et joignable à travers le pare-feu
  • Déboguer l'envoi d'e-mails en parlant SMTP à la main
  • Envoyer une requête HTTP brute pour voir exactement ce que renvoie le serveur
  • Lire les bannières de service (SSH, SMTP, FTP) lors d'un audit de sécurité autorisé
  • Administrer de vieux switchs, routeurs et équipements embarqués qui ne parlent que Telnet
💻
Pratiquez maintenant : Learning Lab 102 : Nmap et Telnet - scannez un équipement réseau vieillissant, repérez le service Telnet sur le port 23, connectez-vous avec son compte d'usine et passez root. Gratuit, et tout se passe dans votre navigateur.

Comment activer Telnet sur Windows 11 et Windows 10

Depuis Windows Vista, le client Telnet est livré désactivé. Tant que vous ne l'activez pas, taper telnet vous renvoie « 'telnet' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes. » L'activer prend une commande ou quelques clics, et il faut dans les deux cas des droits administrateur.

Option 1 : une seule commande (le plus rapide)

Faites un clic droit sur Invite de commandes ou Terminal, choisissez Exécuter en tant qu'administrateur, puis lancez :

dism /online /Enable-Feature /FeatureName:TelnetClient

Vous préférez PowerShell ? Cette commande fait la même chose, elle aussi depuis une fenêtre administrateur :

Enable-WindowsOptionalFeature -Online -FeatureName TelnetClient

Les deux se terminent en quelques secondes, sans redémarrage. Sur Windows Server, Install-WindowsFeature Telnet-Client fonctionne aussi.

Option 2 : la fenêtre Fonctionnalités de Windows

  1. Appuyez sur Win + R, tapez optionalfeatures, puis Entrée
  2. Descendez jusqu'à Client Telnet et cochez la case
  3. Cliquez sur OK et attendez « Windows a terminé les modifications demandées »

Sous Windows 11, la même fenêtre est accessible depuis les Paramètres : Système > Fonctionnalités facultatives > Plus de fonctionnalités Windows (sur certaines versions, c'est sous Applications > Fonctionnalités facultatives). Le client Telnet n'apparaît pas dans la recherche « Afficher les fonctionnalités », ce qui en piège beaucoup.

Vérifier que ça marche

Ouvrez une nouvelle invite de commandes (les fenêtres ouvertes avant l'installation ne voient pas la commande) et tapez telnet :

Bienvenue dans le client Telnet Microsoft

Le caractère d'échappement est 'CTRL+]'

Microsoft Telnet>

Tapez quit pour sortir. Vous êtes prêt à tester des ports.

Installer Telnet sur Linux et macOS

La plupart des distributions Linux et tous les Mac récents sont livrés sans client telnet. Un paquet suffit :

Système Commande d'installation
Debian, Ubuntu, Kali sudo apt install telnet
Fedora, RHEL, Rocky, AlmaLinux sudo dnf install telnet
Arch Linux sudo pacman -S inetutils
Alpine (conteneurs) apk add inetutils-telnet
macOS brew install telnet (nécessite Homebrew)

Apple a retiré telnet de macOS avec High Sierra (10.13) : « telnet: command not found » sur un Mac est donc normal. Si vous voulez seulement vérifier un port sans rien installer, macOS inclut déjà nc : voir la section des alternatives plus bas.

Pour vérifier l'installation, lancez which telnet. La commande doit afficher un chemin comme /usr/bin/telnet ou /opt/homebrew/bin/telnet.

Comment utiliser la commande telnet

Pour utiliser telnet, lancez telnet hôte port depuis l'invite de commandes, PowerShell ou n'importe quel terminal, par exemple telnet example.com 80. L'hôte peut être un nom ou une adresse IP, et le port vient après, séparé par une espace (pas par deux-points). Sans port, telnet utilise le 23.

À quoi ressemble une connexion réussie

Sous Linux et macOS :

$ telnet 192.0.2.10 80
Trying 192.0.2.10...
Connected to 192.0.2.10.
Escape character is '^]'.

Sous Windows, le succès est facile à mal interpréter : la fenêtre s'efface, il ne reste qu'un écran vide avec un curseur qui clignote, et la barre de titre devient « Telnet 192.0.2.10 ». Aucun message « Connecté ». Cet écran vide est le message de succès.

À quoi ressemble un échec

telnet: Unable to connect to remote host: Connection refused

Sous Windows (ici en anglais ; sur un Windows en français, le message se termine par « Échec lors de la connexion ») :

Connecting To 192.0.2.10...Could not open connection to the host, on port 80: Connect failed

Interpréter le résultat

Ce que vous voyez Ce que ça signifie
Connected / écran vide Un service écoute et votre trafic l'atteint
Connection refused / Échec lors de la connexion (immédiat) L'hôte a répondu, mais rien n'écoute sur ce port (ou un pare-feu rejette activement)
Attente, puis expiration du délai Les paquets sont jetés : pare-feu, groupe de sécurité, ou hôte éteint
Hôte inconnu / name or service not known Le DNS n'a pas pu résoudre le nom : essayez l'adresse IP

Comment quitter telnet

Appuyez sur Ctrl + ] pour obtenir l'invite telnet>, puis tapez quit. Ctrl + C ne ferme pas une session telnet, et presque tout le monde s'y fait prendre la première fois. Si le service distant a sa propre commande de déconnexion (QUIT en SMTP, exit dans un shell), elle fonctionne aussi.

Les commandes telnet dans une session

Après Ctrl + ] (ou en lançant telnet sans argument), vous êtes à l'invite de commandes telnet. Ces commandes fonctionnent avec le client Windows comme avec celui de Linux et macOS :

Commande Effet
open hôte port Se connecter à un hôte (Windows accepte o)
close Fermer la connexion en cours sans quitter telnet
status Indiquer si vous êtes connecté, et à quoi
display Afficher les réglages en cours
set / unset Modifier les options. Sous Windows, set localecho affiche ce que vous tapez
quit Quitter telnet
? Lister toutes les commandes de votre client

Sous Windows, vous pouvez aussi enregistrer toute la session dans un fichier dès le lancement : telnet /f session.txt mail.target.example 25. La liste complète des options se trouve dans la référence telnet de Microsoft.

Exemples telnet : tester des ports et parler aux services

Tester si un port est ouvert

Remplacez par le port du service qui vous intéresse :

Commande Service
telnet hôte 22 SSH
telnet hôte 25 / 587 SMTP / soumission de courrier
telnet hôte 80 / 443 HTTP / HTTPS
telnet hôte 3389 Bureau à distance (RDP)
telnet hôte 3306 / 5432 MySQL / PostgreSQL
telnet hôte 6379 Redis

Envoyer une requête HTTP à la main

Connectez-vous au port 80, tapez la requête et terminez par une ligne vide (Entrée deux fois) :

telnet example.com 80
GET / HTTP/1.1
Host: example.com
Connection: close

Le serveur répond par une ligne de statut comme HTTP/1.1 200 OK, ses en-têtes, puis la page. Sous Windows, activez d'abord l'écho local (Ctrl + ], set localecho, Entrée, Entrée) sinon vous tapez à l'aveugle, et évitez la touche Retour arrière : elle est envoyée au serveur comme un caractère au lieu d'effacer.

Ça ne marche pas sur le port 443. HTTPS commence par une négociation TLS dont telnet est incapable : il vous dira seulement que le port est ouvert. Pour un vrai échange en TLS, utilisez openssl s_client -connect example.com:443.

Parler à un serveur de messagerie (SMTP)

telnet mail.target.example 25
220 mail.target.example ESMTP Postfix
EHLO client.target.example
250-mail.target.example
250-STARTTLS
250 8BITMIME
MAIL FROM:<[email protected]>
250 2.1.0 Ok
RCPT TO:<[email protected]>
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
Subject: test telnet

Bonjour depuis telnet.
.
250 2.0.0 Ok: queued
QUIT
221 2.0.0 Bye

Les codes à trois chiffres vous disent où la livraison casse :

  • 220 : serveur prêt
  • 250 : commande acceptée
  • 354 : allez-y, envoyez le corps du message (terminez par une ligne contenant seulement un point)
  • 530 : authentification requise d'abord
  • 550 / 554 : refusé : boîte inconnue, relais interdit, ou votre IP est sur une liste de blocage

Deux pièges. Beaucoup de fournisseurs d'accès et d'hébergeurs cloud bloquent le port 25 sortant : un délai dépassé peut venir de votre réseau, pas du serveur. Et le port 587 exige STARTTLS avant l'authentification, ce que telnet ne sait pas faire : pour cette partie, utilisez openssl s_client -starttls smtp -connect mail.target.example:587.

Vérifications rapides pour d'autres services

  • Redis (6379) : tapez PING. Un serveur en forme répond +PONG, ou -NOAUTH Authentication required. si un mot de passe est configuré.
  • SSH (22) : le serveur vous accueille avec sa version, par exemple SSH-2.0-OpenSSH_9.6p1 Ubuntu-3ubuntu13.
  • MySQL (3306) : vous recevez une rafale de binaire contenant une version lisible. C'est la poignée de main : le port fonctionne.

En pratique, ces messages d'accueil expliquent pourquoi les pentesters utilisent encore telnet lors d'audits autorisés. Une bannière révèle souvent la version exacte du logiciel, à confronter ensuite aux vulnérabilités connues. L'équipement du Learning Lab 102 annonce son fabricant et son firmware dès la connexion, ce que le scan de versions de Nmap n'arrive pas à obtenir sur cet hôte.

Alternatives à telnet quand vous ne pouvez pas l'installer

Poste verrouillé, pas de droits admin, conteneur minimal ? Ces outils déjà présents répondent à la même question : « le port est-il ouvert ? »

Windows : Test-NetConnection

Test-NetConnection example.com -Port 443

Regardez la dernière ligne : TcpTestSucceeded : True signifie que le port est ouvert. La commande est fournie avec Windows PowerShell et ne demande aucun droit administrateur ; tnc est l'alias court. Voir la documentation Microsoft pour les autres options.

macOS et Linux : Netcat

$ nc -vz example.com 443
Connection to example.com port 443 [tcp/https] succeeded!

-z se contente de tester le port ; retirez-le pour obtenir une session interactive comme avec telnet. Notre guide sur comment utiliser Netcat va beaucoup plus loin.

Partout où curl est installé

curl parle le protocole telnet, et Windows 10 et 11 embarquent curl.exe : curl -v telnet://192.0.2.10:3306 affiche « Connected to » en cas de succès.

Telnet et nc testent un port à la fois. Pour en tester des centaines, il vous faut un scanner de ports : notre aide-mémoire Nmap rassemble les commandes.

Telnet vs SSH : ne vous connectez jamais en Telnet

Telnet n'a aucun chiffrement. Votre identifiant, votre mot de passe, chaque commande et chaque ligne de sortie traversent le réseau en clair. Quiconque peut capturer le trafic sur le chemin (un routeur compromis, un Wi-Fi partagé, un port de switch en miroir) peut lire toute la session dans Wireshark avec « Suivre le flux TCP ».

SSH fait le même travail avec du chiffrement, l'authentification du serveur (vous savez que vous parlez à la bonne machine), le contrôle d'intégrité et la connexion par clé. Pour l'administration à distance, SSH gagne à tous les coups.

Cette faiblesse n'a rien de théorique. En 2016, le botnet Mirai a infecté des centaines de milliers de caméras et de routeurs simplement en se connectant en Telnet avec les mots de passe d'usine. Si vous trouvez sur votre propre réseau un appareil avec le port 23 ouvert, désactivez Telnet ou isolez l'appareil.

La règle : telnet pour tester une connexion, jamais pour vous connecter avec des identifiants qui comptent.

Considérations légales et éthiques

Rappel essentiel : ne vous connectez qu'aux systèmes qui vous appartiennent ou pour lesquels vous avez une autorisation écrite explicite. Même un simple test de port peut déclencher une détection d'intrusion et enfreindre une charte d'utilisation, et les tentatives d'accès non autorisées sont illégales dans la plupart des pays (en France, article 323-1 du Code pénal).

  • Testez vos propres serveurs et les services que vous administrez
  • En mission, restez dans le périmètre écrit de l'engagement
  • En bug bounty, respectez les règles du programme sur le scan et les tests de services
  • N'essayez jamais d'identifiants sur un appareil que vous ne contrôlez pas, même ceux « par défaut »

Les labs d'entraînement existent pour pratiquer tout cela légalement : chaque cible des labs HackerDNA est à vous pour vous y connecter, la scanner et la compromettre.

Questions fréquentes

Comment activer telnet sur Windows 11 ?

Ouvrez l'invite de commandes en administrateur et lancez dism /online /Enable-Feature /FeatureName:TelnetClient. Ou passez par Paramètres > Système > Fonctionnalités facultatives > Plus de fonctionnalités Windows, cochez Client Telnet et cliquez sur OK. Ouvrez ensuite une nouvelle invite de commandes et utilisez telnet hôte port.

Pourquoi « 'telnet' n'est pas reconnu en tant que commande interne ou externe » ?

Le client Telnet n'est pas activé, ou vous utilisez une fenêtre ouverte avant son activation. Activez-le (voir ci-dessus) et ouvrez une nouvelle invite de commandes.

Comment faire un telnet sur un port précis dans cmd ?

Mettez le port après l'hôte, séparé par une espace : telnet 192.0.2.10 8080. N'utilisez pas les deux-points (hôte:8080), que telnet prend pour une partie du nom d'hôte.

Comment tester si un port est ouvert avec telnet ?

Lancez telnet hôte port. Un écran vide (Windows) ou « Connected to » (Linux/macOS) : ouvert. « Échec lors de la connexion » ou « Connection refused » : fermé. Une longue attente suivie d'une expiration : un pare-feu jette le trafic.

Comment quitter telnet ?

Appuyez sur Ctrl + ], tapez quit puis Entrée. Ctrl + C ne fonctionne pas.

Quel est le port telnet par défaut ?

Le port 23. Si vous tapez telnet hôte sans port, le client se connecte au 23.

Peut-on tester HTTPS avec telnet ?

Seulement pour vérifier que le port 443 est ouvert. Telnet ne sait pas négocier TLS : pour un vrai échange HTTPS, utilisez openssl s_client -connect hôte:443 ou curl -v https://hôte.

Comment installer telnet sur Mac ?

Installez Homebrew, puis lancez brew install telnet. Pour un test de port rapide sans rien installer, utilisez la commande intégrée nc -vz hôte port.

Telnet est-il encore utilisé en 2026 ?

Oui, surtout comme outil de diagnostic pour tester des ports et des protocoles texte, et sur du vieux matériel réseau. Pour se connecter aux systèmes, SSH l'a remplacé, car telnet envoie les mots de passe en clair.

Et maintenant ?

Vous avez tout le processus telnet en main : activer le client, lancer telnet hôte port, lire le résultat et sortir avec Ctrl + ] puis quit. Gardez-le pour tester, et passez à SSH dès qu'un mot de passe entre en jeu.

Le meilleur moyen de retenir tout ça, c'est de l'utiliser sur une vraie cible. Dans le Learning Lab 102 gratuit, vous scannez un équipement, vous vous connectez à son service Telnet et vous passez root, le tout depuis votre navigateur. Pour voir comment les pentesters énumèrent les services, le cours Tests d'intrusion réseau prend le relais, et Hacking 101 couvre les fondamentaux si vous débutez.

Commencez avec l'offre gratuite de HackerDNA : sans carte bancaire.

HackerDNA Team

Équipe HackerDNA

Écrit par l'équipe HackerDNA - des professionnels de la cybersécurité qui créent des labs de hacking pratiques et du contenu éducatif pour vous aider à développer des compétences réelles en sécurité.

Rencontrer l'équipe

Prêt à mettre cela en pratique?

Arrêtez de lire, commencez à hacker. De vraies machines, dans votre navigateur, gratuitement.

Commencer à Hacker Gratuitement
30 000+ Hackers Vrais labs Gratuit
Commencer Gratuitement ou résolvez le hack du jour, sans compte