Skip to main content

Connect To Amazon EC2 Linux Instance Using PuTTY Private Key On Windows

Posted on November 21, 2011 by Anthony James Founder/CEOAnthony James Founder/CEO

When first setting up an Amazon EC2 server, you receive an ssh key to connect to the instance. This article details how to use a PuTTY private key to connect to your Amazon EC2 Linux instance. Previously, we used ssh on the OS X terminal and our .pem key file in order to connect. However, that didn’t work for our Windows users because .pem files are used with ssl (openssl). We will show you how to download all the PuTTY tools needed, create your private key, connect to your instance. We will also show you how to connect to your instance without an SSH key. The video included shows the practical application of the information written in the article below.




We are going to assume you’ve already followed the previous Amazon Screencasts and you have your .pem file and are ready to connect to your instance.
1.) Download the PuTTY resources needed to connect to our instance, PuTTY Download page. Go ahead and download the PuTTY and PuTTYGen executable files to your desktop.

2.) Open the PuTTYGen executable and your screen should look like the image below. This is where we are going to take your .pem file and convert it into a putty private key.

3.) Select the “load” button and Windows Explorer should appear for you to select a file. You will have to select the option to view “all” files as the image shows. From there you will load your .pem file.


4.) Once you’ve loaded the .pem file your screen will look like the following. Once this is complete select “Save private key.” It will ask you if you want to save without a pass code. You may choose to use a pass code but it is not necessary.
5.) Open PuTTY and enter your host
6.) Select “data” on the left hand side under “auto-login username” enter the user “root”

7.) Select “Auth” on the left hand side then under “private key for authentication” select the .ppk file we just created with PuTTYGen.
8.) Go back to the top and connect to your instance.
Thanks for reading–the video above also shows how to do these same steps.

18 Comments

Image of Mark Nett
Mark Nett
8 years ago

Thanks! I have got a .Pem file & was looking for instructions on how to get into ec2 server.
The instructions you provided are clear & useful thanks James.

Image of Anthony James Founder/CEO
Anthony James Founder/CEO
8 years ago

Glad it helped!

Reply
Image of jaffe
jaffe
8 years ago

Could use some more in depth information on sshd. Getting an access denied and not sure how to allow access.

Image of Greg
Greg
8 years ago

AWESOME! Thank you so much!

Image of randeep
randeep
8 years ago

is there anyway I can convert .ppk file to .pem ?

Image of Devin Walker
Devin Walker
8 years ago

Worked like a charm. Thanks for this… Windows users unite!

Image of Shams
Shams
8 years ago

Simply awesome..

Image of Aaron
Aaron
7 years ago

Well done, thanks for the very helpful info.

Image of shwetanka
shwetanka
7 years ago

Awesome!!

Image of Tom
Tom
7 years ago

This was really helpful, thank you!

Image of Darkest
Darkest
7 years ago

Thanks! That’s helped.

Image of Chuck Fox
Chuck Fox
7 years ago

I just followed this guide and it refused a root login. Changing the username from “root” to “ec2-user” worked fine though. I was then able to login and “sudo su” to root user. Maybe this is a recent change?

Image of Anthony James Founder/CEO
Anthony James Founder/CEO
7 years ago

It depends on the distribution. For example if you are using Ubuntu it will require you to use Ubuntu. If you are using amazon Linux, it want’s you to use ec2-user.
Thanks for the comment.

Reply
Image of Mohamed Rafi
Mohamed Rafi
7 years ago

Thank you so much for a great guide. It worked perfect.

Image of Alexey Zimarev
Alexey Zimarev
7 years ago

You have to use “ec2-user” user instead of “root”

Image of Anthony James Founder/CEO
Anthony James Founder/CEO
7 years ago

Well that is only on some instances. You need to look at your instance type and connection string. For example, ubuntu servers are “ubuntu@” amazon is “ec2-user@” and other ones such as Debian are root@

Reply
Image of Akretep Sebas
Akretep Sebas
7 years ago

It worked perfectly! Thank Antony. By the way it is plaisant to hear te tune of your voice. Calm…
So… after this i gest there is still a long way to go to me to rdp my instace from windows (mstsc) right? I guess i ave to install ubuntu evirnment trought my putty console and also a rdt protocole. Am not sure i’ll make it whitout any help. Is there tutorials about this procedure?

Image of Kofi
Kofi
4 years ago

Thanks a lot!

Image of Yoosuf
Yoosuf
4 years ago

Thanks a Lot very help full

Image of waseem
waseem
3 years ago

Thanks. it helped.

Image of mauro
mauro
3 years ago

I got Network Error, connection timed out, any idea of what I could be doing wrong?

Leave a Reply

Your email address will not be published. Required fields are marked *