Jump to content

Telnet

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Simen 88 (talk | contribs) at 19:32, 28 March 2007 (Revert to last version by 200.61.172.5). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

TELNET (TELetype NETwork) is a network protocol used on the Internet or local area network (LAN) connections. It was developed in 1969 and standardized as IETF STD 8, one of the first Internet standards. It has limitations that are considered to be security risks.

The term telnet also refers to software which implements the client part of the protocol. TELNET clients have been available on most Unix systems for many years and are available for virtually all platforms. Most network equipment and OSs with a TCP/IP stack support some kind of TELNET service server for their remote configuration (including ones based on Windows NT). However with recent advancements SSH has become more dominant in remote access for Unix-based machines.

"To telnet" is also used as a verb meaning to establish or use a TELNET or other TCP connection, as in, "To change your password, telnet to the server and run the passwd command".

Most often, a user will be telneting to a unix-like server system or a simple network device such as a switch. For example, a user might "telnet in from home to check his mail at school". In doing so, he would be using a telnet client to connect from his computer to one of his servers. Once the connection is established, he would then log in with his account information and execute operating system commands remotely on that computer, such as ls or cd.

On many systems, the client may also be used to make interactive raw-TCP sessions.

Protocol details

TELNET is a client-server protocol, based on a reliable connection-oriented transport. Typically this is TCP port 23, although TELNET predates TCP/IP and was originally run on NCP.

The protocol has many extensions, some of which have been adopted as Internet Standards. IETF standards STD 27 through STD 32 define various extensions, most of which are extremely common. Other extensions are on the IETF standards track as proposed standards.

Security

When TELNET was initially developed in 1969, most users of networked computers were in the computer departments of academic institutions, or at large private and government research facilities. In this environment, security was not nearly as much of a concern as it became after the bandwidth explosion of the 1990s. The rise in the number of people with access to the Internet, and by extension, the number of people attempting to crack into other people's servers made encrypted alternatives much more necessary.

Experts in computer security, such as SANS Institute, and the members of the comp.os.linux.security newsgroup recommend that the use of TELNET for remote logins should be discontinued under all normal circumstances, for the following reasons:

  • TELNET, by default, does not encrypt any data sent over the connection (including passwords), and so it is trivial to eavesdrop on the communications and use the password later for malicious purposes; anybody who has access to a router, switch, or gateway located on the network between the two hosts where TELNET is being used can intercept the packets passing by and easily obtain login and password information (and whatever else is typed) with any of several common utilities like tcpdump and Wireshark.
  • Most implementations of TELNET lack an authentication scheme that makes it possible to ensure that communication is carried out between the two desired hosts, and not intercepted in the middle.
  • Commonly used TELNET daemons have several vulnerabilities discovered over the years.

These security-related shortcomings have seen the usage of the TELNET protocol drop rapidly, especially on the public Internet, in favor of a more secure and functional protocol called SSH, first released in 1995. SSH provides all functionality of telnet, with the addition of strong encryption to prevent sensitive data such as passwords from being intercepted, and public key authentication, to ensure that the remote computer is actually who it claims to be.

As has happened with other early Internet protocols, extensions to the TELNET protocol provide TLS security and SASL authentication that address the above issues. However, most TELNET implementations do not support these extensions; and there has been relatively little interest in implementing these as SSH is adequate for most purposes. The main advantage of TLS-TELNET would be the ability to use certificate-authority signed server certificates to authenticate a server host to a client that does not yet have the server key stored. In SSH, there is a weakness in that the user must trust the first session to a host when it has not yet acquired the server key.

Current status

As of the mid-2000s, while the TELNET protocol itself has been mostly superseded, TELNET clients are still used, usually when diagnosing problems, to manually "talk" to other services without specialized client software. For example, it is sometimes used in debugging network services such as an SMTP or HTTP server, by serving as a simple way to send commands to the server and examine the responses.

On UNIX, though, other software such as nc (netcat) or socat are finding greater favor with some system administrators for testing purposes, as they can be called with arguments to not send any terminal control handshaking data.

TELNET is still very popular in enterprise networks to access host applications, i.e. on IBM Mainframes.

TELNET is also heavily used for MUD games played over the Internet, as well as talkers, MUSH es, MUCKs and MOOes. By using image-to-ASCII algorithms, it can also be used for primitive "video" streaming. Recently, ASCII-WM offered live broadcasts of the 2006 World Cup.

TELNET can also be used as a rudimentary IRC client if one knows the protocol well enough.

TELNET clients

Windows

  • z/Scope Express VT is a really nice telnet/SSH client for Windows.
  • AbsoluteTelnet is a client for all versions of Windows, and includes telnet, SSH1, and SSH2.
  • Hyperterminal Private Edition is another Windows telnet client, free for personal use.
  • TeraTerm is a free telnet/SSH client for Windows that offers more features than the built-in telnet as well as offering a free SSH plug-in.
  • Windows comes with a built in telnet client, accessible from the command prompt. Note that in Windows Vista, as of RC1, the telnet client isn't installed by default, and needs to be installed as an optional Windows component.

Macintosh

  • tn3270 is a free TELNET client for Macintosh designed to work with IBM mainframe systems that use the TN3270 protocol.
  • Terminal is a TELNET capable command line interface application that comes as part of all versions of Macintosh OS X.
  • NiftyTelnet is a small Telnet client for older MacOS versions that also support SSH.
  • dataComet is a full-featured Telnet & SSH application for the Macintosh.

Multiplatform

  • PuTTY is a free SSH, TELNET, rlogin, and raw TCP client for Windows, Linux, and Unix.
  • mTelnet is a free full-screen TELNET client for Windows & OS/2. Easy to use client with Zmodem download capability.
  • Twisted Conch includes a telnet client/server implementation.
  • IVT is a free multisession TELNET client for Windows & DOS. Also supports SSH and Kerberos (not free). Includes useful features like auto-login and scripting.

Free with Source Code

  • dtelnet is a free TELNET client for Windows.
  • Pueblo/UE is a free TELNET client for Windows with support for in-line HTML.
  • Console telnet is a full screen (console) TELNET client for MS Win32 environments.

Non-free Source Code

  • Whitehorn Secure Terminal free TELNET client for Windows.
  • Simpterm is a Unicode savy TELNET client for MS Win32 environments that for example can be used for Chinese.
  • SimpleMU is a shareware TELNET client.
  • CRT and SecureCRT are TELNET clients with scripting capabilities in VBScript, Javascript and Perl.

TELNET servers

Free with Source Code

  • telnetd is an embeddable TELNET daemon written in Java.
  • Poor Woman's Telnet Server is a standalone java TELNET server which bases upon telnetd.
  • Synchronet is a Win32 and Linux BBS Server that also supports http, nntp, pop3, ftp and other protocols.

See also