Study Everyday :)

GitHub ssh key 생성하고 등록하고 사용하기 본문

IT/ETC

GitHub ssh key 생성하고 등록하고 사용하기

은세 2018. 3. 13. 21:20

Git 에 ssh 키를 생성하고 등록하는 방법을 포스팅 하려고 합니다 !


공식 문서는 아래의 링크를 보시면 됩니다 ~


GitHub에 ssh 등록 관련한 공식 글/문서



짧게 설명을 하자면 ssh key 를 이용하면 GitHub 에 접속하려고 할때마다 username 이나 password 를 제공하지 않아도 됩니다.


Git에 ssh key를 생성하고 등록하고 사용하는 방법은 간단해요 :)



1. SSH 키 생성하기



SSH 키를 생성하기 전에 먼저 ssh 키가 있는지부터 확인을 합니다.



$ cd ~/.ssh

$ ls



커멘드를 입력했을 때 id_rsa.pub/ xxx. pub파일 이 있다면 이미 만든 것이 있기 때문에 새로 또 만들 필요는 없습니다.


만약 디렉토리가 없거나 파일이 없으면 아래의 커멘드를 통해서 새로 만드시면 됩니다.



$ ssh-keygen -t rsa -b 4096 -C "email@email.com"


-C "이 부분은 email이나 작성하고 싶은 커멘트를 남기시면 됩니다"

그 후에는 아래와 같은 메시지가 뜹니다.





Generating public/private rsa key pair.

Enter file in which to save the key (/Users/sophiacho/.ssh/id_rsa):


엔터를 치시면 default로 저장되는 곳에 파일이 만들어집니다.

다른 이름으로 저장하고 싶으시면 원하시는걸 적고 엔터를 치면 됩니다.



그 다음에는 비밀번호를 생성하는 메시지가 나오는데


Enter passphrase (empty for no passphrase):

Enter same passphrase again:


엔터를 치시면 비밀번호를 생성하지 않고 넘어갈 수 있습니다.

비밀번호를 생성해서 더 보안을 하고 싶으시면 생성해도 됩니다.


비밀번호는 생성하지 않고 넘어가겠습니다. 두번 엔터를 치고 넘어갑니다.



Your identification has been saved in .../.ssh/id_rsa.

Your public key has been saved in .../.ssh/id_rsa.pub.

The key fingerprint is:


이렇게 메시지가 나온다면 ssh 키 생성 완료 !

다시 한번 확인 해봅니다.


$ cd ~/.ssh

$ ls


id_rsa.pub 파일이 있다면 ssh 키를 생성하신겁니다.




2. GitHub ssh key 사용하기



다음으로 에이전트에 ssh key를 등록합니다.


$ eval `ssh-agent -s`



ssh-agent 를 사용 !



$ ssh-add ~/.ssh/id_rsa



방금전에 만든 id_rsa 를 추가합니다 ~




3. GitHub 계정에 ssh key 등록하기




$ pbcopy < ~/.ssh/id_rsa.pub



위에 있는 커멘드를 이용해서 클립보드에 ssk key를 복사합니다.


Git 페이지를 보면










맨 오른쪽에 아이콘을 클릭 !





아이콘 밑에 이렇게 뜨는데 여기에 있는 Settings 를 클릭합니다.








왼쪽에 SSH and GPG keys 를 클릭합니다. 여기서 아까 복사한 ssh key를 등록할거에요. 







New SSH key 를 클릭합니다 :)






Title 은 ssh 키에 대한 label 을 설정하는거에요.

home macbook 이런식으로 ssh key의 타이틀을 쓰고


Key에 아까 복사한 ssh key 를 붙여넣기 합니다 !

그 후에 Add SSH key 를 클릭한 후 비밀번호를 입력하면


SSH key 등록 완료 !!!




Git 의 clone 한 repository 에 수정한 commit 을 push 를 하면

username 이나 password를 입력 안해도 push 가 됩니다 :)


만약 push 를 했는데 user가 다르게 나온다면


$ git config --global user.email "email@email.com"


git config 설정해야해요 !

본인의 email 계정으로 저 커멘드를 치면 됩니다.



push가 잘 되는지 테스트 해보시려면



$ ssh -T git@github.com



The authenticity of host '...' can't be established.

RSA key fingerprint is SHA256:nTh...

Are you sure you want to continue connecting (yes/no)?



이 메시지가 뜨면 yes를 쓰신 후 엔터 !


Hi ! You've successfully authenticated, but GitHub does not provide shell access.


이런 메시지가 뜨면 성공입니당 :)


다른 테스트 방법으로는 직접 push 해보면서 테스트 하면 됩니다.


$ git clone git@github.com:xxx/sample.git

$ cd ~/sample.git

$ vim test.txt

$ git add test.txt

$ git commit -m "test"

$ git push



이런식으로 테스트 해보셔도 됩니다 :)




'IT > ETC' 카테고리의 다른 글

Intellij spring MVC gradle 프로젝트 만들기  (2) 2018.03.22
Git alias 설정하고 사용하기  (0) 2018.03.18
DynamoDB 란? 요약/ 정리  (1) 2017.10.16
Comments