OS X、SSH:为不同的服务器使用不同的私钥文件

Mik*_* L. 4 ssh openssh private-key

我想使用不同的私钥文件连接到不同的 SSH 服务器 ( ssh://git-server:port/repository)。如何管理?SSH 似乎假设私钥文件在~/.ssh/id_rsa.

slh*_*hck 6

这就是为什么有这样的-i选择:

-i identity_file

选择从中读取用于 RSA 或 DSA 身份验证的身份(私钥)的文件。默认~/.ssh/identity为协议版本 1,~/.ssh/id_rsa并且~/.ssh/id_dsa协议版本 2。

身份文件也可以在配置文件中按主机指定。可以有多个-i选项(以及在配置文件中指定的多个身份)。

如果你想让它永久化,你需要设置你的 SSH 配置文件并设置相应的IdentityFile选项

IdentityFile

指定从中读取用户的 DSA、ECDSA 或 DSA 身份验证身份的文件。[…]

如果您看到类似这样的对话框:

在此处输入图片说明

您需要输入您的 OS X 帐户的用户密码。不是您的密钥密码或远程 SSH 密码。这是因为他们的身份尚未存储在钥匙串中。

根据本教程,以下命令应适当添加它们:

ssh-add -K
Run Code Online (Sandbox Code Playgroud)