ssh-add 并联系服务器失败

Léo*_* 준영 3 ssh mac-osx private-key ssh-keys

我忘了怎么做这个程序。

我在 OSX 10.9.1 上做过

  • ssh-keygen在我的服务器上运行
  • 将私钥 id_rsa 移到我的笔记本电脑上$HOME/.ssh/id_rsa,从我的服务器中删除了私钥 id_rsa
  • $HOME/.ssh/config在我的笔记本电脑中创建以下内容
  • ssh-add $HOME/.ssh/id_rsa

我的 .ssh/config

Host server.myhomepage.com
  User masi
  Port 22
  Hostname server.myhomepage.com
  IdentityFile ~/.ssh/id_rsa
  TCPKeepAlive yes
  IdentitiesOnly yes
Run Code Online (Sandbox Code Playgroud)

我跑

ssh-add .ssh/id_rsa 
Enter passphrase for .ssh/id_rsa: 
Identity added: .ssh/id_rsa (.ssh/id_rsa)
Run Code Online (Sandbox Code Playgroud)

并运行更多

ssh server.myhomepage.com
Saving password to keychain failed
Run Code Online (Sandbox Code Playgroud)

它在图形窗口中询问我的 id_rsa 密码短语,我给出了正确但收到失败消息。然后,它在终端中询问我是否正确输入了我的私钥的密码,但仍然显示失败的消息。我用正确的密码跑了很多次

Identity added: /Users/masi/.ssh/id_rsa (/Users/masi/.ssh/id_rsa)
masi@server.myhomepage.com's password: 
Permission denied, please try again.
Run Code Online (Sandbox Code Playgroud)

我忘记了如何正确执行此程序。 如何正确地将钥匙放在钥匙串中?

Jen*_*y D 5

在客户端,您需要密钥的私有部分和公共部分。

在服务器端,您需要将密钥的公共部分放在$HOME/.ssh/authorized_keys.

因此,您的描述中缺少的步骤是:

  • 将公钥复制到笔记本电脑的 $HOME/.ssh/id_rsa.pub
  • 将公钥添加到服务器的 $HOME/.ssh/authorized_keys

  • 不要忘记正确设置密钥文件和目录权限。 (3认同)