Industrial Training




Telnet

Telnet is a network protocol used on the Internet or local area networks to provide a bidirectional interactive text-oriented communication facility using a virtual terminal connection. User data is interspersed in-band with Telnet control information in an 8-bit byte oriented data connection over the Transmission Control Protocol (TCP).

Telnet was developed in 1968 beginning with RFC 15, extended in RFC 854, and standardized as Internet Engineering Task Force (IETF) Internet Standard STD 8, one of the first Internet standards.

Historically, Telnet provided access to a command-line interface (usually, of an operating system) on a remote host. Most network equipment and operating systems with a TCP/IP stack support a Telnet service for remote configuration (including systems based on Windows NT). However, because of serious security issues when using Telnet over an open network such as the Internet, its use for this purpose has waned significantly in favor of SSH.

The term telnet may also refer to the software that implements the client part of the protocol. Telnet client applications are available for virtually all computer platforms. Telnet is also used as a verb. To telnet means to establish a connection with the Telnet protocol, either with command line client or with a programmatic interface. For example, a common directive might be: "To change your password, telnet to the server, log in and run the passwd command." Most often, a user will be telnetting to a Unix-like server system or a network device (such as a router) and obtaining a login prompt to a command line text interface or a character-based full-screen manager.



Layer Protocols
Application DNS, TLS/SSL, TFTP, FTP, HTTP, IMAP, IRC, NNTP, POP3, SIP, SMTP, SNMP, SSH, TELNET, BitTorrent, RTP, rlogin, ENRP, …
Transport TCP, UDP, DCCP, SCTP, IL, RUDP, …
Network IP (IPv4, IPv6), ICMP, IGMP, ARP, RARP, …
Link Ethernet, Wi-Fi, Token ring, PPP, SLIP, FDDI, ATM, Frame Relay, SMDS, …


TELNET is a network protocol used on the Internet or local area network LAN connections. IETF document STD 8 (aka RFC 854 and RFC 855) states:

The purpose of the TELNET Protocol is to provide a fairly general, bi-directional, eight-bit byte oriented communications facility. It is typically used to provide user oriented command line login sessions between hosts on the Internet. The name is derived from the words telephone network, since the program is designed to emulate a single terminal attached to the other computer.

By extension, "telnet" also refers to the program which provides the client part of the protocol. TELNET clients have been available on most Unix systems for many years, however with recent advancements SSH has become more dominant in remote access for Unix-based machines, and are available for virtually all types of computers. On many systems, this "telnet" program may also be used to make interactive raw-TCP sessions and is used to communicate to services such as POP3 servers without specialized client software.

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



It is also a means to connect to the new style Telnet Bulletin Board Systems (that once upon a time were dialup in the 1980's and 1990's) that allow for nostalgia over TCP / IP as well as most supporting all of the well known and other commonly used protocols on the Internet today as a full blown multi-protocol server suite.



Protocol details

TELNET is a client-server protocol, based on TCP, and clients generally connect to port 23 on the host providing the service (though like many protocols in use on the Internet, which port to use is fairly easy to change). Partly because of the design of the protocol and partly because of the flexibility typically provided by TELNET client programs, it is also possible to use a TELNET program to establish an interactive TCP connection to some other service on an Internet host. A classic use of this is telnetting to port 25 (where typically an SMTP server is to be found) to debug a mail server.

The TELNET protocol can be divided into a core and a set of extensions. The core protocol is described by IETF documents RFC 854 and RFC 855 which are also collected together in STD 8, which defines fairly basic operating characteristics of the protocol and a means of defining and implementing extensions. There are many extensions, some of which have been adopted as Internet Standards. IETF STD document numbers from 27 through to 32 define various TELNET extensions (most of which are extremely common). Of the remaining extensions the most useful ones are probably those that are on the IETF standards track as proposed standards; details can be found in STD 1.

Security

There are three main problems with TELNET, making it a bad choice for modern systems from the point of view of computer security:

Commonly used TELNET daemons have several vulnerabilities discovered over the years, and probably several more still exist. 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.

TELNET lacks 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.

In environments where security is important, such as on the public Internet, TELNET should not be used. TELNET sessions are unencrypted. This means that anybody who has access to any router, switch, or gateway located on the network between the two hosts where telnet is being used can intercept the TELNET packets passing by and easily obtain login and password information (and whatever else is typed) with any of several common utilities like tcpdump and Ethereal.

These flaws have seen the usage of the TELNET protocol drop rapidly in favor of a more secure and functional protocol called SSH, released in 1995. SSH provides all functionality present in 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. 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.

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. With the exponential 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, TELNET should generally not ever be used on networks with Internet connectivity.

TELNET clients are still occasionally used to manually "talk" to other services. 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. TELNET can also be used as a rudimentary IRC client if you know the protocol well enough.

TELNET is also heavily used for MUD games played over the Internet, as well as talkers, MUSHes, MUCKs and MOOes.



TELNET clients
Windows
dtelnet is a free TELNET client for Windows.
Whitehorn Secure Terminal free TELNET client for Windows.
Console telnet is a full screen (console) TELNET client for MS Win32 environments.
Simpterm is a Unicode savy TELNET client for MS Win32 environments that for example can be used for Chinese.
Pueblo/UE is a free TELNET client for Windows.
SimpleMU is a shareware TELNET client.

Macintosh
tn3270 is a free TELNET client for Macintosh.

Multiplatform
PuTTY is a free SSH, TELNET, rlogin, and raw TCP client for Windows and Unix.

TELNET servers
telnetd is an embeddable TELNET daemon written in Java. Synchronet (Win32 and Linux BBS Server that also supports http, nntp, pop3, ftp and other protocols)




Hi I am Alfred.