如何配置 ssh 客户端以自动使用私钥

如何配置 ssh 客户端以自动使用私钥

我总是ssh使用该-i参数运行,但对于我所连接的任何主机,总是输入正确的密钥很麻烦。

是否有一个配置文件或其他东西(在 Mac 上)来定义连接到特定主机时使用哪个私钥?

答案1

是的,您需要创建一个~/.ssh/config文件。它允许您定义主机的快捷方式名称、要连接的用户名以及要使用的键。这是我的部分内容,主机名已混淆:

主机选项卡
     主机名 tabs.com
     使用我
     身份文件 ~/.ssh/new_rsa

主机 scm.company.com
     用户上限
     身份文件 ~/.ssh/git_rsa

主持项目暂存
     主机名 50.56.101.167
     使用我
     身份文件 ~/.ssh/new_rsa

通过这个,我可以说,并以用户身份使用密钥ssh tabs连接到主机tabs.com ,就像我使用过一样。menew_rsassh [email protected] -i ~/.ssh/new_rsa

答案2

SSH 客户端通常使用(ssh v1)或(v2)~/.ssh/identity之一作为默认私钥。您可以在(参数 - SSH 选项实际上会覆盖此设置。有关详细信息,请参阅)。~/.ssh/id_rsa~/.ssh/id_dsa~/.ssh/configIdentityFile-iman ssh_config

如果你有多个私钥需要处理,使用私钥ssh-agent可能是一个更好的选择。
请参阅man ssh-agent以了解更多详细信息。

答案3

如果您对不同的服务器使用不同的密钥,我认为不存在这种情况。

如果您对所有服务器使用单个密钥,只需将其保存为~/.ssh/id_rsa,它将被自动使用。

相关内容