无法通过 SSH 进入 AWS 上的 CentOS HVM 实例:没有可用的受支持的身份验证方法

无法通过 SSH 进入 AWS 上的 CentOS HVM 实例:没有可用的受支持的身份验证方法

我有类似的问题另一个问题,但提供的信息对我没有帮助。

我在 AWS 上设置了一个 CentOS HVM 实例来学习 Linux。我的初始(root?)帐户centos可以使用我在 AWS 控制台上创建的初始密钥对正常登录。使用 PuTTY(在 PuTTYgen 之后在本地生成适当的密钥格式),登录时我收到了密钥挑战,我选择“是”将其保存在本地。

当我使用该帐户首次登录服务器时,我不知道(单独的)登录质询密钥在我的 Windows 笔记本电脑本地存储在哪里。它必须按用户名或 Windows 用户名存储。我只知道 PuTTYgen 转换的 PPK 文件在哪里。

我在 Linux 机器上创建了第二个用户ec2usr。我使用 sudo passwd 设置了密码。我想通过从 PuTTY 登录来测试这个新帐户,但我收到了同样的消息 - 即使我将 PuTTY 指向与我的帐户登录相同的 PPK 密钥文件,centos它也有效。

我在 AWS 控制台上仅创建了一对密钥。

我已尝试将该密钥对中的 AWS 控制台密钥对指纹加载到 PuTTY 中,但仍然不起作用。

当我尝试登录时,我没有机会保存质询密钥 - 它应该提示我这样做,但它没有。为什么没有?

这里没有什么不寻常的 - 这是最基本的。我错过了什么?

如果我正在使用 PAgeant,但我却不知道,我怀疑我是否正在使用。

答案1

Putty使用自己的格式,CentOS使用OpenSSH密钥格式。

无论如何,你必须授权您拥有的密钥ec2usr

拥有相同的密码与centos此无关。

您正在使用钥匙仅基于身份验证(默认情况下,AWS 中禁用密码一)。

要授权密钥,您必须将其民众对应物<USER HOME DIR>/.ssh/authorized_keys

如果您刚刚创建了一个用户,它甚至可能没有目录.ssh

下面创建它(假设您以该用户身份登录):

mkdir ~/.ssh
chmod 0700 ~/.ssh
touch ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys

如果你手边没有民众密钥(用于添加到authorized_keys文件),您可以直接从 复制它/home/centos/.ssh/authorized_keys。它必须在那里,因为您的用户登录centos有效。

相关内容