Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I downloaded the pem file on my Windows machine and I am able to connect to my instance with the puttygen generated ppk file (which has a public and a private key in it). I copied the pem file over onto a linux box and tried ssh -i pemfile.pem -v but ssh is asking me for a password. The debug output (-v) is as follows:

debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Trying private key: /home/w/jpgate.pem
debug1: read PEM private key done: type RSA
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: password's password:

So I suppose I need a public key, right? How do I get the public key on linux? Why does every tutorial tell that I only need to ssh -i key.pem

share|improve this question

What kind of AMI / Linux distro are you using?

Maybe logging in as root is not allowed. E. g. for an Amazon Linux AMI you will have to log in as ec2-user (not sure about the dash) and for Ubuntu AMIs it would be the ubuntu user.

share|improve this answer
the login user is root. I do the login from Windows with root. It's one of alestics AMIs with the user-data-script feature. I think, the problem is, that the pem file only contains a private key and the ppk contains both, a public and a private key. Login via password doesn't work either – wullxz Dec 31 '12 at 6:20
up vote 0 down vote accepted

I just found the solution by myself:
I hadn't yet generated an ssh public key (no id_rsa, in ~/.ssh/) so I generated one:
ssh-keygen -t rsa -C ""

If it were the wrong username, the debug print would've looked like in this question.

share|improve this answer

A lot of EC2 information implies the user name is usually or always ec2-user. Not true. It can be root for CentOS, ubuntu for Ubuntu etc. And for whatever reason, the user name is not documented with the AMI! Very irritating. You may have to try different user names.

If you are prompted for a password from SSH, it is clear evidence the provided user name is wrong.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.