Previous | Contents | Index | Next
Chapter 1: Introduction to PuTTY
PuTTY is a free SSH, Telnet and Rlogin client for 32-bit Windows systems.
1.1 What are SSH, Telnet and Rlogin?
If you already know what SSH, Telnet and Rlogin are, you can safely skip on to the next section.
SSH, Telnet and Rlogin are three ways of doing the same thing: logging in to a multi-user computer from another computer, over a network.
Multi-user operating systems, such as Unix and VMS, usually present a command-line interface to the user, much like the ‘Command Prompt’ or ‘MS-DOS Prompt’ in Windows. The system prints a prompt, and you type commands which the system will obey.
Using this type of interface, there is no need for you to be sitting at the same machine you are typing commands to. The commands, and responses, can be sent over a network, so you can sit at one computer and give commands to another one, or even to more than one.
SSH, Telnet and Rlogin are network protocols that allow you to do this. On the computer you sit at, you run a client, which makes a network connection to the other computer (the server). The network connection carries your keystrokes and commands from the client to the server, and carries the server's responses back to you.
These protocols can also be used for other types of keyboard-based interactive session. In particular, there are a lot of bulletin boards, talker systems and MUDs (Multi-User Dungeons) which support access using Telnet. There are even a few that support SSH.
You might want to use SSH, Telnet or Rlogin if:
you have an account on a Unix or VMS system which you want to be able to access from somewhere else
your Internet Service Provider provides you with a login account on a web server. (This might also be known as a shell account. A shell is the program that runs on the server and interprets your commands for you.)
you want to use a bulletin board system, talker or MUD which can be accessed using Telnet.
You probably do not want to use SSH, Telnet or Rlogin if:
you only use Windows. Windows computers have their own ways of networking between themselves, and unless you are doing something fairly unusual, you will not need to use any of these remote login protocols.
1.2 How do SSH, Telnet and Rlogin differ?
This list summarises some of the differences between SSH, Telnet and Rlogin.
SSH (which stands for ‘secure shell’) is a recently designed, high-security protocol. It uses strong cryptography to protect your connection against eavesdropping, hijacking and other attacks. Telnet and Rlogin are both older protocols offering minimal security.
Telnet allows you to pass some settings on to the server, such as environment variables. (These control various aspects of the server's behaviour. You can usually set them by entering commands into the server once you're connected, but it's easier to have Telnet do it automatically.) SSH and Rlogin do not support this. However, most modern Telnet servers don't allow it either, because it has been a constant source of security problems.
SSH and Rlogin both allow you to log in to the server without having to type a password. (Rlogin's method of doing this is insecure, and can allow an attacker to access your account on the server. SSH's method is much more secure, and typically breaking the security requires the attacker to have gained access to your actual client machine.)
SSH allows you to connect to the server and automatically send a command, so that the server will run that command and then disconnect. So you can use it in automated processing.
The Internet is a hostile environment and security is everybody's responsibility. If you are connecting across the open Internet, then we recommend you use SSH. If the server you want to connect to doesn't support SSH, it might be worth trying to persuade the administrator to install it.
If your client and server are both behind the same (good) firewall, it is more likely to be safe to use Telnet or Rlogin, but we still recommend you use SSH.
Comments to firstname.lastname@example.org
[$Id: blurb.but,v 1.10 2004/04/01 17:34:18 simon Exp $]
[$Id: intro.but,v 1.6 2004/06/15 11:00:28 jacob Exp $]
[$Id: gs.but,v 1.7 2004/04/08 12:38:53 simon Exp $]
[$Id: using.but,v 220.127.116.11 2004/08/03 12:08:23 jacob Exp $]
[$Id: config.but,v 18.104.22.168 2004/07/29 17:56:50 simon Exp $]
[$Id: pscp.but,v 22.214.171.124 2004/08/03 12:07:37 jacob Exp $]
[$Id: psftp.but,v 1.5 2002/08/07 19:20:06 simon Exp $]
[$Id: plink.but,v 126.96.36.199 2004/08/03 12:07:37 jacob Exp $]
[$Id: pubkey.but,v 1.22 2004/05/06 11:27:58 simon Exp $]
[$Id: pageant.but,v 1.11 2004/05/22 11:09:31 simon Exp $]
[$Id: errors.but,v 1.9 2004/07/22 12:38:37 jacob Exp $]
[$Id: faq.but,v 1.73 2004/07/29 10:23:48 jacob Exp $]
[$Id: feedback.but,v 1.17 2004/03/31 12:50:17 simon Exp $]
[$Id: licence.but,v 1.6 2004/01/01 16:47:48 simon Exp $]