linux - 为了访问我的 AWS EC2 实例,我还能尝试什么

标签 linux ubuntu amazon-web-services ssh amazon-ec2

关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。












想改进这个问题?将问题更新为 on-topic对于堆栈溢出。

5年前关闭。




Improve this question




我有一个 Ubuntu 14.04 的 AWS EC2 实例。我已经登录了大约6个月了,现在我无法登录。

我得到 Permission denied (Public Key)
问题是,我在 3 个地方备份了我的 .pem 文件,但它们都不起作用。我对 AWS 非常有经验,而且我以前从未遇到过这种情况。

我使用的命令是ssh -v -i mykey.pem ubuntu@192.168.0.1
我从命令中得到的输出是这样的:

OpenSSH_7.1p2, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /usr/local/etc/ssh_config
debug1: Connecting to ec2-192-168-0-1.compute-1.amazonaws.com [192.168.0.1] port 22.
debug1: Connection established.
debug1: permanently_set_uid: 0/0
debug1: key_load_public: No such file or directory
debug1: identity file mykey.pem type -1
debug1: key_load_public: No such file or directory
debug1: identity file mykey.pem-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.1
debug1: Remote protocol version 2.0, remote software version PaloAltoNetworks_0.2
debug1: no match: PaloAltoNetworks_0.2
debug1: Authenticating to ec2-192-168-0-1.compute-1.amazonaws.com:22 as 'ubuntu'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-sha1 none
debug1: kex: client->server aes128-ctr hmac-sha1 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<7680<8192) sent
debug1: got SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: got SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: ssh-rsa SHA256:Mt8dMlt7QdgQ9kiju3OATK43jnN9oV2pZ4oGZdd46PA
debug1: Host 'ec2-192-168-0-1.compute-1.amazonaws.com' is known and matches the RSA host key.
debug1: Found key in /root/.ssh/known_hosts:34
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
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: mykey.pem
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).

我试过几次重启机器。

我已经从 3 个不同的位置尝试过这个,一个根本没有防火墙,我得到了同样的东西(当然除了关于防火墙的行)。

我最终放弃了尝试 SSH,并决定使用 AWS 管理控制台连接(直接来自我的浏览器的 Java SSH 客户端(需要 Java))

这已经失败了。它不支持 Chrome,当我从 Firefox 尝试时,它只是卡住了,从不做任何事情......浏览器控制台中没有错误(我可以找到......我在浏览器故障排除方面有点菜鸟)。

它在 Edge 和 IE 中做同样的事情。我在所有 3 台计算机、Ubuntu 桌面和 Windows 10 上都试过这个,但没有成功。

在那次失败之后,我发现某处说我可以将其保存到快照中,并从该快照启动一个新实例,并使用不同的 .pem 文件,以防万一我的所有 3 个副本都以某种方式神奇地损坏了。我试过了,我制作的克隆永远不会正确启动(1/2 状态检查)。

有什么我没有尝试过的吗?

编辑 1

我还尝试将 .pem 文件的权限更改为 400 和 600,以及删除 known_hosts 文件。事实证明,这些都不是解决方案。

最佳答案

您对实例有任何监控吗?如果磁盘已满,这可能会解释一些问题,但 Cloudwatch 无法告诉您正在使用多少空间。这可以解释为什么 AMI 不能正确启动。您应该能够从 AWS 控制台访问引导日志,其中可能包含一些信息。如果问题是磁盘空间,您可以从您的 AMI 启动另一个实例,但指定一个大磁盘。

该实例是否有可能以某种方式被黑客入侵?如果有人接管了它,他们可能已经更改/删除了 key ,甚至更改了 sshd 正在监听的端口。

如果您的实例真的被水洗了,并且您想从中获取数据,您应该能够拍摄快照,从该快照创建一个新卷,并将生成的卷挂载到一个新实例上。

关于linux - 为了访问我的 AWS EC2 实例,我还能尝试什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38294385/

相关文章:

ubuntu - AVCONV 截屏音频跳过

linux - 如何以编程方式将数据下载到 AWS EC2 实例?

ubuntu - 使用 EC2 VPC 实例的新主机名动态更新主机文件

linux - bash 命令输出中的行作为字符串存储在变量中

Python 命令行 : editing mistake on previous line?

linux - 如何将 Jenkins 主目录从/var/lib 更改为 app 并为原始位置创建符号链接(symbolic link),因为工作不会受到影响

linux - Sphinx 声称内存太低并且我的 ID 为空

ubuntu - Nginx - 写入 : permission denied when transfering files with Filezilla to root directory

python - 在Python中,如果用户通过SSH连接,如何获取用户的远程IP(他们的最后一跳)?

amazon-web-services - 将子域从 aws 指向 azure。可能的?