telnetd(1Mtcp)
telnetd --
TELNET protocol server
Synopsis
in.telnetd
[ -Uhn ]
[ -D debug_mode ]
[ -K n ]
[ -N n ]
[ -k n ]
[ -u len ]
[ -debug ]
[ port ]
Description
The telnetd command is a server which supports
the Internet standard TELNET virtual terminal
protocol. telnetd is invoked by the Internet
server (see
inetd(1Mtcp))
when it receives a request
to connect to the TELNET port
(see
services(4tcp)).
The options are as follows:
-U-
Cause telnetd to refuse
connections from addresses that cannot be mapped back into
a symbolic name via the
gethostbyaddr(3N)
routine.
-h-
Normally,
telnetd
displays the system release, hostname, and terminal port prior
to the login prompt.
This option stops telnetd from
displaying this information.
-n-
Disable keepalive messages.
-D debug_mode-
Used for debugging
purposes. This allows telnet to print out
debugging information to the connection, thus enabling the
user to see what telnetd is doing.
debug_mode can be one of the following:
exercise-
Exercise client (not currently implemented).
netdata-
Display the received data stream.
options-
Print information about the negotiation of the
TELNET options.
ptydata-
Display data passed to the pseudo-terminal.
report-
Print the options information, as well as some
additional information about what processing is going on.
-K n-
Specify the interval (in seconds) between keepalive probes if
no response is received.
-N n-
Specify the number of unanswered keepalive probes that will be
sent prior to dropping the connection.
-k n-
Specify the time (in seconds) that a connection must be idle
before the first keepalive probe will be sent.
-u len-
Specify the
size of the field in the utmpx structure that holds
the remote hostname. If the resolved hostname is longer than
len, the dotted decimal value will be used instead.
This allows hosts with long hostnames that overflow this field
to be uniquely identified. Specifying a length of 0 indicates
that only dotted decimal addresses should be put into the
utmpx file.
-debug-
Start up
telnetd manually, instead of through
inetd(1Mtcp).
If started up in this manner, port may be
specified to run telnetd on this alternate
TCP port number.
The telnetd command operates by allocating a
pseudo-terminal device for a client, thereby creating a
login process which has the slave side of the
pseudo-terminal serving as stdin,
stdout, and stderr.
telnetd manipulates the master side of the pseudo-terminal,
implementing the TELNET protocol and parsing 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 remote echo of characters
-
suppress go ahead
-
do remote flow control
-
receive terminal type information
-
receive terminal speed information
-
receive window size information from the remote client
If the remote client is willing, the remote terminal type
will be propagated to the environment of the created login
process. The pseudo-terminal allocated to the client will
be configured to operate in ``cooked'' mode, with
TAB3 and ICRNL enabled
(see
termio(7)).
The telnetd command is willing to do:
echo, binary, suppress go ahead,
and timing mark.
The telnetd command is also willing to have the
remote client do: binary,
terminal type, terminal speed,
window size, toggleflow control,
environment, Xdisplay location, and
suppress go ahead.
Keepalives
Transport-level keepalive messages are enabled unless the
-n option is present.
The use of keepalive messages allows sessions to be timed out
if the client crashes or becomes unreachable.
The default keepalive values corresponding to the -K,
-N and -k options
are controlled by the parameters
tcp_keepidle (7200 seconds),
tcp_keepintvl (75 seconds), and
tcp_nkeep (8).
These can be tuned on a system-wide basis using
inconfig(1Mtcp).
These options exist solely to provide finer control of
keepalives on a per-application basis.
Files
/etc/inetd.conf-
configuration file for inetd
/etc/services-
Internet services list
References
inconfig(1Mtcp),
inetd(1Mtcp),
inetd.conf(4tcp),
services(4tcp),
telnet(1tcp)
RFC 727,
RFC 854,
RFC 856,
RFC 857,
RFC 859,
RFC 860,
RFC 885,
RFC 1073,
RFC 1079,
RFC 1091,
RFC 1096,
RFC 1123,
RFC 1372,
RFC 1572
Notices
Some TELNET commands are only partially
implemented.
Because of bugs in the original 4.2 BSD
version of telnet,
telnetd performs some unreliable 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 (UNIX in this case).
The terminal type name received from the remote client will be
converted into lowercase.
telnetd never sends TELNET
go ahead commands.
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004