Telnet

 

Telnet (TErminal NETwork ou TELecommunication NETwork, ou encore TELetype NETwork) est un protocole permettant de communiquer avec un serveur distant via TCP/IP. Le principe étant d'envoyer à partir d'un client des commandes sous forme de texte à un serveur.

Commandes qui seront donc très facile de lire si les paquets transmis sont interceptés par une personne tierce...Pour cette raison, le protocole ssh est préférable à telnet, puisqu'il crypte les données envoyées.

Il y a donc une partie telnet "cliente" et une partie telnet "serveur"

  • Le poste client utilise une commande telnet pour se connecter à un serveur telnet.
  • Le serveur doit avoir un démon lancé:le démon ou service se nomme telnetd sur le serveur.

 

Installation du paquet telnet

Sous debian (ou raspbian):

apt-get install telnet

ou uniquement le serveur telnet

apt-get install telnetd

 

Sous Mageia:

urpmi telnetd

 

Pour lancer le serveur:

/etc/init.d/openbsd-inetd restart ou tout simplement rebootez la machine (si c'est possible).

 

Contrôler que le service est lancé

netstat -a | grep telnet

Au moins une ligne doit apparaître (si plusieurs, il s'agira des sessions en cours en plus de celui lié au serveur)

 

Sécurité !

telnet n'étant pas sécurisé, il est donc préférable de limiter les personnes accédant à telnet.

Vous passerez pour cela par les fichiers hosts.allow ou hosts.deny.

L'application se nomme généralement in.telnetd. Vous pourrez valider ce nom en regardant le contenu du fichier /etc/inetd.conf (si démon inetd) ou /etc/xinetd.d/ (si démon xinetd).

 

Il suffit donc d'ajouter

in.telnetd : ip : allow ou deny

 

Accès depuis l'extérieur

Pour rendre accessible le service telnetd depuis l'extérieur, pensez

  • à fixer l'adresse IP de votre serveur
  • à rediriger le port 23 (c'est le port normalement utilisé pour telnet) vers votre serveur déclaré en zone dmz.
  • Pensez aussi à l'eventuel parefeu côté client...

Si la connexion n'est toujours pas possible:

 

Bannir la bannière

Il faut éviter d'être trop bavard avec tous ces hackers qui traînent, et telnet peut le devenir indirectement via le fichier /etc/issue ou /etc/issue.net dont son contenu est affiché à chaque connexion.

Si vous utilisez le démon inetd, ajoutez -h dans /etc/inetd.conf au programme in.telnet

Exemple:

telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd -h

telnet client

C'est bien d'avoir un serveur, mais il est aussi intéressant de se connecter à ce serveur...Il faut donc un client (principe du client/serveur)

C'est le rôle de la commande suivante qui va permettre de lancer un client qui se connectera ensuite au serveur:

telnet

ou telnet ip

ou telnet ip port

Une fois le client telnet lancé, la commande open permet de se connecter à une machine distante (le serveur). Si vous n'avez pas saisi l'adresse ip en paramètre de telnet ou si vous avez fait une erreur, il suffit d'indiquer l'adresse ip, url en paramètre de la commande open.

ctrl-d pour se déconnecter de la machine distante.

quit pour sortir de telnet.

? ou --help pour connaître les quelques instructions supplémentaires.

 

noteA partir de windows 7, telnet client n'est plus installé par défaut. C'est à vous de faire l'installation.