.ssh 폴더에 여러 개의 ssh 키를 가질 수 있습니까?


28

여러 개의 ssh 키를 만들고 이름을 사용자에게 친숙한 이름으로 바꾸어 어떤 웹 사이트 등의 키인지 알 수 있습니다.

안전한가요?

예 :

github_id_rsa
github_id_rsa.pub
..
...

연결할 때 확인할 키를 어떻게 알 수 있습니까?

내 컴퓨터에서 known_hosts를 보면 호스트 이름 다음에 동일한 키가있는 것 같습니다.



또한 알려진 호스트 키는 동일하지 않으며 각 호스트의 줄 끝을 보면됩니다.
slhck

답변:


15

예, 다른 ssh 키를 가질 수 있습니다. GitHub 도움말 사이트 ( Help.GitHub-다중 SSH 키) 에는 매우 유용한 문서가 있습니다 . 기본적으로 ssh-add를 사용하여 에이전트가 사용할 수 있도록 추가 키를 추가합니다. 그런 다음 다른 도메인에 대한 ssh 연결이 여기에서 조회되고 적절한 키가 사용되도록 ssh 호스트 구성을 설정합니다. 행운을 빕니다!


1
더 이상 링크가 작동하지 않음
danwellman


41

~ / .ssh / config 파일을 수정하여 서버마다 다른 ID 파일을 사용할 수 있습니다. 선호하는 편집기에서 ~ / .ssh / config를 편집하고 다음과 같이 상황에 적합한 항목을 추가하십시오.

Host *
IdentityFile ~/.ssh/id_rsa

Host *.github.*
IdentityFile ~/.ssh/github_id.rsa

Host *.someother.com
IdentityFile ~/.ssh/someother_id.rsa

위의 첫 번째 부분은 모든 호스트의 기본값을 설정하고 다른 섹션은 패턴과 일치하는 각 호스트에 사용해야하는 내용을 대체합니다. 각 호스트마다 다른 사용자 이름이있는 경우 사용자 키 다음에 원격 사용자 이름을 추가 할 수 있습니다 .


3
이것은 GitHub 또는 다른 사이트와 관계없이이 질문에 대한 가장 유용한 답변입니다.
Pierre

비트 버킷 계정이 여러 개이고 각각에 대해 서로 다른 키가 필요한 경우에는 작동하지 않습니다.
존 리틀

chmod 400 ~/.ssh/id_rsa또는 chmod 400 ~/.ssh/foo_id.rsa필요할 수 있습니다.
T.Woody

@JohnLittle 같은 도메인에 대한 다중 사용자 계정을 해결하는 내 대답을 살펴보십시오.
Sathishkumar Rakkiasamy

2

여러 사용자 계정이있는 사이트에 대해 여러 개의 ssh 키를 설정할 수 있습니다

아래는 GitHub.com을 개발할 때 사용한 예입니다 .

구성 파일 예

#Personal account
 Host github.com-<personal-account-name>
 HostName github.com
 User git
 IdentityFile ~/.ssh/id_rsa_personal
 IdentitiesOnly yes



#Organization account
 Host github.com-<organization-name>
 HostName github.com
 User git
 IdentityFile ~/.ssh/id_rsa_work
 IdentitiesOnly yes

새로운 원점을 추가 할 때

개인 계정

git remote add origin git@github.com-<personal-account-name>:<personal-account-name>/<repo-name>.git

조직 계정

git remote add origin git@github.com-<organization-name>:<organization-name>/<repo-name>.git

도움이 되길 바랍니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.