GeodSoft logo   GeodSoft

A Beginner's Guide to the PuTTY SSH Windows Client

I am focusing on the Putty because to the best of my knowledge it is the only open source, free for use in a commercial environment, almost complete implementation of an SSH client that runs on all Windows systems from 95 to 2000. There are a number of relatively expensive commercial products and some partial open source solutions. If anyone knows of any comparably or more complete Windows open source SSH client implementations, please let me know.

Putty is available from, its author's web site. In the age of Windows' Installshield programs, Putty is refreshingly unique. There are six separate executable programs for all 32 bit Intel Windows versions plus six more for NT on Alpha. There is no install program. There is no compression; the programs range from 71K to 225K. You simply download the programs you want or need to any suitable directory from which you expect to run them. There are no hidden .DLLs added to your system. Putty programs use the Windows registry when they need to. The only essential program is putty.exe and puttygen.exe if you plan to generate your own key pairs on Windows.

In the event you ever wish to get rid of it, just delete the programs you downloaded and erase the Registry key hkey_current_user\Software\SimonTatham\ . If you made any shortcuts or program menu entries delete those. To my way of thinking, it doesn't get any easier. You know exactly what you've done to your system and what you need to do to undo it.

After you've downloaded putty.exe, you can run it via Explorer, Run..., Winfile or create a Desktop shortcut or Program Menu link. Once it's started, if you plan to make a password authentication connection, click on "Connection" under the "Category" heading and correct your "Auto-login username" if you have a different username on the system you are logging into than the Windows system you are on. Click session and enter the SSH server IP address or hostname and select SSH as the protocol. The port will change to 22 but can be overridden if necessary.

If you are using a key pair (see the ssh clients page for an explanation), you need to click on "SSH" under "Category" and enter the full path to the private key file or use the browse button to find it. Once you've entered these pieces, if you click Open or press enter, PuTTY will make an SSH connection to the remote server. The prompts will be as described in the general client section. If you enter the correct password or passphrase, you should get a command prompt on the remote system.

On the "Session" dialog, selecting "Default Settings" under "Saved Sessions" and clicking Save will save all settings except Host Name, Protocol and Port. If you enter a host name or IP address and a new saved session name and click Save, all the current settings including host will be saved under the session name. Different sessions or hosts may use different private keys. Saved sessions may be recalled by selecting them and clicking load. You can make changes to the loaded information before opening the connection; for example, you may change your user name to a test user name or enter a new IP address to test a first time connection to a new machine. Double clicking a saved session automatically connects to the host with the saved settings.

Puttygen.exe is an easy to use program to generate a pair of keys. After you launch it, click on "Generate". You then move the mouse to create "randomness". It then displays the "Public key for pasting into authorized_keys file:", and prompts for Comment, Key passphrase and Confirm passphrase. The key fingerprints is displayed and the button to save the private key is available after the key is generated. The one thing I don't like is the comment is not used; you can manually edit the public key comment when saving it but it's just a waste of typing to provide it as asked. You can also load an existing private key if you have the old passphrase to change it; presumably this lets you change passphrase periodically without needing to redistribute keys.

PuTTY also includes pscp.exe, a secure copy program, plink.exe, a command line interface to PuTTY backends and pagent.exe, an SSH authentication agent for PuTTY, PSCP and Plink. It does not include a counterpart for the newer sftp program that is available on current SSH releases on UNIX systems.

transparent spacer

Top of Page - Site Map

Copyright © 2000 - 2014 by George Shaffer. This material may be distributed only subject to the terms and conditions set forth in (or These terms are subject to change. Distribution is subject to the current terms, or at the choice of the distributor, those in an earlier, digitally signed electronic copy of (or cgi-bin/ from the time of the distribution. Distribution of substantively modified versions of GeodSoft content is prohibited without the explicit written permission of George Shaffer. Distribution of the work or derivatives of the work, in whole or in part, for commercial purposes is prohibited unless prior written permission is obtained from George Shaffer. Distribution in accordance with these terms, for unrestricted and uncompensated public access, non profit, or internal company use is allowed.

Home >
How-To >
Secure Shell >

What's New
Email address

Copyright © 2000-2014, George Shaffer. Terms and Conditions of Use.