2

我正在尝试使用 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).  
4

3 回答 3

1

曾经我遇到过类似的问题。我无法解决它,但我解决了它。您可以做的是从您尝试访问的机器的 EBS 创建一个 AMI,然后从该 AMI 启动一个新实例并指定创建一个新的密钥对。然后 AWS 应该将您的新私钥添加到 allowed_keys 并让您进入新机器。到那时,您可以击落旧的。

希望这可以帮助。

于 2012-04-30T16:06:15.743 回答
1

使用ec2-user作为用户名。

尝试命令

ssh -l ubuntu -v -i TBKEY1.pem ec2-user@ec2-46-137-225-40.ap-southeast-1.compute.amazonaws.com
于 2012-05-02T06:17:27.577 回答
0

由于您Permission denied (publickey)从服务器收到消息,因此连接没有问题。确保您的相关密钥对与TBKEY1.pem您的实例相关联。如果它是链接的,那么它应该如下图所示。

在此处输入图像描述

您可以在此处找到更多详细信息

于 2017-09-01T04:53:38.933 回答