假设有两个密钥A
和B
,这两个密钥对于user@host
公钥身份验证都是有效的。由于authorized_keys
根据密钥配置为不同的行为,因此~/.ssh/config
在客户端上使用类似
Host A.host
HostName host
User user
IdentityFile ~/.ssh/A
Host B.host
HostName host
User user
IdentityFile ~/.ssh/B
效果很好。但是,当我使用ssh-agent
并添加两个密钥A
和时B
(例如,为了在登录时输入密码,而不是在调用相应的ssh A.host
或 时ssh B.host
),连接将始终对两个虚拟主机使用相同的 ID。有什么办法可以指定哪个存储的密钥ssh
应该使用 fromssh-agent
而不必删除其他密钥?
答案1
作为在其他地方回答过,技巧是添加选项IdentitiesOnly yes
以确保仅有的即使代理可以提供其他密钥,也将使用配置的密钥。