Use PuTTYGen to Make SSH Keys¶
Contributor: Randy Smith WU2S
This How-to will show you a method for generating SSH key pairs on a Windows computer, saving them to a USB flash drive, installing the SSH key on an AREDN® node and using the SSH keys with a PuTTY terminal session.
The use of Secure Shell (SSH) keys when using PuTTY or another SSH client is a useful aid to managing a group of AREDN® nodes.
First, obtain the PuTTY suite of applications from the PuTTY Download Page and install them on your computer.
Second, obtain and prepare to use a text editor such as Notepad++ that does not insert unwanted characters and metadata into a text file.
Next, follow the steps below.
Start the PuTTYGen application. Confirm that you are going to generate an SSH-2 RSA key.
Select the Generate button to get the prompt asking you to make some random mouse movements. After a short while you get a message asking you to wait while the keys are generated. It finishes and you now have a new key pair.
Give the key pair a suitable comment so that you will remember what the keys are used for. Here we just entered email@example.com for an example. Whatever you enter in the “Key Comment” field must look like an email address with no spaces and the “@” present as in firstname.lastname@example.org. Also enter a suitable passphrase to use when accessing the private key. Record this passphrase so you will remember it for future use.
Now copy and save the public key. Open Notepad++ and confirm that the End Of Line (EOL) format is set to UNIX/OSX Format. This will ensure that there are no extraneous characters in the public key file.
Back in your PuTTYGen window, select and copy (Control-C) the complete text in the boxed labeled “Public key for pasting into OpenSSH authorized keys file”
Switch back to your Notepad++ window and Paste (Control-V) the public key text you just copied from PuTTYGen.
From the Notepad++ menu bar, select File -> Save As to save the public key to a suitable location. Many people save their keys on a USB flash drive to maintain physical possession of them at all times. Give the public key file a suitable name. You can exit Notepad++ now since you will not need it again.
Switch back to the PuTTYGen window again and select the “Save Private Key” button. This will let you save the private key just as you did in the previous step with the public key. You are finished generating and saving your SSH keys. Exit PuTTYGen.
In order to use your new SSH key pair, login to your AREDN® node and go to the Setup -> Administration screen. At the bottom you will see the Authorized SSH Keys section where you will install the public keys to use on this node.
When you press the Select File button you see a dialog box which enables you to locate the public SSH key that you want to install.
After choosing the desired public key file. Select the Upload button to install the key on the AREDN® node.
After installing the new public key, confirm that it is ready for use by looking in the dropdown list at the Remove Key section. If your SSH key filename appears, then it is installed properly. DO NOT remove it. In the example below there are two SSH keys currently installed on this node.
To use your SSH keys, open a new PuTTY session. In the Hostname box enter localnode and in the Port box enter 2222. It is helpful to save this session definition as something you will remember. Select the Save button.
14. Now, using the menu at the left, go to the SSH section and then select the Auth item. This shows a number of Options. The only one we need is the very last – the location of the Private key file for authentication. Browse for it and select the correct filename as before. Remember that the PRIVATE key files end in .ppk Go back to top of the menu on the left and select Session. SAVE the session definition again.
Now you can use the session information you saved by clicking the Load or Open button in the main PuTTY session screen. This will open a terminal session box as shown below. Login to the AREDN® node as root.
If you configured the PuTTY session correctly, it will find your private key file and ask you for the passphrase. If PuTTY cannot find the private key file, it will revert to prompting you for the root password that you normally use on the node.
The correct passphrase was entered. The node’s banner appears in the terminal session window and you can now do any command line tasks on the node.