해당 글에서는 github 내에서 발생하는 git@github.com : Permission denied (publickey) 오류에 대해서 해결하는 방법에 대해 알아봅니다
1) 문제점
💡 문제점
- 아래와 같이 연결된 repository 내에 git pull 명령어를 수행하였을 때, 문제가 발생하고 있습니다.
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.
1. git 연결 테스트
💡 git 연결 테스트
- 해당 repository의 문제인지 아닌지 확인을 위해 실제로도 github에 연결에 대한 테스트를 수행합니다. - 아래와 같이 permission deined(publickey) 문제가 발생하고 있습니다.
# ssh 연결 테스트
$ ssh -T git@github.com
2) 해결방법
💡 해결방법
- SSH 공개키가 GitHub에 등록되어 있지 않거나, SSH 에이전트에 키가 로드되지 않아서 발생하는 문제입니다. - 새 맥/PC로 이전 후 GitHub에 새 머신의 공개키를 등록 안 한 경우, 또는 키체인 문제로 에이전트에서 키가 날아간 경우 발생하는 문제라고 합니다.
1. SSH 키 존재 확인
💡 SSH 키 존재 확인
- 루트 경로에 SSH 키가 존재하는지 확인합니다. - 해당 경로에 id_rsa.pub 또는 id_ed25519.pub 파일이 있어야 정상입니다.
ls -al ~/.ssh
2. SSH 키를 생성합니다.
💡 SSH 키를 생성합니다.
- Enter file in which to save the key → 그냥 Enter(기본 경로 사용) - Enter passphrase → 그냥 Enter (비밀번호 없음) - Enter same passphrase again → 그냥 Enter
# 아래의 명령어를 입력하여 SSH 키를 생성합니다.
$ ssh-keygen -t ed25519 -C "your_email@example.com"