2017-12-12 14 views
2

한 프로젝트에 하나의 키를 사용하여 여러 개의 ssh 키가 있습니다. 성공적으로 공개 ssh 키를 내 bitbucket 계정 내의 관련 리포지토리에 할당했습니다.bitbucket repo 다중 키에 액세스 할 때 git ssh 인증 오류가 발생했습니다.

그들은 다음 위치에 저장됩니다

ssh-add ~/.ssh/rsa_generic_repos 
ssh-add ~/.ssh/rsa_project1 

-l SSH-추가 - 디스플레이 : 그때 어떤 자식 접속을 시도하기 전에 내 SSH 에이전트에이 키를 추가

~/.ssh/rsa_generic_repos 
~/.ssh/rsa_generic_repos.pub 
~/.ssh/rsa_project1 
~/.ssh/rsa_project1.pub 

:

4096 SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXX/XXXXXXXXXXXX Generic Repo Key (RSA) 
4096 SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXX/XXXXXXXXXXXX Project 1 Key (RSA) 

내 문제 :

이 제대로 작동 (복제합니다 REPO) :

git clone [email protected]:Myusername/generic-repo.com.git 

이 작동하지 않습니다

git clone [email protected]:Myusername/project1.com.git 

오류 :

Cloning into 'project1'... 
repository access denied. deployment key is not associated with the requested repository. 
fatal: Could not read from remote repository. 
Please make sure you have the correct access rights and the repository exists. 

그러나 나는 실행하는 경우 :

ssh-add -D 
ssh-add ~/.ssh/rsa_project1 
git clone [email protected]:Myusername/project1.com.git 

이전에 저장하지 않았던 Repo를 성공적으로 복제합니다. 이것은 공개 키가 bitbucket에 올바르게 설정되어 있고 ssh 데몬이 첫 번째 항목 이외의 다른 ssh 키를 사용하지 않으므로 위의 오류가 발생한다는 것을 제안합니다.

누군가가 ssh-agent 세션에 저장된 모든 키를 ssh에 전달할 수있는 방법을 알려 주시면 대단히 감사하게 생각합니다.

도움과 시간 보내 주셔서 감사합니다.

+0

SSH 프로토콜은 여러 개의 키를 지원하지만 제한된 수의 로그인 시도 만 허용하도록 서버 측에서 구성 할 수도 있습니다. 비트 버킷이 그런 식으로 구성된 경우 변경해야합니다. 지원 티켓일까요? –

+0

좋은 생각, Bitbucket으로 지원 티켓을 만들었습니다. 나는 그들이 말하는 것에 대해 여기서 다시 올릴 것입니다. – GustavMahler

+0

이것은 https://gist.github.com/jexchan/2351996이 필요합니다. 첫 번째 댓글을 읽으십시오. – alvits

답변

0

~/.ssh/config 파일에 될 여러 SSH 키를 사용하는 적절한 방법,

Host bbgeneric 
    Hostname bitbucket.org 
    IdentityFile ~/.ssh/rsa_generic_repos 
    User git 

Host bbproject1 
    Hostname bitbucket.org 
    IdentityFile ~/.ssh/rsa_project1 
    User git 

I describe here로 그리고

bbgeneric:Myusername/generic-repo.com.git 
bbproject1:Myusername/project1.com.git 

하나의 배포 키가 실제로 쉽게 사용처럼 당신이 SSH URL을 사용하지만, 나는 당신이 임의의 수의 키를 사용할 수있는 config ssh 기능을 설명하고 싶었다.