A explicação mais provável parece-me que o ssh-agent está usando qualquer tecla carregada a qualquer momento. Você pode eliminar esse comportamento usando a diretiva IdentitiesOnly
em seu arquivo de configuração, da seguinte maneira:
Host bitbucket-personal
HostName bitbucket.org
User ccmcbeck
ForwardAgent no
IdentityFile ~/.ssh/bitbucket_ccmcbeck_rsa
IdentitiesOnly yes
Host bitbucket-work
HostName bitbucket.org
User chrisbeck
ForwardAgent no
IdentityFile ~/.ssh/bitbucket_chrisbeck_rsa
IdentitiesOnly yes
Do ssh man page
:
Specifies that ssh(1) should only use the authentication identity files configured in the ssh_config files, even if ssh-agent(1) offers more identities. The argument to this keyword must be ''yes'' or ''no''. This option is intended for situations where ssh-agent offers many different identities. The default is ''no''.
EDITAR:
Na sua postagem, há essas linhas até o final:
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: /home/chrisb/.ssh/bitbucket_chrisbeck_rsa ((nil))
debug1: Authentications that can continue: publickey
Eles mostram claramente que essa chave não foi aceita. É por isso que você sempre faz login como ccmcbeck: essa tecla funciona e, sem IdentitiesOnly yes
, o cliente tentou outras chaves até encontrar uma que funcionasse. Introduzindo essa restrição, pelo menos esclarecemos a natureza do problema.
Como no seu Mac você não parece ter esse problema, ele deve residir no cliente Linux e, em particular, na chave privada que você está tentando usar. O melhor é gerar um novo, local para o Linux, e colocar sua contraparte .pub
entre os authorized_keys
. Espero que isto ajude.
EDIT2:
... ou você pode seguir esta resposta do Superusuário para selecionar a chave privada que você deseja usar
especificando sua contraparte pública do agente encaminhado. A resposta ainda requer o uso da opção IdentitiesOnly yes
.