12

我通过 ssh 很好地连接了我的 ec2 实例,在添加新的 EBS 卷后通过“sudo shutdown -r now”重新启动了机器

之后我尝试使用以下命令进行访问:

ssh -v  -i primary_key.pem ubuntu@ec2-23-22-245-160.compute-1.amazonaws.com

这是重新调整如下:

OpenSSH_5.6p1, OpenSSL 0.9.8r 8 Feb 2011
debug1: Reading configuration data /Users/caveman/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: Applying options for *
debug1: Connecting to ec2-23-22-245-160.compute-1.amazonaws.com [23.22.245.160] port 22.
debug1: Connection established.
debug1: identity file primary_key.pem type -1
debug1: identity file primary_key.pem-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.9p1 Debian-5ubuntu1
debug1: match: OpenSSH_5.9p1 Debian-5ubuntu1 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.6
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: Host 'ec2-23-22-245-160.compute-1.amazonaws.com' is known and matches the RSA host key.
debug1: Found key in /Users/caveman/.ssh/known_hosts:31
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: primary_key.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

2 回答 2

15

这是正常的 Amazon EC2 行为。重新启动实例后,关联的公共 IP(您的原来是ec2-23-22-245-160.compute-1.amazonaws.com)将被更改。

有 2 种方法可以通过 ssh 连接您的实例

  1. 登录您的 Amazon AWS 控制台并检查正在运行的实例,然后复制公共 DNS 并尝试使用 ssh 连接。(ssk键是一样的)

  2. 如果您不希望实例的公共 IP 在每次重新启动/终止时更改,请使用弹性 IP。与账户(而非实例)关联的弹性 Ip,因此您可以在所需的任何实例上分配弹性 Ip。

您可以使用 ssh 连接ssh -v -i primary_key.pem ubuntu@<ElasticIp>

于 2013-04-06T06:30:29.497 回答
0

我有类似的问题。这就是我所做的..!

ssh -i < .pem file> -vvv <server IP>

上面的命令将显示调试日志,在 ECDSA 密钥被接受后,你就进入了。

于 2018-02-18T04:01:25.960 回答