여러 깃허브 계정 사용시 SSH 키 설정

Starlot·2022년 5월 7일
0

회사용 GitHub 계정을 추가로 개설 하여 ssh key 등록을 시도하니, 이미 등록된 ssh key라고 등록이 되지 않았다. 이에 별도로 key를 생성하여 등록 및 설정하는 과정을 정리한다.

0. 설정환경

아래 정보들은 설명을 위한 가짜 정보들입니다.

  • OS : MacOS
  • 회사메일주소 : exam@company.com
  • Mac 사용자 명 : xxxxx
  • SSH Key 파일명 : github-exam
  • Host 설정명 : github-work

1. 회사 계정용 SSH Key 생성

아래 명령으로 신규 Key를 생성한다.

$ ssh-keygen -t rsa -C "exam@company.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/xxxxx/.ssh/id_rsa): github-exam
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
...

/Users/xxxxx/.ssh(홈 디렉토리의 .ssh)에 github-exam, github-exam.pub 두개 파일이 생성된다.

2. GitHub에 공개키 등록

  1. 생성된 공개키 정보를 확인 한다.

    $ cat ~/.ssh/github-exam.pub
    ssh-rsa ......+U= exam@company.com
  2. GitHub 우측 상단의 프로필을 눌러 표시되는 Popup 메뉴에서 Settings를 선택한다.
    설정

  3. New SSH Key 버튼을 눌러 입력창으로 이동한다.
    New SSH Key

  4. 공개키를 입력한다.
    공개키 정보 입력

3. Host 설정

/Users/xxxxx/.ssh 디렉토리의 config 파일에 Host 정보를 설정한다. config 파일이 없으면 새로 생성해 준다.

$ vi ~/.ssh/config
# 회사계정
Host github-work
 HostName github.com
 User git
 IdentityFile ~/.ssh/github-exam

위와 같이 설정 하면 $ ssh github-work 와 같이 호스트명으로 사용 할 수 있고, 해당 호스트명을 이용 할 때 설정한 정보 git@github.com을 이용한다.

4. git config 설정 변경

설정을 사용 할 로컬 git repository 내에서 .git 디렉토리를 확인해보면, 안에 config 파일이 있다. remote 부분의 url 설정 중 github.com 부분을 위에 설정한 Host명(github-work)로 변경한다.

$ vi .git/config
[core]
	...
[remote "origin"]
   url = git@github-work:{회사계정명}/{프로젝트명}.git
...
profile
Starlot 프로젝트

0개의 댓글