Como respondeu em outro lugar , o truque é adicionar a opção IdentitiesOnly yes
, que garante que somente as chaves configuradas serão usadas mesmo que outras estejam disponíveis no agente.
Digamos que há duas chaves A
e B
, ambas válidas para user@host
autenticação de chave pública. Como authorized_keys
está configurado para comportamento diferente dependendo da chave, ~/.ssh/config
no cliente usa algo como
Host A.host
HostName host
User user
IdentityFile ~/.ssh/A
Host B.host
HostName host
User user
IdentityFile ~/.ssh/B
Isso funciona bem. No entanto, no momento em que usar ssh-agent
e adicionar as chaves A
e B
(por exemplo, para inserir suas senhas no login em vez de chamar as respectivas ssh A.host
ou ssh B.host
), a conexão será sempre use o mesmo id para ambos os hosts virtuais. Existe alguma maneira de especificar qual chave armazenada ssh
deve usar a partir de ssh-agent
sem ter que remover a outra chave?
Como respondeu em outro lugar , o truque é adicionar a opção IdentitiesOnly yes
, que garante que somente as chaves configuradas serão usadas mesmo que outras estejam disponíveis no agente.