I've been through this so many times with people running Windows so that I want to put this down to paper.
Install Cygwin & its SSH Package
Install Cygwin and be sure
to check for the
openssh-client package while
Generate the key using the Cygwin shell
You can now run standard
ssh commands that you
see documented on the plethora of Linux and Unix websites on
the internet. Right now, the command you really want to run
$ ssh-keygen -t rsa
I recommend entering a password so that in case someone steals your key, they still cannot use it.
This key, found in
~/.ssh/id_rsa.pub can now be
added to the
~/.ssh/authorized_keys file on the
servers on which you want to log into.
But: Can't I just not use PuTTY to generate the keys?
PuTTY is an excellent SSH client, but I would not recommend using its key generator as I've seen so many cases where it doesn't create proper keys for using with Linux/Unix OpenSSH servers.
This has at least been my experience with at least five
Windows users so I've stopped asking people to use PuTTY to
create their keys. It is probably possible to create proper
keys with PuTTY, but my experience is very bad with this and
I'd therefore recommend using Cygwin and
Making use of your new key
Since you now have Cygwin and
ssh on your
machine, you can just use the Cygwin shell and follow the
standard Unix way and add the key with
ssh afterwards. If using Cygwin, I
seriously recommend using its
xterm as it gives
you a so much better shell than the Windows/DOS shell that
cygwin standard wise is launched inside in: better fonts,
better signal handling and much faster input and
If you prefer using PuTTY, there's a walkthrough on using PuTTY
and its key agent here. Rememer, you need to make a note
of where the key you generated inside Cygwin is on the Windows
file system, normaly, it's somewhere under