안녕하세요 달소입니다.
git을 처음 사용하다보니 이것저것 헤매고있네요 ㅎㅎ
gitlab에 2fa를 등록하고 이것저것 셋팅을 하는중인데 pull이나 뭘 사용해도 id / pw를 요구하니 여간 귀찮은게 아니더라구요..ㅎ
찾아보니 ssh key를 이용한 인증이나 key store를 이용하는 방법이 있습니다.
여기서는 ssh key를 이용해서 진행해보겠습니다.
1. ssk key 생성하기.
제 환경인 linux(wsl) 기반으로 진행하겠습니다.
먼저 연결할 계정으로 로그인하고 홈디렉터리로 이동해주세요.
그리고 아래 명령어를 통해 ssh의 공개키와 개인키를 생성해줍니다.
ssh-keygen -t rsa -b 4096 -C “your_email@example.com”
명령어를 입려ㅕㄱ하면 아래처럼 공개키와 개인키를 저장할 위치를 지정하라고하는데 그냥 Enter로 기본위치에 저장해줍니다.홈디렉터리에 .ssh
그리고 passphrase는 키를사용할때 사용하는 pw를 입력해주세요.
2. ssh-agent에 SSH 키 추가
이제 ssh키를 관리하기 위한 과정을 진행해보겠습니다.
아래 명령어로 ssh-agent의 pid를 확인하고 생성한 개인키를 add 해주시면됩니다.
add하는중 생성할때 사용한 password를 한번입력해주시면됩니다.
eval “$(ssh-agent -s)”
ssh-add ~/.ssh/id_rsa
Github / Gitlab에 생성한 ssh 키 등록하기
이제 생성한 ssh키를 직접 git에 등록해보도록 하겠습니다.
.ssh 디렉터리로 이동해보면 id_rsa / id_rsa.pub 파일이있는데
좌측은 개인키로 안전하게 소유해주시면 되고 id_rsa.pub키는 공개키로 이걸 git에 올려주시면 됩니다.
공개키를 cat 명령어로 확인해서 복사 해주세요.
ssh키를 등록하기위해 git에 웹으로 접속해서 usersetting에 ssh key로 이동해주세요.
Key를 넣어주면 Title은 자동으로 생성되고 만료기간(Expire)만 지정하고 Add Key를 눌러주시면됩니다.
이제터미널에서 ssh key가 잘 등록됐는지 확인해보겠습니다.
ssh -T git@github.com or 아래처럼 깃 도메인. pw를 입력했을때 Welcome ~ 이 잘뜨면 제대로 연결된것입니다.
이제는 git 연결시 https 주소가 아닌 ssh를 통해 진행해주시면 되는데요.
기존에 git을 사용하셨던 디렉토리라면 .git의 파일들을 삭제해주시고 git init 후에 아래 명령어로 연결해주시면됩니다.
git pull도 잘되는걸 확인하실 수 있습니다.
참고 : https://docs.github.com/en/github/authenticating-to-github/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agentGenerating a new SSH key and adding it to the ssh-agent – GitHub DocsAfter you´ve checked for existing SSH keys, you can generate a new SSH key to use for authentication,…docs.github.com
https://docs.github.com/en/github/authenticating-to-github/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-accountAdding a new SSH key to your GitHub account – GitHub DocsTo configure your GitHub account to use your new (or existing) SSH key, you´ll also need to add it to…docs.github.com[Reference] : 달소, 「서버포럼 – git ssh key를 이용해 인증없이 사용하기.」 https://svrforum.com/?document_srl=57913&mid=develop&act=dispBoardContent.