Postępuję zgodnie z procedurą podwójnej tożsamości dla bitbucket :
Mam 2 konta bitbucket ccmcbeck
i chrisbeck
. Pierwsza jest osobista, druga to praca.
Na moim lokalnym komputerze Mac mam to w swoim ~/.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
Na moim lokalnym komputerze Mac ssh -T
wszystko jest w porządku, otrzymuję:
$ ssh -T git@bitbucket-personal
logged in as ccmcbeck.
$ ssh -T git@bitbucket-work
logged in as chrisbeck.
Na moim lokalnym komputerze Mac wersja ssh to OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
Kiedy ssh foo.work.com
przechodzę do mojego Linux-a, otrzymuję:
$ 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)
Na foo.work.com
, mam to też w moim~/.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
Jednak w foo.work.com
momencie , gdy ja ssh -T
, odwołuje się do niewłaściwego użytkownikagit@bitbucket-work
$ ssh -T git@bitbucket-personal
logged in as ccmcbeck.
$ ssh -T git@bitbucket-work
logged in as ccmcbeck.
Włączona foo.work.com
jest wersja sshOpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
Dlaczego moja konfiguracja powoduje foo.work.com
odsyłanie do niewłaściwego użytkownika?
OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010
foo.work.com
używa pierwszego zgłoszonego przez ssh-add -l
.
ssh-add -d
mojabitbucket-personal
tożsamość, tofoo.work.com
używa poprawnegoUser