github 계정 2개를 사용하기 위헤 ssh 서버에 key 등록을 했으나 터미널을 재부팅 할 때 마다 저장된 ssh key가 날라갔습니다.
SSH는 Secure Shell의 줄임말로, 원격 호스트에 접속하기 위해 사용되는 보안 프로토콜입니다.
그래서 몇 번은 ssh key 등록 과정을 반복했습니다. ssh-agent에 key 등록하고, 비밀번호 입력하고, ssh 접속하고....
ssh key 등록 과정
$ ssh-add -l # 등록된 ssh 확인
$ eval "$(ssh-agent -s)" # 백그라운드로 ssh-agent 실행
$ ssh-add ~/.ssh/id_rsa_[계정] # ssh key 등록
$ ssh -T git@[config파일의 Host 이름] # ssh 접속
이 과정을 반복하다가 도저히 안되겠다 싶어 해결 방법을 찾아 해결했습니다.
해결 방법은 간단합니다.
$ ~/.ssh/config
파일 맨끝에 다음을 추가해줍니다.Host *
AddKeysToAgent yes
UseKeychain yes
$ ssh -T git@[config파일의 Host 이름]
AddKeysToAgent
는 ssh 개인 키를 ssh 에이전트에 추가하여 인증 프로세스를 간소화하는 옵션입니다.
UseKeychain
는 macOS 시스템에서 SSH 개인 키를 관리하는 Apple Keychain을 사용하도록 지정하는 옵션입니다. 이 옵션은 macOS에서만 유효합니다.
이것 때문에 거의 하루 종일 삽질 했는데 생각보다 해결 방법은 간단했습니다.ㅠㅠㅠㅠ
해결하면서 참고한 곳입니다.
ssh-add is not persistent between reboots
Github Docs: ssh-agent에 SSH 키 추가