2016-04-01 27 views
0

SSH yapılandırmamın neden yanlış anahtarı ilettiğimi anlayamıyorum. İki anahtarım var, onlara home_rsa ve work_rsa diyoruz.SSH IdentitiesOnly = evet tüm anahtarlarımı iletme

İşte
eval `ssh-agent` 
ssh-add -K ~/.ssh/home_rsa 
ssh-add -K ~/.ssh/work_rsa 

benim ~/.ssh/config dosyasıdır:: Aşağıdaki yapmış

Host home 
    ForwardAgent yes 
    HostName home.com 
    IdentityFile ~/.ssh/home_rsa 
    IdentitiesOnly yes 
    User home 

Host work 
    ForwardAgent yes 
    HostName work.com 
    IdentitiesOnly yes 
    IdentityFile ~/.ssh/work_rsa 
    User work 

Host bitbucket 
    IdentityFile ~/.ssh/home_rsa 

Host bitbucket-work 
    IdentityFile ~/.ssh/work_rsa 

Host bitbucket* 
    HostName bitbucket.com 
    User git 

Aşağıdaki çalıştırmak

...

benim home kullanıcıyı kullanıyorum o
ssh work 
ssh [email protected] 

... Bitbucket bildiriyor Açıkça work sunucumda oturum açmış olmam ve work anahtarımı iletmem gerekiyor. SSH kimliklerimi ters sırada eklediğimde ve aynı kodu yukarıda çalıştırırsam, Bitbucket benim work kullanıyorum. ssh-add -l'u work sunucumdan çalıştırıyorum, her iki SSH anahtarının iletildiğini görüyorum, ancak bu IdentitiesOnly yes'un işi değil mi?

Burada olup bitenler konusunda gerçekten kafanız karıştı.

+0

sayılı '. – larsks

+0

Oh. Öyleyse, benim sunucuda hangi anahtarın/sunucuların hangi sunucuda mevcut olduğunu kontrol etmenin bir yolu var mı? –

+0

Gerçekten değil, hayır. Demek istediğim, birden fazla yerel ajanla bir şeyler yapabileceksin, ama muhtemelen güzel olmaz. – larsks

cevap

1

Burada neler olup bittiğine dair gerçekten kafanız karıştı.

ForwardAgent seçenek içindeki tüm tuşları ile ajana bağlantı iletir ve yerel ~/.ssh/config uzaktan ev sahibi iletmediği. work ana bilgisayarında yaptıklarınız, ana bilgisayardaki yapılandırmanız tarafından denetlenir.

Bununla ne yapmaya çalışıyorsunuz?

+0

Bitbucket, Bitbucket hesapları arasında aynı SSH anahtarını kullanarak izin vermez. Bir iş hesabım ve kişisel bir hesabım var. İtme/getirme/birleştirme/vb. Yapmaya çalıştığımda, uzak sunucunun doğru SSH anahtarını kullanmasını istiyorum. –

+0

Cevabımı okudun mu? – Jakuje

+0

Evet ve cevabınızı anlıyorum. Ama bununla ne yapmaya çalıştığımı sordun. Ben itme/getirme/birleştirme/etc çalışıyorum. uzak sunucumda. –

0

ssh anahtarlarınızı, ilk olarak kendi web sitesindeki eşdeğer bitbucket hesabıyla güncellemeniz gerekir (work_rsa ile çalışma kullanıcısı, user_rsa kullanıcı). O zaman belki bu yardımcı olabilir. Kimlik doğrulama işlemi için hangi anahtar kontrol, ancak ajan mevcut anahtarların listesini etkilemez IdentitiesOnly`

Host    bitbucket-work 
HostName   bitbucket.org 
IdentitiesOnly  yes 
IdentityFile  ~/.ssh/work_rsa 
User    work 

ssh bitbucket-work