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

Anthony James —  November 21, 2011

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.

Show us some love..Share on LinkedInShare on RedditTweet about this on TwitterShare on Google+Share on Facebook

Anthony James

Posts Twitter Facebook

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


    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.


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


    AWESOME! Thank you so much!


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


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


    Simply awesome..


    Well done, thanks for the very helpful info.




    This was really helpful, thank you!


    Thanks! That’s helped.


    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?

    • 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.


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

    • 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@

Trackbacks and Pingbacks:

  1. Installing Drupal And Linux Lamp Stack On Ubuntu Amazon EC2 | - July 31, 2012

    [...] Installing Drupal And Linux Lamp Stack On Ubuntu Amazon EC2 Anthony James —  July 31, 2012 — Leave a comment In this screencast we are going to start from the very beginning and create our own EC2 cloud hosted Drupal installation. This will allow us to have full control of our Linux server and Drupal installation. We will walk through the process of setting up an Amazon EC2 instance, download and install Apache2, MySQL, PHP5, and phpmyadmin. Using these tools, we can create a Drupal database and host a Drupal website. Finally, we will download and install Drupal to our web server, create a Drupal database, configure the Apache site directory and install our Drupal website. At the end of the screencast we will have a running server and working Drupal website. For Windows users that want to connect with putty: Connect To Amazon EC2 Linux Instance Using PuTTY Private Key On Windows [...]