Я следую двойной процедуре идентификации для bitbucket :
У меня есть 2 аккаунта bitbucket ccmcbeckи chrisbeck. Первое личное, второе - работа.
На моем локальном Mac у меня есть это в моем ~/.ssh/config
Host *.work.com
User chris
ForwardAgent yes
IdentityFile ~/.ssh/work_dsa
Host bitbucket-personal
HostName bitbucket.org
User ccmcbeck
ForwardAgent no
IdentityFile ~/.ssh/bitbucket_ccmcbeck_rsa
Host bitbucket-work
HostName bitbucket.org
User chrisbeck
ForwardAgent no
IdentityFile ~/.ssh/bitbucket_chrisbeck_rsa
На моем локальном Mac у меня ssh -Tвсе хорошо, я получаю:
$ ssh -T git@bitbucket-personal
logged in as ccmcbeck.
$ ssh -T git@bitbucket-work
logged in as chrisbeck.
На моем локальном Mac версия ssh OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
Когда я захожу ssh foo.work.comв свою коробку Linux, я получаю
$ ssh-add -l
1024 ... /Users/chris/.ssh/work_dsa (DSA)
2048 ... /Users/chris/.ssh/bitbucket_ccmcbeck_rsa (RSA)
2048 ... /Users/chris/.ssh/bitbucket_chrisbeck_rsa (RSA)
У foo.work.comменя также есть это в моем~/.ssh/config
Host bitbucket-personal
HostName bitbucket.org
User ccmcbeck
ForwardAgent no
IdentityFile ~/.ssh/bitbucket_ccmcbeck_rsa
Host bitbucket-work
HostName bitbucket.org
User chrisbeck
ForwardAgent no
IdentityFile ~/.ssh/bitbucket_chrisbeck_rsa
Тем не менее, foo.work.comкогда я ssh -T, он ссылается на неправильного пользователя дляgit@bitbucket-work
$ ssh -T git@bitbucket-personal
logged in as ccmcbeck.
$ ssh -T git@bitbucket-work
logged in as ccmcbeck.
На foo.work.com, версия sshOpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
Почему моя конфигурация вызывает foo.work.comссылку на неправильного пользователя?
OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010
foo.work.comиспользует первый, о котором сообщили ssh-add -l.
ssh-add -dмояbitbucket-personalличность, тоfoo.work.comиспользует правильныйUser