들어가기 앞서

Gihhub 레포지토리에 push를 하거나, private 레포지토리를 받아오기 위해서는 Github 계정이 필요합니다.

하지만 매번 할 때마다 비밀번호를 입력하기는 귀찮습니다.

그래서 Github ssh key를 등록하여 손쉽게 ssh 통신으로 push / pull 하는 법을 배우겠습니다.

SSH 키 생성

먼저 SSH 키를 생성하기 위해 사용자 폴더의 .ssh 폴더로 이동합니다.

$ cd ~/.ssh

그리고 키젠을 이용하여 새로운 키를 생성합니다.

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

이메일에는 GitHub 계정 이메일을 입력하시면 됩니다.

그러면 public/private 키의 위치와 비밀번호를 입력하라고 뜰겁니다.

모두 Enter를 눌러서 넘어갑니다.

생성된 key의 내용을 모두 복사하여 Github SSH 키에 등록해야합니다.

$ cat ~/.ssh/id_rsa.pub

라고 치시면 다음과 같이 암호화된 키의 내용이 뜰겁니다. 모두 복사해줍니다.

ssh-rsa AAjBJRBFVx4o8eQFg5jKkWmHaSGDg+VsPjlDsZdEpe+0buI70bzqYojrR0muBpNx/pXNqTajdJth+66Z44EHHL2RENHBd36hywOfFSyyEKxSrxPpgQdag4aVlqvW4OJY8PlXAquDgalxb0i2+PfH+x4Jz0uiUmmhN2bdYGq8e9tw9V3k+RXYy/+KgqzPpVHMa8rEUtJAUe/v7AfWr5Hr3V9fp7aUXIMrYhdaskjcxz1#dsaxzcJtUE16c4ixhl+6rFg/2Bx+VjIh3ZgRaLA9DUeNkq2tTyVPehuud+yOVDxoRCu4I/3EI7aSlnr5E0C2yf64e+f4/IcXtIIxyQRNom16PiQryGeBdtxq6XbztUcsDM8Sq9yIn8zQSe4n+QRoe1C9NHXimxl2wqXuIsJrxhkVL3VF/8ADAQABAAACAQCdpI55Ol5DaJc/0QjnAu2Hg+rx4hIfuCLIUXTrULfMYL6/Gx5JRfrbx00YB1fzPJcD4/g0BYhefe3k9z1VHVQOEn+ueTYKdc29xNlol2rYtJNoWUQye7i+YUth6f1Sp9/zkjwOd8Do1yUc2yOMsEyLL0QCri5/GyJQRfu5lpLF3vm7oCTIsaFop8GrZHYcZFwyvAAB3NzaC1yc2EAAAU2z3uQf2/jxqjTyLdGz1Esl3KwVpWtOPN9xGsV/mCqsNVMG1vpx1yq/WP2EsCivCxtSlsoIQ== email@example.com

GITHUB SSH 키 등록

깃허브에 들어가셔서 로그인 후, 왼쪽 상단 프로필에 Settings 탭에 들어갑니다.

스크린샷 2019-11-19 오전 12.48.05.png

SSH and GPG keys 탭에 들어가셔서, New SSH Key 버튼을 누릅니다.

스크린샷 2019-11-19 오전 12.49.40.png

Title와 key에 값을 입력해주고 Add SSH key 버튼을 눌러줍니다.

테스트하기

나의 private 레포지토리 아무거나 들어간 후, Clone or download를 눌러줍니다. 그러면 Clone with SSH 주소가 나오는데 그것을 복사해줍니다.

(만일 Clone with HTTPS로 되어있으면 Use SSH로 바꿔주세요.)

그리고 EC2에서 git clone을 해서 정상적으로 복사가 되는지 확인합니다.

$ git clone git@github.com:beygee/test_private_repository.git

원래 같으면 Private 레포지토리여서 github 계정과 비밀번호를 요구해야하는데, ssh key 값으로 본인 인증을 하였기 때문에 바로 클론이 되는 것을 확인하실 수 있습니다.