Installing and Using PuTTY
PuTTY is a telnet/rsh/ssh client authored and maintained by Simon Tatham. PuTTY can be used on a Windows system to log in remotely to ARSC systems and to run commands on them. This software is free to download and is easy to configure through a graphical interface.
Downloading and Installing PuTTY
The following steps cover downloading and installing PuTTY 0.63, released 08/06/2013. We tested these steps on a 64-bit Windows 7 installation.
2. Run putty-0.63-installer.exe, and select "Next".
3. By default, the installer will install in C:\Program Files (x86)\PuTTY (C:\Program Files\PuTTY for 32-bit systems). Select "Next".
4. The installer will prompt you for a Start Menu folder in which to create shortcuts. Select "Next".
5. Select "Create a desktop icon for PuTTY", and select "Next".
6. The installer will allow you to review your choices. Select "Install" after you have done so.
7. The installer will require only a few seconds to install PuTTY on your computer. Select "Finish". As it closes, the installer will by default open PuTTY's Readme file, which contains additional information useful if you want to use PuTTY tools other than PuTTY itself. These tools are outside the scope of this article, which covers only SSH connections with PuTTY.
Establishing SSH Connections
The following steps describe how to connect via SSH to ARSC systems by using PuTTY beta 0.63.
1. Open PuTTY using the icon placed on your desktop by the PuTTY installer.
2. At first glance, PuTTY appears to have many options needing configuration, but the defaults should suffice for most. To connect to an ARSC system, enter in the host name of the remote system, in the format "hostname.arsc.edu". Optionally, you may prefix the remote hostname with your ARSC username, with the format becoming "email@example.com". As shown below, to connect to a system named "lemming" with username "jsmith", you would type either "lemming.arsc.edu" or "firstname.lastname@example.org". (This will save you the trouble of providing it later.)
3. Select "Open".
4. You may receive a popup alert similar to this one. This is a warning displayed the first time your SSH client connects to any computer to which it has never connected before, for security purposes. If you have never connected to this remote computer using this PuTTY installation, select "Yes". PuTTY will now remember the remote computer's fingerprint and suppress this message on recognition.
5. A terminal will open. If you did not enter your user name in step 2, you will be prompted for it now. Otherwise, skip to the next step.
6. You will be prompted for your password. Enter your UA password. (Public key authentication is available for PuTTY via the Pageant tool, but this is outside the scope of this article.)
7. If you have successfully connected, a prompt will appear allowing you to enter commands on the remote system.
Saving Connection Settings
PuTTY allows connection settings may be saved for future use. The following steps describe how to accomplish this.
1. After configuring any settings you wish to alter, navigate back to the "Session" navigation category, which is the first entry under "Category".
2. Enter a name for your session in the "Saved Sessions" input box, and select "Save". Your session should now appear as a new line in the text box to the left of "Save".
3. To load saved settings, select the session you want to load and then select "Load".
4. Optionally, PuTTY allows you to load connection settings with a -load flag. To do this, copy your PuTTY shortcut, right click on it, and select "Properties". Add the -load flag followed by the connection name in quotation marks to the shortcut target, and select "Apply". Rename the shortcut to an appropriate name as you see fit. See the image below for an example.
Adding X11 Forwarding
Some programs on our remote systems have Graphical User Interfaces (GUIs). It is possible to view these over an SSH connection, using X11 forwarding, which is supported by PuTTY. The following steps describe how to accomplish this.
1. Neither PuTTY nor Windows ship with an X Window Server, which is required to use remote X11 GUIs. If you do not have an X Window Server installed on your local computer, a free option available to you is XMing. Follow our instructions on how to install XMing, noting that in the "Select Components" screen, you may opt not to install an SSH client or the XLaunch utility.
2. In PuTTY, load or define a connection and navigate to Connection-SSH-X11. Check the box labeled "Enable X11 forwarding".
3. Select "Open" to connect to the ARSC system you specified in the previous step.
4. Ensure that your local X Server is running. You can open an X11-forwarded SSH connection just fine without the local server, but your session will fail to open any X11 applications.
5. Before opening any large X Window applications, verify that you can open a small one. Run "xlogo". For information on running programs from a shell prompt, please see read our introductory article.
If you see a window containing the X Window System logo (a black X on a white background), your connection has established X11 forwarding correctly.
6. You may now open X Window applications of your choice that are installed on the system to which you are connected.
When I try to connect, PuTTY opens an alert box that says "Disconnected: No supported authentication methods available".
This message means that authentication by username failed. This is most likely caused by a typo in your username, or because you do not have access to the system to which you tried to connect.
My application returns the error "X connection to localhost:10.0 broken (explicit kill or server shutdown)" (or similar).
This is an indication that your local X server is not running. Check the icons on the right-hand side of your task bar for the X Server icon. If it is not present, ensure that you have installed an X Server locally and that it is running. Once the icon is present, try opening your program again.
I received the "Unknown Host Key" popup, followed by another popup stating: "Server unexpectedly closed network connection".
This indicates that the server's SSH timeout was triggered. ARSC SSH servers are configured to kill incoming connections that do not send data for a while before finally trying to authenticate. While you were responding to the "Unknown Host Key" popup, the ARSC machine thought you were idle and disconnected you. You should be able to reconnect without a problem.