티스토리 뷰

 Github는 Git 저장소를 제공하는 서비스로 수 많은 오픈소스들이 있는 웹 기반 서비스 입니다. 유료로 사용하실경우 일정량의 개인 저장소를 제공받을 수 있습니다. 


* 개인 git 저장소를 쓰고 싶으시다면 NAS 혹은 Digitalocean 에서 git 서버를 생성하는 것을 추천드립니다.


 여기서는 Github 를 콘솔로 접근할때 사용하는 ssh key 를 생성하는 방법을 설명드리겠습니다. Github 에서 자체적으로 GUI 클라이언트를 제공하지만 콘솔로 컨트롤해야 할때 사용하는 방법입니다. ( 개인적으로 클라이언트 같은 프로그램을 까는 것 보다 선호하는 방법이기도 합니다. 특히 서버 내부에서 작업을 해야 한다면 필수입니다. )


ps. 환경은 맥 or 리눅스 입니다.


참고 : https://help.github.com/articles/generating-ssh-keys


1. 키 확인하기

$ ls -al ~/.ssh
# 사용자 계정의 .ssh 폴더의 리스트를 보여줍니다.

없을 수도 있으니 걱정하지 않으셔도 됩니다. ( 생성하실때 키파일이름을 다르게 해주셔야 합니다. )




2. SSH 키 생성하기


이제 키를 생성할 차례 입니다.   우선 아래와 같이 자신의 계정 이메일로 키를 생성해주도록 합니다.


ssh-keygen -t rsa -C "example_email@example.com"


위와 같이 입력하시면 아래와 같이 키파일 저장 관련 옵션이 뜨게 됩니다. 기본으로 진행하도록 할때는 엔터를 눌러 주도록 합니다.

Enter file in which to save the key (/Users/account/.ssh/id_rsa): [엔터 입력]


이제 암호를 설정하는 메뉴가 나타납니다. 원하시는 암호를 2번 입력하여 주시기 바랍니다.


$ Enter passphrase (empty for no passphrase): [암호 입력]
$ Enter same passphrase again: [암호 확인 입력]


이제 모두 입력 하셨으면 아래와 같이 결과가 뜨게 됩니다.


Your identification has been saved in /Users/pc_account/.ssh/id_rsa.
Your public key has been saved in /Users/pc_account/.ssh/id_rsa.pub.
The key fingerprint is:
a8:6b:63:d1:2d:b4:f8:5s:6d:72:e2:ac:6d:c2:9s:27 example_email@example.com



이제 키는 생성되었으니 ssh-agent 에 키를 등록할 차례 입니다.


우선 아래의 방법으로 ssh-agent 를 사용가능한지 확인합니다. 확인이 되신다면 Agent pid 가 뜨는 것을 확인하실수 있습니다.


eval "$(ssh-agent -s)"


 그리고 아래의 명령어로 방금 생성한 파일을 등록하도록 합니다. 생성하실때 사용하신 파일명으로 넣어주시면 됩니다. 비밀번호를 요구하니 비밀번호도 넣어 주시면 됩니다.


ssh-add ~/.ssh/id_rsa


3. Github 에 키 등록하기


 이제 컴퓨터에서 해야하는 셋팅이 모두 완료되었습니다. $ pbcopy < ~/.ssh/id_rsa.pub 를 이용하여 키를 클립보드에 카피하도록 합니다.


pbcopy < ~/.ssh/id_rsa.pub


 이제 키가 복사되었을 것 입니다. Github 로 로그인한 후 아래와 Settings > SSH Keys > Add SSH Key 를 이용하여 아래와 같이 생성한 키를 Title 과 같이 입력하여 주시기 바랍니다.



 아래와 같이 입력하신 키가 정상적으로 등록 되었다면 Github 의 셋팅도 모두 마무리 되었습니다.



4. 로그인 확인하기


이제 간단하게 github.com 에 접속이 가능한지 확인해볼 차례 입니다.  아래와 같은 명령어를 입력하여 보신다면 접속을 할것이냐는 메지와 함께 성공적으로 로그인 되었다면 아래와 같은 메세지를 보실수 있으실 것 입니다.


ssh -T git@github.com


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


즐거운 개발 되시기 바랍니다. 

공유하기 링크
댓글