我正在尝试使用SSH访问EC2上的新Ubuntu实例。我注意到很多人都遇到了同样的问题并使用了不同的解决方法,但到目前为止还没有能够解决这个问题。
非常感谢任何帮助。
>$ ssh -l ubuntu -v -i TBKEY1.pem ec2-46-137-225-40.ap-southeast-1.compute.amazonaws.com
>OpenSSH_6.0p1, OpenSSL 1.0.1b 26 Apr 2012
>debug1: Connecting to ec2-46-137-225-40.ap-southeast-1.compute.amazonaws.com [46.137.225.40] port 22.
>debug1: Connection established.
>debug1: identity file TBKEY1.pem type -1
>debug1: identity file TBKEY1.pem-cert type -1 [-pebug1: Remote protocol version 2.0, remote software version OpenSSH_5.3p1 Debian-3ubuntu6
>debug1: match: OpenSSH_5.3p1 Debian-3ubuntu6 pat OpenSSH_5*
>debug1: Enabling compatibility mode for protocol 2.0
>debug1: Local version string SSH-2.0-OpenSSH_6.0
>debug1: SSH2_MSG_KEXINIT sent
>debug1: SSH2_MSG_KEXINIT received
>debug1: kex: server->client aes128-ctr hmac-md5 none
>debug1: kex: client->server aes128-ctr hmac-md5 none
>debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
>debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
>debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
>debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
>debug1: Server host key: RSA 77:49:93:95:2f:c5:b2:9c:d3:1b:f0:34:fb:23:b1:8c
>debug1: Host 'ec2-46-137-225-40.ap-southeast-1.compute.amazonaws.com' is known and matches the RSA host key.
>debug1: Found key in /home/Ma/.ssh/known_hosts:1
>debug1: ssh_rsa_verify: signature correct
>debug1: SSH2_MSG_NEWKEYS sent
>debug1: expecting SSH2_MSG_NEWKEYS
>debug1: SSH2_MSG_NEWKEYS received
>debug1: Roaming not allowed by server
>debug1: SSH2_MSG_SERVICE_REQUEST sent
>debug1: SSH2_MSG_SERVICE_ACCEPT received
>debug1: Authentications that can continue: publickey
>debug1: Next authentication method: publickey
>debug1: Trying private key: TBKEY1.pem
>debug1: read PEM private key done: type RSA
>debug1: Authentications that can continue: publickey
>debug1: No more authentication methods to try.
>Permission denied (publickey).
答案 0 :(得分:1)
一旦我遇到类似的问题。我无法解决它,但我解决了它。您可以做的是从您尝试访问的计算机的EBS创建AMI,然后从该AMI启动新实例并指定创建新密钥对。然后,AWS应该将新的私钥添加到allowed_keys,然后让您进入新计算机。那时你可以击落旧的。
希望这有帮助。
答案 1 :(得分:1)
使用 ec2-user 作为用户名。
尝试命令
ssh -l ubuntu -v -i TBKEY1.pem ec2-user@ec2-46-137-225-40.ap-southeast-1.compute.amazonaws.com
答案 2 :(得分:0)
由于您从服务器收到Permission denied (publickey)
消息,因此连接中没有问题。
确保与TBKEY1.pem
相关的密钥对与您的实例相关联。如果它已链接,则它应显示在下面的屏幕截图中。
您可以找到更多详情here