5

I have two instances running on my aws. I have the same keypair for both of them. I was using both instances for long time. but today I am getting an error on one instance while trying to login through terminal if I run this command.

ssh -i mypem.pem ec2-user@52.xx.xxx.xxx
Permission denied (publickey).

But If I try to login to other instance with the same pem file. It works and I can successfully login to it.

I have tried all the solutions

but nothing works for me

If I do

ssh -i mypem.pem ec2-user@52.xx.xxx.xxx -v

the result is:

OpenSSH_7.4p1, LibreSSL 2.5.0
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to 52.xx.xxx.xxx [52.xx.xxx.xxx] port 22.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file mypem.pem type -1
debug1: key_load_public: No such file or directory
debug1: identity file mypem.pem-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.4
debug1: Remote protocol version 2.0, remote software version OpenSSH_7.4
debug1: match: OpenSSH_7.4 pat OpenSSH* compat 0x04000000
debug1: Authenticating to 52.xx.xxx.xxx as 'ec2-user'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: curve25519-sha256
debug1: kex: host key algorithm: ecdsa-sha2-nistp256
debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none
debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: mykeyhere
debug1: Host '52.xx.xxx.xxx' is known and matches the ECDSA host key.
debug1: Found key in /Users/myusername/.ssh/known_hosts:6
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_EXT_INFO received
debug1: kex_input_ext_info: server-sig-algs=<rsa-sha2-256,rsa-sha2-512>
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/myusername/.ssh/mypem.pem
debug1: Authentications that can continue: publickey
debug1: Trying private key: mypem.pem
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).

What I have tried

chmod 400 mypem.pem

I have also tried this

sudo ssh -i amazonec2.pem ec2-xxx-xxx-xxx-xxx.us-west 2.compute.amazonaws.com

Got this

Please login as the user "ec2-user" rather than the user "root"

then I did this

sudo ssh -i amazonec2.pem ec2-xxx-xxx-xxx-xxx.us-west-2.compute.amazonaws.com -l ec2-user

I got

Permission denied (publickey)

If I try to login to other instance with the same key. I can successfully login. Please help what actually went wrong here

Security Group on my instance is this:

0

If you are not running Amazon Linux, you have to change the username (ec2-user) for specific OS.

In my case, I'm using an Ubuntu server, and I connect using ubuntu@xxx.xx.xxx.xxx.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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