WIL 17 ( Weeked I Learned ) - 23/06/18

용스·2023년 6월 18일

Visual studio에서 git 계정을 여러 개 관리하고 싶어서 글을 작성하게 되었다.

( 물론 회사 노트북을 들고 다니지 않기 위한 목적도 있다. )

SSH 키 생성 및 사용하기

SSH( Secure SHELL )란?

1995년 개발이 되어 unix나 linux 같은 OS에 안전하게 접속하기 위해 만들짐.

SSH 키 생성하기

SSH 키를 생성하여 한 PC에서 여러 git 계정을 관리할 수 있다.

이러한 SSH 키를 사용하여 인증하는 방식을 공개 키 / 비밀 키 방식이라고 한다.

내 PC에 비밀 키( 열쇠 )를 저장하고, Github에 공개 키( 자물쇠 ) 를 업로드 하면 열쇠와 자물쇠의 쌍을 이용해서 사용자 인증 절차를 거친다.

1. 각 계정에 따른 ssh-keygen으로 key 생성

$ ssh-keygen -t rsa -C "git 개인 계정" -f "id_rsa_userA"
$ ssh-keygen -t rsa -C "회사 계정" -f "id_rsa_userB"

2. ssh-add 를 해주기 위해서 ssh-agent 실행

  • ""를 넣어주자.. 안해줘서 에러가 생겨 왜 안되지 했다
  • 이 커맨드를 실행하지 않으면 ssh-add가 되지 않으니 꼭 실행
$ eval "$(ssh-agent -s)"

3. 각각 생성한 ssh key를 ssh-add 해주기

$ ssh-add ~/.ssh/id_rsa_userA
$ ssh-add ~/.ssh/id_rsa_userB

4. ~/.ssh/config에 계정 연결해주기

  • 여기서 Host github.com-userA는 추후 clone을 할 때 쓰이기 때문에 잊어먹지 않게 쉬운 것으로 만들 것
  • 어차피 까먹으면 cat ~/.ssh/config로 다시 확인하면 된다.
# userA에 대한 SSH 설정
Host github.com-userA
    HostName github.com
    User 개인 계정
    IdentityFile ~/.ssh/id_rsa_userA

# userB에 대한 SSH 설정
Host github.com-userB
    HostName github.com
    User 회사 계정
    IdentityFile ~/.ssh/id_rsa_userB

5. ssh key를 github에 등록하기

5-1. 각 계정에 맞는 ssh key 값 확인하기
# ssh는 2개 파일로 이루어져 있다.
# .rub 파일의 내용을 전부 복사해온다.
cat ~/.ssh/id_rsa_uesrA.rub
5-2. Settings에 접속

settings

5-3. SSH and GPG keys 에 SSH key 등록하기
  • 여기서 5-1에서 복사한 key값을 넣어준다.

6. 접속 확인하기

  • 아래 명령이 성공적으로 된다면 Hi userA! You’ve successfully authenticated...라는 메세지를 확인할 수 있다.
ssh -T git@github.com-userA

7. 정말 되는가 git clone 받아서 테스트

  • ssh key를 등록했기 때문에 clone을 받을 때 ssh 로 가져온다.
  • https가 아닌 ssh이다
  • 여기서 들어가는 Host는 ~/.ssh/config에서 설정한 Host이다.
git clone git@"~/.ssh/config에서 설정한 Host":jigomgom/userA-test.git

8. commit 테스트

  • 회사 계정
  • 개인 계정

이게 뭐라고 안하고 있었는지 모르겠다.

또한, 정말 오랜만의 블로그...

얼마나 블로그를 방치하고 있었는지 깨닫게 해주는 순간...

다시 블로그 쓰기

profile
일단 해보자

0개의 댓글