假设我有一个Github的钥匙,还有其他钥匙。我ssh-add -L
在家用计算机A上的ssh代理中添加了很多密钥(返回很多行)。在我的.ssh/config
主机中,我设置了与哪个主机一起使用的密钥。
ssh -T -vvv git@github.com 2>&1 | grep Offering
给
debug1: Offering RSA public key: /Users/doxna/.ssh/id_rsa.github
正如预期的那样,仅提供一个密钥。但是然后使用ssh-sing到某些主机B ForwardAgent yes
并重复相同的命令,我得到了
debug1: Offering RSA public key: /Users/doxna/.ssh/id_rsa.linode2
debug1: Offering RSA public key: /Users/doxna/.ssh/id_rsa.helium
debug1: Offering RSA public key: /Users/doxna/.ssh/id_rsa.github
表示它会尝试我所有的键。这是有问题的,因为在服务器返回之前只能尝试有限数量的密钥Too many authentication failures
。所以我尝试.ssh/config
在主机B上进行编辑以包括
Host github.com
IdentityFile /Users/doxna/.ssh/id_rsa.github
IdentitiesOnly yes
但是后来我没有得到关键的产品,而是
debug2: key: /Users/doxna/.ssh/id_rsa.github ((nil))
我猜这意味着找不到该密钥(?)毕竟,该密钥位于我的家用计算机A上,而不是主机B上,所以问题是如何在主机B上引用它?希望我能解释这个问题。