[Github] 원격저장소 연결을 위해 SSH를 발급 받아보자 (for Mac)

Jemma·2022년 2월 2일
0

Git / Github

목록 보기
2/2


[참고] Github Doc.


기존에 SSH 키를 가지고 있는지 체크하기

❶ 터미널을 열고 다음과 같이 입력하기

ls -a ~/.ssh

❷ Key가 있다면 아래와 같이 뜨고 / 없다면 새롭게 생성하기

  • id_ed25519
  • id_rsa
  • id_ecdsa

만약 SSH 키가 존재한다면 파일 이름은 생성한 버전에 따라 다를 수 있습니다.




새로운 SSH key 생성하기

❶ 터미널을 열고 다음과 같이 입력하기

ssh-keygen -t ed25519 -C "your_email@example.com"

문서에서는 기존 버전(legacy system) 이라고 말하는데, Mac 버전에 따라 ed25519 로 key 생성이 안되는 경우에는 아래 rsa 방식을 이용해 주세요.

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"



❷ 생성된 key 정보 설정 : 그냥 Enter 쳐서 넘기기

> Enter a file in which to save the key (/Users/you/.ssh/id_algorithm): [Press enter]
> Enter passphrase (empty for no passphrase): [Type a passphrase]
> Enter same passphrase again: [Type passphrase again]

다음과 같이 passphrase 를 입력하라는 화면이 뜨는데, 아무것도 입력하지 않고 넘겨도 진행이 됩니다. 저는 그냥 엔터를 쳐서 넘겼습니다. ( * passphrase 에 대한 설명은 링크 참조 )




생성한 key를 ssh-agent에 추가하기

❶ 터미널을 열고 ssh-agent를 실행시키기

eval "$(ssh-agent -s)"

그러면 해당 ssh-agent가 열리면서 pid가 할당이 됩니다. Agent pid XXXX 대략 이런 식으로 뜨는데, 포트 번호 하나를 받았다고 이해하시면 됩니다.



❷ .ssh config 파일에 설정 작성하기

open ~/.ssh/config

만일 이렇게 입력했을 때 The file /Users/you/.ssh/config does not exist. 이렇게 뜬다면 config 파일이 없는 경우이니 새로 생성해 준 후에 파일을 열어 주세요.

touch ~/.ssh/config

open ~/.ssh/config

새롭게 생성했기 때문에 비어있는 텍스트 에디터 창이 뜰 겁니다.


해당 파일에 아래와 같이 입력한 후에 저장해 주세요.

Host *
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_ed25519



❸ 터미널을 키고 생성한 key를 ssh-agent에 추가하기

ssh-add -K ~/.ssh/id_ed25519

만약 Monterey 12.0 이상 버전을 사용중이라면 -K 명령어가 들지 않기 때문에 아래와 같이 입력해 줍니다.
(저는 Monterey 12.1 버전이라 이 명령어를 사용해야 했습니다 / 내 Mac 버전 체크는 상단의  로고 클릭 > 이 Mac에 관하여 에서 확인)

ssh-add --apple-use-keychain ~/.ssh/id_ed25519




생성한 key를 github 계정에 추가하기

❶ 터미널을 열고 다음과 같이 입력하기

pbcopy < ~/.ssh/id_ed25519.pub

이렇게 입력하면 해당 key에 대한 정보가 자동으로 클립보드로 복사가 됩니다. 복사가 잘 되었는지 궁금하다면, 텍스트 에디터나 메모를 띄워서 ctrl + v 를 해보시면 이상한 글자들이 가득한 걸 볼 수 있습니다.



❷ github 계정 > Settings > SSH and GPG keys 에 key 등록

버튼을 눌러 키를 생성해 주시면 됩니다.
Title은 아무거나 넣으시면 됩니다 ex) mySSH, ssh_key ...
Key에는 클립보드에 복사된 내용은 붙여 넣으시면 됩니다. 내용이 사라졌다면, 다시 ❶ 명령어를 입력해서 얻을 수 있습니다.
입력을 완료했으면 Add SSH Key를 누르면 약간의 로딩이 있은 후에 SSH key 생성이 완료됩니다.


이제 HTTPS 방식 외에 SSH 방식으로도 로컬 - 원격저장소에서 깃 활용을 할 수 있습니다. 와~ 👏👏




profile
꽃길만 걸어요 우리

0개의 댓글