https://docs.github.com/ko/get-started/git-basics/about-remote-repositories#cloning-with-https-urls
정책이 바뀌어 이제 github 비밀번호로는 clone, fetch, pull, push 와 같은 명령을 수행할 수 없다.
그래서 PAT, ssh-key 를 사용해야하는데그래서 PAT, ssh-key 를 사용해야하는데
우선 계정 설정에서 Developer settings 에 들어가자
이제 git clone 명령어를 입력한 뒤 pw 대신에 pat 을 넣으면 된다.
우선 아래 명령어로 전체적으로 키가 존재하는 지 확인하고
ls -al ~/.ssh
ssh-keygen -t ed25519 -C "your_email@example.com"
ssh-keygen
: SSH(Secure Shell) 인증에 사용되는 키 쌍을 생성하는 유틸리티.
이 도구는 공개키와 private key로 구성된 키 쌍을 생성하여 비밀번호 없이 안전하게 원격 시스템에 접속할 수 있게 해준다.
-t
: 생성할 키의 타입(type)을 지정, 어떤 암호화 알고리즘을 사용할지 결정한다.
ed25519
: 암호화 알고리즘
-C
: 주석(Comment)을 추가, 키를 식별하기 위한 메타데이터를 추가.
명령어를 실행하면
기본적으로 ~/.ssh/ 디렉토리에 저장된다. 개인키는 id_ed25519, 공개키는 id_ed25519.pub이라는 이름으로 저장된다.
이때, passphrase
암호를 설정할 수도 있다.
암호를 설정하면 해당 key 를 사용할 때마다 비밀번호를 입력해야한다. 그래서 그냥 안 하는 것을 추천(권장X).
키 쌍이 생성되면 개인키는 절대 공유해서는 안 되는 비밀 정보이다.
공개키는 접속하려는 원격 서버의 ~/.ssh/authorized_keys 파일에 추가된다.
cat ~/.ssh/id_ed25519.pub
SSH 공개키 파일의 내용을 터미널에 출력하는 명령어
cat
: concatenate의 약자로 파일의 내용을 화면 표시하는 명령어이다. 옵션을 사용하면 여러 파일의 내용을 연결해서 보여줄 수도 있다.
~
: 현재 사용자의 홈 디렉토리를 의미한다.
.ssh/
: SSH 관련 설정 파일들이 저장되는 디렉토리이다. 참고로 .
으로 시작하는 디렉토리는 숨김 디렉토리이다.
이 디렉토리는 SSH 키, 설정 파일, 알려진 호스트 정보 등을 저장합니다.
id_ed25519.pub
: ED25519 알고리즘으로 생성된 SSH 공개키 파일이다. 참고로 확장자가 없는 개인키는 절.대. 밖으로 나가면 안 된다.
ssh key 는 클론 받을 원격 인스턴스에 ssh 키를 생성 후 여기서 등록해주면 된다.
ssh -T git@github.com
git clone git@github.com:your-org/your-repo.git