ssh 密钥密码错误,但它是正确的

ssh 密钥密码错误,但它是正确的

我无法使用我的 ssh id_rsa/id_rsa.pub 密钥,因为 ssh 似乎认为输入的密码是错误的。但我确信它是正确的。它看起来如下:

ssh myuser@myhost_ip -i ~/.ssh/id_rsa.pub 
The authenticity of host 'myhost_ip (myhost_ip)' can't be established.
RSA key fingerprint is SHA256: (some hash).
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'myhost_ip' (RSA) to the list of known hosts.
Enter passphrase for key '/Users/paul/.ssh/id_rsa.pub': 
Enter passphrase for key '/Users/paul/.ssh/id_rsa.pub': 
Enter passphrase for key '/Users/paul/.ssh/id_rsa.pub': 

据我所知,它认为密码错误。在此之前,我还遇到了另一个问题(我不确定,但也许它们有关联?):

Permissions 0644 for '/Users/paul/.ssh/id_rsa.pub' are too open.

然后我用 修复了它chmod 400 ~/.ssh/id_rsa.pub。我不确定为什么会出现此问题,我猜测这些密钥是在 Ubuntu 上生成的,然后移到了 MacOS。

所以问题是:为什么 ssh 不接受我的密码以及如何解决这个问题?

答案1

公钥没有密码,私钥有。

您错误地尝试使用公钥作为您的身份,这绝对行不通。请使用您的私钥。

答案2

您指向的是公共文件。您需要公开私有文件:

ssh myuser@myhost_ip -i ~/.ssh/id_rsa

这也反映在有关模式的消息中,因为如果您愿意,公钥可以是 666。

事实上,您可以-i完全省略该选项,因为这是默认文件。

答案3

ssh myuser@myhost_ip -i ~/.ssh/id_rsa.pub

这应该是

ssh myuser@myhost_ip -i ~/.ssh/id_rsa

您应该使用您的私钥而不是您的公钥。

相关内容