개발회사에서 협업 툴로 github, Bitbucket 등을 사용한다. 나의 경우는 Bitbucket을 사용하고 있다.
그런데 매번 push나 pull할 때 password를 물어봐서 귀찮긴 했었다. 그래서 오늘, 매번 치지 않게 설정하는 걸 해봤다.
참고로 터미널에서 명령어로 설정하는 방법이다. 내 경우는 라즈베리파이 4에서 설정하였다.
1. SSH keygen으로 키 생성
cd .ssh
ssh-keygen
터미널에서 위와 같이 명령어를 입력하면, public/private rsa 키가 생성된다.
file을 입력하라고 나오면 id_rsa형식으로 입력하면 된다.
passphrase를 치라고 하면 해당 개발서버(나의 경우는 Bitbucket)의 비밀번호를 입력한다.
그러면 key fingerprint라면서 이상한 숫자와 문자의 조합이 뜨고, key randomart image라면서 그럼 같은 게 하나 그려진다.
2. 개발서버 세팅
나의 경우는 Bitbucket 웹페이지에서
Bitbucket Setting - SECURITY - SSH keys 페이지로 들어간 다음, ADD key 버튼을 눌러 key를 입력하여 세팅을 마무리했다.
여기서 말하는 key는 터미널에서 다음과 같이 입력하여 찾을 수 있다.
cat id_rsa.pub
아까 만든 public 키를 cat하면 나오는 게 key다.
맨 끝에 붙어있는 서버 이름같은 것만 빼고 복붙하면 된다.
3. SSH 에이전트 실행
다음 명령어로 SSH 에이전트를 백그라운드로 실행시킨다.
eval $(ssh-agent -s)
※ 다음을 하기 이전에 혹시 그 전에 SSH방식이 아니라 HTTPS방식으로 개발서버와 주고 받고 있었다면, SSH방식으로 바꿔주는 스텝도 필요하다. 다음 명령어로 세팅을 바꿔준다.
git remote set-url origin (YOUR-URL)
YOUR-URL부분에는 개발서버에서 clone시 가져오는 url중에서 SSH형식으로 된 url을 복붙하면 된다.
4. key 등록
이제 만든 키를 등록만 하면 된다.
ssh-add ~/.ssh/id_rsa
ssh-add라는 명령어를 사용해서 아까 만든 키를 등록하면 된다.
※ 다른 프로젝트에서 push나 pull을 하려고 하면 denied가 뜨면서 실패할 것인데, 그건 아까 3번 과정에서 추가한 프로젝트에만 해당하기 때문이다. 다른 프로젝트에서도 자동 로그인처럼 사용하려면 4번 과정을 해줘야한다.
ssh-add -l //등록된 key의 list를 보여준다. //아마 결과는 The agent has no identities.일 것이다. ssh-add ~/.ssh/id_rsa //4번 과정
ssh-add -l //등록된 key의 list를 보여준다.
//아마 결과는 The agent has no identities.일 것이다.
ssh-add ~/.ssh/id_rsa //4번 과정
'etc.' 카테고리의 다른 글
뉴진스 1박 2일 촬영지 다녀온 후기 (0) | 2024.06.09 |
---|---|
Admob, Adsense, Adfit 사용중 비교 (0) | 2024.05.06 |
LNK2001 링크 에러 해결 방법 (0) | 2021.01.11 |
Sigrok libserialport library 사용 시 port configuration 2가지 방법 (0) | 2020.12.02 |
The breakpoint will not currently be hit 에러 해결방법 (0) | 2020.11.16 |