[github] ssh 설정하기

스윗포테이토·2023년 1월 6일
1

지난 글에 git token을 캐싱해서 매번 입력하지 않도록 설정을 바꿔보았다. 그러나 github actions로 쉘 스크립트를 실행하는 중에 문제가 생겼다. 따라서 github 접속 방법을 https에서 ssh로 바꿔보려고 한다.

1. ssh 키 생성

ssh-keygen

로컬에서 실행해도 되고, 서버(EC2)에서 직접 실행해도 된다.

딱히 설정할 것이 없다면 그냥 엔터만 쳐주면 된다.

2. github에 키 등록

[Settings] > [SSH and GPG keys]

Title은 구분 가능한 이름, key는 아까 생성한 공개키(id_rsa.pub)을 등록해주면 된다.

3. ssh config 파일 작성

우선 config 파일 작성에 앞서 비밀키를 서버에 위치시켜야 한다.
서버에서 직접 생성했다면 ~/.ssh/id_rsa 로 생성되어 있을 것이다.

읽기 권한을 read-only로 수정한다.

sudo chmod 400 id_rsa

~/.ssh/config파일에 비밀키 위치를 작성해준다. 이미 존재한다면 뒤에 덧붙이면 된다.

Host github.com
  IdentityFile ~/.ssh/id_rsa

4. url 변경하기

만약 clone 받기 전이라면, https가 아닌 ssh를 사용하면 된다.

git clone git@github.com:USERNAME/REPOSITORY.git

이미 clone 받은 레포라면 pull, push 등을 할 때 사용하는 URL이 설정 파일에 들어 있을 것이다.

ssh방식으로 바꾸고 싶다면 아래 명령어를 실행하면 된다.

git remote set-url origin git@github.com:USERNAME/REPOSITORY.git

이후 git pull을 해보면 fingerprint를 등록할거냐고 묻고, 여기서 yes를 하면 pull이 되는 모습을 볼 수 있다.

profile
나의 삽질이 미래의 누군가를 구할 수 있다면...

0개의 댓글