TELNETD(8) | MidnightBSD System Manager's Manual | TELNETD(8) |
telnetd
— DARPA
TELNET protocol server
/usr/libexec/telnetd |
[-46BUhlkn ] [-D
debugmode] [-S
tos] [-X
authtype] [-a
authmode] [-edebug ]
[-p loginprog]
[-u len]
[-debug [port]] |
telnetd |
is deprecated and may not be available in and later. |
The telnetd
command is a server which
supports the DARPA standard TELNET virtual terminal protocol.
Telnetd
is normally invoked by the internet server
(see inetd(8)) for
requests to connect to the TELNET port as indicated by the
/etc/services file (see
services(5)). The
-debug
option may be used to start up
telnetd
manually, instead of through
inetd(8). If started up
this way, port may be specified to run
telnetd
on an alternate TCP port number.
The telnetd
command accepts the following
options:
-4
telnetd
to use IPv4 addresses only.-6
telnetd
to use IPv6 addresses only.-a
authmodetelnetd
has been compiled with support for the
AUTHENTICATION
option. There are several valid
values for authmode:
debug
user
valid
other
-a
valid
.none
off
-B
telnetd
causes login to start a
bftp(1) session rather
than the user's normal shell. In bftp daemon mode normal logins are not
supported, and it must be used on a port other than the normal TELNET
port.-D
debugmodetelnetd
to print out debugging information to the
connection, allowing the user to see what telnetd
is doing. There are several possible values for
debugmode:
options
report
options
information, plus some
additional information about what processing is going on.netdata
telnetd
.ptydata
exercise
-debug
telnetd
(see SO_DEBUG
in
socket(2)).-edebug
telnetd
has been compiled with support for data
encryption, then the -edebug
option may be used to
enable encryption debugging code.-h
-k
telnetd
has been
compiled with both linemode and kludge linemode support. If the
-k
option is specified, then if the remote client
does not support the LINEMODE
option, then
telnetd
will operate in character at a time mode.
It will still support kludge linemode, but will only go into kludge
linemode if the remote client requests it. (This is done by the client
sending DONT SUPPRESS-GO-AHEAD
and
DONT ECHO
.) The -k
option
is most useful when there are remote clients that do not support kludge
linemode, but pass the heuristic (if they respond with
WILL TIMING-MARK
in response to a
DO TIMING-MARK
) for kludge linemode support.-l
LINEMODE
option is not supported, it will go into
kludge linemode.-n
TCP
keep-alives. Normally
telnetd
enables the TCP keep-alive mechanism to
probe connections that have been idle for some period of time to determine
if the client is still there, so that idle connections from machines that
have crashed or can no longer be reached may be cleaned up.-p
loginprog-S
tos-u
lenutmp
structure that holds the remote host name. If
the resolved host name is longer than len, the
dotted decimal value will be used instead. This allows hosts with very
long host names that overflow this field to still be uniquely identified.
Specifying -u0
indicates that only dotted decimal
addresses should be put into the utmp file.-U
telnetd
to refuse connections
from addresses that cannot be mapped back into a symbolic name via the
gethostbyaddr(3)
routine.-X
authtypetelnetd
has been
built with support for the authentication option. It disables the use of
authtype authentication, and can be used to
temporarily disable a specific authentication type without having to
recompile telnetd
. Available
authtype values include
KERBEROS_V4, KERBEROS_V5,
SPX, MINK, and
SRA. These options are completely independent of the
-a
option.Telnetd
operates by allocating a
pseudo-terminal device (see
pty(4)) for a client, then
creating a login process which has the slave side of the pseudo-terminal as
stdin
, stdout
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 (see
tty(4)).
Telnetd
has support for enabling locally
the following TELNET options:
LINEMODE
option is enabled, a
WILL ECHO
or WONT ECHO
will be 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.IAC GA
, go
ahead, commands.DO TIMING-MARK
command is received, it
is always responded to with a WILL
TIMING-MARK
.DO LOGOUT
is received, a
WILL LOGOUT
is sent in response, and the TELNET
session is shut down.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:
telnetd
is willing to
receive an 8 bit data stream.WILL ECHO
. If a
WILL ECHO
is received, a DONT
ECHO
will be sent in response.IAC GA
,
the go ahead command.telnetd
is compiled with support for
linemode, and requests that the client do line by line processing.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.telnetd
is compiled with support for
authentication, and indicates a willingness to receive authentication
information for automatic login.telnetd
is compiled with support for
data encryption, and indicates a willingness to decrypt the data
stream.By default telnetd
will read the
he,
hn, and
im capabilities from /etc/gettytab
and use that information (if present) to determine what to display before
the login: prompt. You can also use a System V style
/etc/issue file by using the if
capability, which will override im. The information
specified in either im or if will be
displayed to both console and remote logins.
bftp(1), login(1), telnet(1) (if supported), gettytab(5)
RFC-854
RFC-855
RFC-856
RFC-857
RFC-858
RFC-859
RFC-860
RFC-861
RFC-885
RFC-1073
RFC-1079
RFC-1091
RFC-1096
RFC-1123
RFC-1184
RFC-1372
RFC-1416
RFC-1411
RFC-1412
RFC-1571
RFC-1572
IPv6 support was added by WIDE/KAME project.
Some TELNET commands are only partially implemented.
Because of bugs in the original 4.2BSD
telnet(1),
telnetd
performs some dubious protocol exchanges to
try to discover if the remote client is, in fact, a
4.2BSD
telnet(1).
Binary mode has no common interpretation except between similar operating systems (Unix in this case).
The terminal type name received from the remote client is converted to lower case.
Telnetd
never sends TELNET
IAC GA
(go ahead) commands.
September 21, 2022 | midnightbsd-3.1 |