이거 안하니까 푸쉬가 안되더라.
You can access and write data in repositories on GitHub.com using SSH (Secure Shell Protocol).
cmd창에
ssh-keygen -t rsa -b 4096 -C “<email address>”
하고 이후 물어보는거 잘 적으면 됨.
처음 물어보는건 키 파일 이름
두번째 물어보는건 암호인가.
-C는 uppercase임에 유의
이러고 나면 위 명령어를 실행시킨 경로에
keyname
keyname.pub
두개의 파일이 만들어짐. .pub은 공개키임. 다른 사람이 봐도 됨
.pub이 아닌 거는 private key임. 혼자 안전하게 간직하세요.
.pub파일의 내용을 복사하고서
github page에 우측 상단에서
Settings > SSH and GPG keys > SSH keys 옆에있는 New SSH key버튼
title은 그냥 본인이 알아볼 수있게 지으면 되고
그 아래 key에 복사한 내용을 붙여넣기
로컬키는 어케 하냐면
ssh-add -K ~/.ssh/{키 이름}
하라는데
user폴더에 위에서 만든 private key를 넣고(.ssh폴더가 user에 있길래.)
우분투 쉘 틀어서 경로를 잘 이동해서
ssh-add -K ./.ssh/{키 이름}
했더니
Enter PIN for authenticator:
이렇게 뜨고 키 생성할 때 passphrase 입력한거 쳤더니 애러 뜸.(사실 내가 어떤 passphrase했는지 기억이 안남.)
그래서 알아보니 -K를 빼는 법이 있다고 함.
ssh-add ~/.ssh/{키 이름}
그랬더니 아래와 같은 오류가 뜸
Permissions 0777 for './.ssh/{키 이름}' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored.
구글링했더니
chmod 400 ./{key_name}
하라는 말이 있어서 했는데, 0777이 0555로 바뀜…
또또 알아보니
https://stackoverflow.com/questions/39404087/pem-file-permissions-on-bash-on-ubuntu-on-windows
key가 우분투상에 home/{username} 에 있어야 chmod 명령어가 잘 작동한다고 함.
mv 명령어로 옮기고 ssh-add명령어 실행했더니 passphrase 묻고 잘 실행됨.
근데 여전히 푸쉬가 안됨
다시 ssh-add 했더니
Could not open a connection to your authentication agent.
이럼.
아… key 이름은 id_rsa여야 하고 user폴더에 있는 .ssh폴더 안에 있어야함.
아니 나는 이름 맘대로 해도 되는 줄 알았지.
ssh -vT git@github.com
이 명령어 쳐서 알았다.
'알 수 없는 오류 해결' 카테고리의 다른 글
mysqli_connect() 에러: No such file or directory (0) | 2022.10.04 |
---|---|
php_mySQL 연동 애러 해결 (0) | 2022.09.28 |