3 March 2017

How to ‘Finger’ using telnet

Finger is a very simple text-based protocol for retrieving information about a system’s users. To use the Finger protocol, the client connects to port 79/tcp on the server and sends a request, which is terminated by ␍␊. The request may be an empty string.

Pursuant to RFC 1288, if the request is a user name, the response must include at least the full name of that user. If the request is an empty string, the server must either refuse the request or provide a list of all online users. Such a list must at least include the full names of those users.

It is common for servers not to provide Finger service. Such disinclination may be due to e.g. privacy concerns or a general principle of only running essential services.

What you need

  • A Finger server host name (for use in the telnet command)
  • Optional: a user name to ‘Finger’

What to do

The initial telnet: > symbolises your shell prompt.

telnet: > telnet server.example.com finger
telnet: Trying 192.0.2.2...
telnet: Connected to server.example.com.
telnet: Escape character is '^]'.
client: root
server: Login: root                             Name: Charlie Root
server: Directory: /root                        Shell: /bin/sh
server: Never logged in.
server: No Mail.
server: No Plan.

As you can see, all you needed to do after connecting to the server was type the search string and press ⏎. The server then returned the information it had, and terminated the connection.