telnetd

DARPA TELNET protocol service 

Service


SYNOPSIS

telnetd


DESCRIPTION

The telnetd command is a 10/2016/2019/11/2022/2025 service that supports the DARPA standard TELNET virtual terminal protocol. The telnetd service is normally started by 10/2016/2019/11/2022/2025 service control manager when the system boots and is normally configured through a control panel applet.

telnetd operates by allocating a pseudo-terminal device for a client, then creating a login process which has the slave side of the pseudo-terminal as stdin, and stderr. telnetd manipulates the master side of the pseudo-terminal, implementing the TELNET protocol and passing characters between the remote client and the login process.

When a TELNET session is started up, telnetd sends TELNET options to the client side indicating a willingness to do the following TELNET options, which are described in more detail below:

DO AUTHENTICATION
WILL ENCRYPT
DO TERMINAL TYPE
DO TSPEED
DO XDISPLOC
DO NEW-ENVIRON
DO ENVIRON
WILL SUPPRESS GO AHEAD
DO ECHO
DO LINEMODE
DO NAWS
WILL STATUS
DO LFLOW
DO TIMING-MARK

The pseudo-terminal allocated to the client is configured to operate in "cooked" mode, and with XTABS and CRMOD enabled.

telnetd has support for enabling locally the following TELNET options:

WILL ECHO 

When the LINEMODE option is enabled, a WILL ECHO or WONT ECHO is sent to the client to indicate the current state of terminal echoing. When terminal echo is not desired, a WILL ECHO is sent to indicate that telnetd will take care of echoing any data that needs to be echoed to the terminal, and then nothing is echoed. When terminal echo is desired, a WONT ECHO is sent to indicate that telnetd will not be doing any terminal echoing, so the client should do any terminal echoing that is needed.

WILL BINARY 

indicate that the client is willing to send a 8 bits of data, rather than the normal 7 bits of the Network Virtual Terminal.

WILL SGA 

indicates that it will not be sending IAC GA, go ahead, commands.

WILL STATUS 

indicates a willingness to send the client, upon request, of the current status of all TELNET options.

WILL TIMING-MARK 

Whenever a DO TIMING-MARK command is received, it is always responded to with a WILL TIMING-MARK.

WILL LOGOUT 

When a DO LOGOUT is received, a WILL LOGOUT is sent in response, and the TELNET session is shut down.

WILL ENCRYPT 

is only sent if telnetd is compiled with support for data encryption, and indicates a willingness to decrypt the data stream.

telnetd has support for enabling remotely the following TELNET options:

DO BINARY 

is sent to indicate that telnetd is willing to receive an 8 bit data stream.

DO LFLOW 

requests that the client handle flow control characters remotely.

DO ECHO 

is not really supported, but is sent to identify a 4.2BSD telnet client, which improperly responds with WILL ECHO. If a WILL ECHO is received, a DONT ECHO is sent in response.

DO TERMINAL-TYPE 

indicates a desire to be able to request the name of the type of terminal that is attached to the client side of the connection.

DO SGA 

Indicate that it does not need to receive IAC GA, the go ahead command.

DO NAWS 

requests that the client inform the server when the window (display) size changes.

DO TERMINAL-SPEED 

indicates a desire to be able to request information about the speed of the serial line to which the client is attached.

DO XDISPLOC 

indicates a desire to be able to request the name of the X Window System display that is associated with the telnet client.

DO NEW-ENVIRON 

indicates a desire to be able to request environment variable information, as described in RFC 1572.

DO ENVIRON 

indicates a desire to be able to request environment variable information, as described in RFC 1408.

DO LINEMODE 

is sent only if telnetd is compiled with support for linemode, and requests that the client do line by line processing.

DO TIMING-MARK 

is only sent if telnetd is compiled with support for both linemode and kludge linemode, and the client responded with WONT LINEMODE. If the client responds with WILL TM, the it is assumed that the client supports kludge linemode. Note that the -k option can be used to disable this.

DO AUTHENTICATION 

is only sent if telnetd is compiled with support for authentication, and indicates a willingness to receive authentication information for automatic login.

DO ENCRYPT 

is only sent if telnetd is compiled with support for data encryption, and indicates a willingness to decrypt the data stream.


FILES

None.

PORTABILITY

Windows 10. Windows Server 2016. Windows Server 2019. Windows 11. Windows Server 2022. Windows Server 2025.

The following Internet RFCs are supported:

RFC-854 

TELNET PROTOCOL SPECIFICATION

RFC-855 

TELNET OPTION SPECIFICATIONS

RFC-856 

TELNET BINARY TRANSMISSION

RFC-857 

TELNET ECHO OPTION

RFC-858 

TELNET SUPPRESS GO AHEAD OPTION

RFC-859 

TELNET STATUS OPTION

RFC-860 

TELNET TIMING MARK OPTION

RFC-861 

TELNET EXTENDED OPTIONS - LIST OPTION

RFC-885 

TELNET END OF RECORD OPTION

RFC-1073 

Telnet Window Size Option

RFC-1079 

Telnet Terminal Speed Option

RFC-1091 

Telnet Terminal-Type Option

RFC-1096 

Telnet X Display Location Option

RFC-1123 

Requirements for Internet Hosts -- Application and Support

RFC-1184 

Telnet Linemode Option

RFC-1372 

Telnet Remote Flow Control Option

RFC-1416 

Telnet Authentication Option

RFC-1411 

Telnet Authentication: Kerberos Version 4

RFC-1412 

Telnet Authentication: SPX

RFC-1571 

Telnet Environment Option Interoperability Issues

RFC-1572 

Telnet Environment Option


NOTES

Normally, the PTC MKS Toolkit version of telnetd comes with a default license that allows only one person connect to telnetd at a time. Licenses for multiple users are available from MKS.

When connecting to telnetd, you may find that neither the backspace or delete key work correctly to erase characters. You can correct this by using either:

stty erase ^H

or

stty erase ^?

to set the erase character to either backspace or delete, respectively.


AVAILABILITY

PTC MKS Toolkit for System Administrators
PTC MKS Toolkit for Developers
PTC MKS Toolkit for Interoperability
PTC MKS Toolkit for Professional Developers
PTC MKS Toolkit for Professional Developers 64-Bit Edition
PTC MKS Toolkit for Enterprise Developers
PTC MKS Toolkit for Enterprise Developers 64-Bit Edition


BUGS

Some TELNET commands are only partially implemented.

Because of bugs in the original 4.2 BSD telnet, telnetd performs some dubious protocol exchanges to try to discover if the remote client is, in fact, a 4.2 BSD telnet.

Binary mode has no common interpretation except between similar operating systems.

The terminal type name received from the remote client is converted to lower case.

telnetd never sends TELNET IAC GA


HISTORY

IPv6 support was added by WIDE/KAME project.


SEE ALSO

Commands:
stty

MKS Toolkit Connectivity Solutions Guide


PTC MKS Toolkit 10.5 Documentation Build 40.