본문 바로가기
개발/AWS

EC2 인스턴스 상에서 SSH URL로 git clone 안될때 : github에 ssh-key가 없기 때문

by 안뇽! 2022. 11. 5.
반응형
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

 

EC2 인스턴스 상에서 git clone 을 하니 터미널에서 위와 같은 에러가 떴다.

 

 

사실 내가 아니면 아무도 들어올 일이 없을 서비스 같아서 HTTPS url로 clone해도 아무 문제 없을 것 같았지만,

SSH로 하고 싶었다.

Github에서 SSH Public Key를 사용하면 모든 데이터가 암호화 되어 전송되기 때문이다.
(SSH에 관한 내용은 여기)

 

사실 HTTPS Url로 git clone하면 에러가 뜨지 않음

git@github.com: Permission denied 에러가 뜨는 이유는 구글링으로 금방 알 수 있었다.

 

나의 git에 ssh key를 설정해주지 않았기 때문이다.

 

SSH KEY 설정방법

혹시 모르니 먼저 EC2 인스턴스에 접속한 터미널에서 이미 만들어진 SSH키가 있는지 확인한다.

cd ~/.ssh
ls

id_rsa, id_rsa.pub 쌍이 있는지 확인한다.

이미 생성된 SSH KEY가 있다면 이렇게 id_rsa, id_rsa.pub 한쌍을 확인할 수 있다.

만약 이 파일들이 없다면 ssh-keygen으로 생성한다.

1. SSH-KEY 생성

ssh-keygen -t rsa -C “본인 GitHub 계정 이메일”

그 후 나타나는 질문들에서 계속 Enter를 치면 기본값 설정으로 (~/.ssh/id_rsa.pub)에 SSH-KEY가 생성된다.

2. 생성된 SSH-KEY 확인하기

cat ~/.ssh/id_rsa.pub

이렇게 생성된 키를 터미널에서 확인할 수 있다.

 

3. 내 깃헙에 등록하기

깃헙에 로그인하고 Settings -> SSH and GPG Keys에 들어간다.

New SSH Key 버튼을 클릭한 후 터미널의 ssh-rsa 를 포함한 모든것을 복사하여 등록한다.

 

 

그 후 git clone을 하면 정상적으로 실행된다.

 


참고자료

https://medium.com/@su_bak/git-github-com-permission-denied-publickey-%EC%97%90%EB%9F%AC-%ED%95%B4%EA%B2%B0-%EB%B0%A9%EB%B2%95-76b0ab741c62

https://www.lainyzine.com/ko/article/creating-ssh-key-for-github/

 

더 자세한 내용

반응형