ssh 密钥共享无法通过公钥连接

ssh 密钥共享无法通过公钥连接

我已经使用以下方法生成了私钥和公钥对 ssh 密钥例如这个。我无法访问远程服务器,因此我将公钥发送给了在那里拥有帐户的人。

公钥放在目录中~/.ssh/authorized_keys。现在我想使用我的私钥访问:

ssh -i ./authorized_keys/id_rsa usr@location

或者

ssh usr@location

请求usr密码,但不选择公钥。我该如何解决这个问题?详细模式表示它可以使用该密钥,但它没有使用它(使用第一个选项的输出尾部)

...
debug1: Next authentication method: publickey
debug1: Offering public key: .ssh/authorized_keys/id_rsa RSA   SHA256:XXX/XXXXXXXX explicit agent
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Next authentication method: password

答案1

公钥已放置在目录中~/.ssh/authorized_keys

这不应该是一个目录。在服务器端,它必须是文件每行包含一个公钥。在客户端,它没有特殊含义,但两个月后,它会让你完全困惑。

请求usr密码,但不选择公钥。我该如何解决这个问题?详细模式表示它可以使用该密钥,但它没有使用它(使用第一个选项的输出尾部)

最有可能的是,密钥未被使用,因为服务器还没有接受。

由于人们通常拥有多个密钥对,因此 SSH 公钥认证分为两个步骤:首先,客户端提供其民众密钥(即,它会逐一提供您的所有密钥),并且如果服务器发现该密钥可接受然后客户端发送使用私钥制作的“证明”签名。

如果在服务器的文件中找不到公钥authorized_keys,它会拒绝该提议,客户端可以继续提供另一个。(这样,拥有 10 个密钥的人就不需要一次输入 10 个解密密码。)

相关内容