많은 Git 서버들은 SSH 공개키로 인증을 합니다. 또한 Github 연결시마다 계정정보를 입력해야 하는 번거로움을 제거해 준다. 이번에 입사한 회사에서도 서버에서 SSH를 사용해서 인증하는 시스템을 가지고 있어서 이 기회에 세팅을하면서 적용방법을 정리해 보았다.
SSH 공개키 생성
일단 공개키를 사용하려면 공개키를 만들어야 한다. 그 전에 공개키가 있는지 확인이 필요하다. 기본적으로 사용자의 SSH키들은 사용자의 ~/.ssh
디텍토리에 저장한다. 디텍토리의 파일을 살펴서 공개키가 있는지 확인 할 수 있다.
cd ~/.ssh
ls
보통 id_dsa
나 id_rsa
라고 되어 있다. 그 중 .pub
파일이 공개키이고 다른 파일은 개인키 입니다.
이 파일이 없거나 .ssh 디텍토리가 없으면 ssh-keygen
프로그램으로 키를 생성하여 준다.
터미널 실행하여 다음 명령어를 실행
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
적은 이메일을 레이블로 사용해서 새 SSH 키를 작성한다는 메세지가 출력됩니다.(아래와 같은 메세지가 나온다면 성공입니다.)
> Generating public/private rsa key pair.
SSH Key 저장위치 설정
"키를 저정할 파일을 입력하십시오" 라는 프로프트가 표시되면 Enter를 누르십시오.(기본위치로 지정)
> Enter a file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]
SSH Key 비밀번호 설정
비밀번호 없이 설정할경우 엔터 두번을 눌러주면된다.
> Enter passphrase (empty for no passphrase): [Type a passphrase]
> Enter same passphrase again: [Type passphrase again]
SSH Key 등록
생성한 SSH Key를 등록해 봅시다
터미널을 실행하여 아래 명령어를 실행하여 백그라운드에서 ssh-agent를 시작
eval "$(ssh-agent -s)"
> Agent pid 59566
ssh의 config 파일에 아래 text를 입력
vi ~/.ssh/config
Host *
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_rsa
아래 명령어를 입력하여 SSH Key 값을 ssh-agent에 추가
ssh-add -K ~/.ssh/id_rsa
SSH Key를 Github 계정에 추가
Github 로그인후 우측상단 메뉴에서 Setting
을 클릭
좌측의 Personal settings 메뉴 중에 SSH and GPG keys
클릭
New SSH Key
를 눌러서 Title과 Key를 입력후 Add SSH Key
버튼을 눌러준다.
Key 에는 아래명령어를 사용해서 .pub 의 공개키를 입력해 준다.
cat ~/.ssh/id_rsa.pub
id_rsa.pub 예시
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tjom/BWDSU
GPl+nafzlHDTYW7hdI4yZ5ew18JH4JW9jbhUFrviQzM7xlELEVf4h9lFX5QVkbPppSwg0cda3
Pbv7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8V6RjsNAQwdsdMFvSlVK/7XA
t3FaoJoAsncM1Q9x5+3V0Ww68/eIFmb1zuUFljQJKprrX88XypNDvjYNby6vw/Pb0rwert/En
mZ+AW4OZPnTPI89ZPmVMLuayrD2cE86Z/il8b+gw3r3+1nKatmIkjn2so1d01QraTlMqVSsbx
NrRFi9wrf+M7Q== schacon@agadorlaptop.local
Github SSH key 생성 및 적용하기를 해보았다. Github 연결시 계정정보를 입력해야 하는 번거로움에서 해방돠었다.
SSH 연결 테스트
SSH 를 연결하고 나서 직접 커밋하기 전에 테스트를 해보는 방법을 알아보았다. 연결테스트를 하기 전에 아래 작업들을 모두 완료해야한다.
- SSH 공개키 생성
- SSH Key 등록
- SSH Key를 Github 계정에 추가
먼저 터미널을 엽니다. 그리고 아래 문구를 입력해 줍니다.
$ ssh -T git@github.com
그러면 아래와 같은 경고가 경고문구를 보실 수 있습니다.
The authenticity of host 'github.com (IP ADDRESS)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?
또는
The authenticity of host 'github.com (IP ADDRESS)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)?
위의 같은 메시지중 하나와 일치하는지 확인 후 yes 를 입력해 줍니다. 아래와 같은 멘트가 나오면 성공입니다.
Hi username! You've successfully authenticated, but GitHub does not
provide shell access.
자세한 내용은 아래 링크를 통해 확인 하실 수 있습니다.
https://help.github.com/en/github/authenticating-to-github/testing-your-ssh-connection
'Setting' 카테고리의 다른 글
Webstorm 과 jira 연동해서 사용하기 (0) | 2021.08.26 |
---|---|
Webstorm에서 gitflow 사용하기 (0) | 2021.08.26 |
[VScode] VScode Extension - 확장프로그램 추천 및 설치방법 (0) | 2021.08.26 |
[VScode] Visual Studio Code에서 터미널을 git bash 기본으로 설정하기 (0) | 2021.08.26 |
Mac os에 zsh 세팅하기 (0) | 2021.08.26 |
댓글0