Git 오류Permission denied (publickey).
오류 메시지
터미널에서 돌아온 에러문은 아래와 같습니다.
[email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
리모트 리포지토리를 읽을 수 없어, 액세스권을 작성해 주세요라는 것이었습니다.
해결 방법
SSH key(공개키)를 등록, 혹은 재설정하면 push 할 수 있게 되는 것이었으므로 시험해 보았습니다.
등록 흐름
SHH 명령이란?
SSH는 암호화 기술을 사용하여 원격 호스트에서 안전하게 명령을 실행하는 프로토콜이며, "ssh"는 해당 프로토콜을 사용하여 원격 서버를 원격으로 조작하는 명령입니다.
@IT
SHH 명령을 사용하면 원격 호스트 (SSH 서버)에 로그인 할 수있게된다는 것입니다.
과연, 공부가 되었습니다.
SSH Key (공개 키) 설정 방법
.ssh 디렉토리로 이동하여
$ cd ~/.ssh
명령을 실행합니다.
$ ssh-keygen
id_rsa.pub에 public key(공개 키)가 생성됩니다.
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/xxxx/.ssh/id_rsa):
/Users/xxxx/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
our identification has been saved in /Users/xxxx/.ssh/id_rsa.
Your public key has been saved in /Users/xxxx/.ssh/id_rsa.pub.
pbcopy 명령으로 복사하고,
$ pbcopy < ~/.ssh/id_rsa.pub
GitHub의 설정 화면에서 "New SSH"로 공개 키를 붙여 넣습니다.
공개키가 맞으면 다음 화면이 됩니다.
공개 키가 잘못되면 다음 오류가 반환됩니다.
Key is invalid. You must supply a key in OpenSSH public key format.
다음 명령을 사용하여,
$ ssh -T [email protected]
successfully authenticated를 반환하면 등록이 성공한 것입니다.
Enter passphrase for key '/Users/xxxx.ssh/id_rsa':
Hi user-name! You've successfully authenticated, but GitHub does not provide shell access.
Google 번역해 보면 "인증에 성공했지만 GitHub는 쉘 액세스를 제공하지 않습니다."라는 것.
쉘 액세스는 불가능하지만 SSH 액세스는 가능합니다.
Reference
이 문제에 관하여(Git 오류Permission denied (publickey).), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tetsu-upstr/items/e72147250701cf30ee72텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)