我可以将 ssh 私钥永久添加到我的用户代理吗?

Posted

技术标签:

【中文标题】我可以将 ssh 私钥永久添加到我的用户代理吗?【英文标题】:Can I permanently add ssh private key to my user agent? 【发布时间】:2021-02-28 02:25:00 【问题描述】:

有点像菜鸟的问题,但每天在工作时,当我打开 git bash 时,我必须启动 ssh-agent 守护进程,并且我必须将我的 ssh-private 密钥添加到用户代理,以便 Github 知道我是谁。

    eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa

如果我不这样做,我将无法拉/推到 github。

每天都要做这个有点烦人,有没有办法永久添加它?

【问题讨论】:

很可能,您可以简单地将这两个命令放在您的.bash_profile.bashrc 中。我不确切知道 Git bash 将在什么样的环境中运行或运行,因此您可能需要做一些更复杂的事情来避免运行 ssh-agent 的多个实例。 【参考方案1】:

不要使用ssh-agent,而是将以下内容放入您的.ssh/config 文件中:

Host github.com
    IdentityFile ~/.ssh/id_rsa

代理主要用于避免在.ssh/config 中创建大量配置(因为任何连接都将尝试使用在代理中找到的密钥),或者用于允许远程 SSH 会话返回到您的本地计算机获取必要的密钥。

【讨论】:

以上是关于我可以将 ssh 私钥永久添加到我的用户代理吗?的主要内容,如果未能解决你的问题,请参考以下文章

iOS:我需要将用户的私钥 (RSA) 传输到我的应用程序。文件共享是一个好的解决方案吗?

SSH 在 Windows 上为公钥/私钥对寻找错误的位置

Git 扩展验证错误

ssh-agent代理的简单用法

无法为新用户生成有效的 ssh 公钥/私钥对

SSH权限详解