From ArchWiki

Telnet is the traditional protocol for making remote console connections over TCP, it is mainly used to connect to legacy equipment nowadays. Telnet is using an unencrypted connection which is not secure as connections can easily be sniffed and even manipulated. To mitigate this, only connect via e.g a VPN when the data passes through untrusted networks. For a secure alternative see SSH.


Install the inetutils package.

It includes a telnet client. A telnet server can be configured with systemd sockets or xinetd. telnetd via systemd requires only the inetutils package. To configure a telnet server with xinetd, install xinetd as well.


To enable telnet server connections in systemd, enable telnet.socket (if the telnet server should be started on every boot), and start telnet.socket to test connectivity.

To enable telnet server connections in xinetd, edit /etc/xinetd.d/telnet, change disable = yes to disable = no and restart the xinetd service.

Enable systemd xinetd service if you wish to start it at boot time.

Testing the setup

Try opening a telnet connection to your server:

$ telnet localhost

Try a root login to see if your configuration permits it and the security implications that implies.

If the session disconnects before you receive a login prompt, try installing inetutils-gitAUR in place of the current inetutils and restarting telnet.socket.

Tip: If you receive junk codes from a remote telnet server sending non-ascii chars with a non-unicode encoding, you might want to try luit to solve this problem.