Gentoo Wiki


This page describes how to install the nowadays effectively obsolete telnetd telnet server.

Warning: You really should use OpenSSH and not telnet as telnet is cleartext, and thus very insecure. Telnet doesn't offer a huge advantage over SSH nowadays


The telnetd daemon

The traditional telnet server daemon is the netkit-telnetd. Portage also contains telnet-bsd, which is purportedly ported from OpenBSD and supports IPv6.

Installing netkit-telnetd

Install the xinetd internet superserver daemon

Most current Gentoo machines already have xinetd support; however, to be sure, emerge it as follows:

emerge sys-apps/xinetd

Configure the internet superserver daemon

Edit /etc/xinetd.conf configuration file to permit outside logins:

File: /etc/xinetd.conf
# This is the master xinetd configuration file. Settings in the
# default section will be inherited by all service configurations
# unless explicitly overridden in the service configuration. See
# xinetd.conf in the man pages for a more detailed explanation of
# these attributes.

# The next two items are intended to be a quick access place to
# temporarily enable or disable services.
#       enabled         =
#       disabled        =

# Define general logging characteristics.
        log_type        = SYSLOG daemon info
        log_on_failure  = HOST
        log_on_success  = PID HOST DURATION EXIT

# Define access restriction defaults
#       no_access       =
#       only_from       =
#       max_load        = 0
        cps             = 50 10
        instances       = 50
        per_source      = 10

# Address and networking defaults
#       bind            =
#       mdns            = yes
        v6only          = no

# setup environmental attributes
#       passenv         =
        groups          = yes
        umask           = 002

# Generally, banners are not used. This sets up their global defaults
#       banner          =
#       banner_fail     =
#       banner_success  =

includedir /etc/xinetd.d

Install the telnetd server daemon

Simply emerge the netkit-telnetd package:

emerge netkit-telnetd


emerge telnet-bsd

Only one of these can be installed at time. One will block emerging the other. If for some reason, a different version is already installed, it can be uninstalled, like so:

emerge -C netkit-telnetd

Configure the telnet daemon

Edit /etc/xinetd.d/telnetd configuration file to enable the telnet service:

File: /etc/xinetd.d/telnetd
service telnet
        flags           = REUSE
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/sbin/in.telnetd
        log_on_failure += USERID
        disable         = no

Restart the internet superserver daemon

Now, restart the xinetd server, and telnet will be restarted with it:

/etc/init.d/xinetd restart

Include telnet as startup service

Lastly, if there are no errors, add the xinetd daemon (which includes telnetd) to the start-up procedure:

rc-update add xinetd default

Error Messages

After installation, an error occurs: Error: login: Permission denied

This can be caused by running your telnet service as some other user beside root. Edit /etc/xinetd.d/telnetd, and change user to root to resolve.

Retrieved from ""

Last modified: Sun, 13 Jul 2008 09:59:00 +0000 Hits: 3,795