.ssh 폴더에 여러 개의 ssh 키를 가질 수 있습니까? 어떤 웹 사이트

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

안전한가요?

예 :

github_id_rsa
github_id_rsa.pub
..
...

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

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



답변

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


답변

~ / .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

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


답변

여러 사용자 계정이있는 사이트에 대해 여러 개의 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

도움이 되길 바랍니다.