Commande telnet Linux : guide d'utilisation
DOG&DEV · 26/01/2025
Commande telnet Linux : guide d'utilisation
Telnet est un protocole et une commande permettant de se connecter à distance à des serveurs. Bien qu'obsolète pour les connexions sécurisées (remplacé par SSH), telnet reste utile pour tester des ports et dépanner des services réseau. Ce guide explique son utilisation.
Prérequis
- Linux (Debian, Ubuntu, CentOS, etc.)
- Accès root ou sudo pour l'installation
- Connaissances de base en ligne de commande
Installation
Debian/Ubuntu
sudo apt update
sudo apt install telnet
CentOS/RHEL
sudo yum install telnet
# ou sur versions récentes
sudo dnf install telnet
Utilisation de base
Connexion à un serveur
Syntaxe :
telnet [hostname] [port]
Exemple :
telnet example.com 80
Mode interactif
Une fois connecté, vous pouvez :
- Taper des commandes selon le protocole (HTTP, SMTP, etc.)
- Quitter :
Ctrl+]puis taperquit
Tests de ports
Tester si un port est ouvert
Syntaxe :
telnet [hostname] [port]
Exemples :
# Test port HTTP (80)
telnet example.com 80
# Test port HTTPS (443)
telnet example.com 443
# Test port SSH (22)
telnet example.com 22
# Test port MySQL (3306)
telnet localhost 3306
Résultat :
- "Connected" : le port est ouvert et accessible
- "Connection refused" : le port est fermé ou le service n'écoute pas
- "Connection timed out" : le port est filtré par un firewall
Test rapide (timeout)
timeout 5 telnet example.com 80
Tests de services spécifiques
Test HTTP
telnet example.com 80
Une fois connecté :
GET / HTTP/1.1
Host: example.com
Appuyez deux fois sur Entrée pour envoyer la requête.
Test SMTP
telnet smtp.example.com 25
Commandes SMTP de base :
HELO example.com
MAIL FROM: test@example.com
RCPT TO: recipient@example.com
DATA
Subject: Test
Test message
.
QUIT
Test POP3
telnet pop.example.com 110
Commandes :
USER username
PASS password
LIST
RETR 1
QUIT
Dépannage réseau
Vérifier la connectivité
Test de port :
telnet 192.168.1.1 80
Diagnostic :
- Connection refused : service non démarré ou port incorrect
- Connection timed out : firewall bloque ou route réseau incorrecte
- Connected : port ouvert et service accessible
Tester depuis un serveur distant
telnet remote-server.com 3306
Utile pour vérifier si un firewall autorise les connexions depuis votre IP.
Alternatives modernes
SSH (remplacement sécurisé)
Telnet n'est PAS sécurisé (données en clair). Utilisez SSH pour les connexions à distance :
ssh user@example.com
Pour SSH : ssh-linux, use-ssh-linux.
nc (netcat)
netcat est plus flexible que telnet pour les tests de ports :
# Test de port
nc -zv example.com 80
# Connexion interactive
nc example.com 80
Avantages :
- Plus léger que telnet
- Scriptable facilement
- Pas d'installation nécessaire sur beaucoup de systèmes
curl
Pour tester HTTP/HTTPS :
curl -I http://example.com
curl -v https://example.com
Sécurité
⚠️ Telnet n'est PAS sécurisé
Problèmes :
- Données en clair : mots de passe, commandes visibles
- Pas de chiffrement : vulnérable aux attaques man-in-the-middle
- Authentification faible : pas de protection
Recommandations
- Ne jamais utiliser telnet pour des connexions de production
- Utiliser SSH pour l'accès distant
- Utiliser telnet uniquement pour des tests de ports locaux
- Désactiver telnet sur les serveurs de production
Dépannage
| Symptôme | Cause possible | Correctif |
|---|---|---|
| "telnet: command not found" | Telnet non installé | Installer telnet (apt install telnet) |
| "Connection refused" | Service non démarré, port incorrect | Vérifier le service ; vérifier le port |
| "Connection timed out" | Firewall bloque, route incorrecte | Vérifier les règles firewall ; tester la route |
| "Name or service not known" | DNS incorrect, hostname invalide | Vérifier le DNS ; utiliser l'IP directement |
Exemples pratiques
Vérifier si un serveur web répond
telnet localhost 80
# Taper: GET / HTTP/1.1
# Puis: Host: localhost
# Puis: (deux fois Entrée)
Tester la connectivité MySQL
telnet localhost 3306
Si connecté, MySQL écoute sur ce port.
Vérifier un service personnalisé
telnet 192.168.1.100 8080
Bonnes pratiques
- Utiliser telnet uniquement pour des tests de ports
- Préférer SSH pour les connexions à distance
- Utiliser netcat pour des tests automatisés
- Ne pas utiliser telnet avec des données sensibles
- Désactiver telnet sur les serveurs de production
Ressources
- ssh-linux - Connexion sécurisée SSH
- use-ssh-linux - Utilisation SSH avancée
Cet article s'inscrit dans notre série de guides Linux et dépannage réseau. Pour un serveur sur-mesure, contact.