다른 부분은 그럭저럭 따라하지만 Generate 한다음 상단 박스부분이
키라는 것이 좀 애매한 부분이라서 직관적으로 와닿지 않는 부분이 있다
정확하게 저장해주면 좋은데 public 키와 상단 박스키의 내용이 앞뒤로
내용이 약간 다르다
소스트리로 Git SSH 키 사용하기
Git를 할 때, HTTPS로 하는 것보다는 SSH로 하는 것이 보안상 더 안전합니다.
SSH는 계정 및 암호뿐 아니라 상호간 암호 키를 제출해야 합니다.
또한 모든 전송 데이터가 암호화되며 익명을 사용할 수 없습니다.
아틀라시안의 소스트리를 사용하면 좀 더 수월하게, GUI 환경에서 SSH를 사용할 수 있습니다.
https://www.sourcetreeapp.com/
아틀라시안은 비트버킷이라는 자체 Git 호스트를 운영하고 있지만
소스트리는 어떤 Git에서도 작동합니다.
먼저, SSH를 사용하려면 키쌍을 만들어야 합니다.
소스트리에서 키 생성기를 바로 실행할 수 있습니다.
상단 메뉴의 도구 > SSH Key 생성 또는 불러오기
를 선택합니다.
이것은
(프로그램 파일)\Atlassian\SourceTree\tools\putty\puttygen.exe
를 실행한 것과 같습니다.
Generate 버튼을 선택합니다.
이때 마우스를 이리저리 움직여줘야 합니다.
(마우스의 움직임이나 위치를 랜덤 시드로 사용하는 모양입니다.)
오른쪽 아래의 Save private key를 선택해서 적당한 위치에 저장합니다.
이 프라이빗 키는 클라이언트 측에서 제출해야 합니다.
상단 읽기 전용 택스트 박스에 나와 있는
ssh-rsa로 시작하는 퍼블릭 키도 따로 복사해서 저장합니다.
퍼블릭 키는 서버 측에서 제출해야 합니다.
프라이빗 키는
소스트리 상단 메뉴의 도구 > 옵션 > 일반 탭
에서 고를 수 있습니다.
그런데 프라이빗 키를 실제로 제출하는 프로그램은 소스트리가 아니라 Pageant라는 녀석입니다.
시스템 트레이에 이미 실행이 되어 있습니다.
그렇기 때문에 이 변경사항은 즉시 반영이 되지 않고, 소스트리를 재시작해도 반영되지 않습니다.
오른 클릭해서 종료시킨 다음 소스트리를 다시 켜줍니다.
그러면 이 녀석이 소스트리와 함께 자동으로 켜지면서 반영이 될 것입니다.
언제든지 Pageant를 오른 클릭해서 View Keys를 선택하면
키가 제대로 등록되었는지, 어떤 키를 제출하고 있는지를 확인할 수 있습니다.
이제는 퍼블릭 키를 등록할 차례입니다.
퍼블릭 키는 서버가 제출해야 합니다. 즉, 비트버킷이나 기트허브에서 제출해야 합니다.
이를 위해서는 사용자 계정 세팅에서 키를 등록해야 합니다.
각 호스트 사이트에 로그인 한 뒤 개인 설정을 보면 SSH 키 등록 항목이 있습니다.
여기에 아까 복사해뒀던 퍼블릭 키를 등록합니다.
만약 프라이빗 키(ppk)는 있지만 퍼블릭 키를 잃어버렸다면
앞서 사용한 키 생성기의 하단 Load 버튼을 눌러
프라이빗 키를 불러오면 다시 퍼블릭 키를 볼 수 있습니다.
이제 양쪽에 SSH 키를 등록했으니 SSH로 작업을 할 수 있을 것입니다.
리모트 리포지토리의 프로토콜을 HTTPS에서 SSH로 바꿉니다.
소스트리 상단 메뉴의 저장소 > 저장소 설정 > 원격 탭
에서 수정할 원격 이름 항목을 선택하고 하단의 편집 버튼을 누르면 원격 주소를 변경할 수 있습니다.
그런데 막상 소스트리에서 풀이든 푸시든 해보면 시간이 아무리 지나도 완료가 되지 않습니다.
메시지 창을 펼쳐보면 다음과 같은 메시지가 나옵니다.
The server's host key is not cached in the registry. You have no guarantee that the server is the computer you think it is. The server's rsa2 key fingerprint is: ssh-rsa 2048 aa:d1:aa:00:bb:c0:b0:a0:d0:e0:f0:a0:a1:00:11:ee If you trust this host, enter "y" to add the key to PuTTY's cache and carry on connecting. If you want to carry on connecting just once, without adding the key to the cache, enter "n". If you do not trust this host, press Return to abandon the connection.
최초로 SSH를 사용한 서버의 경우, 등록되지 않은 호스트라면서 이런 메시지가 나타나게 됩니다.
명령 프롬프트를 켜고
(프로그램 파일)\Atlassian\SourceTree\tools\putty
로 이동합니다.
plink.exe (서버 호스트 이름)
을 입력합니다.
예를 들면,
plink.exe github.com
그러면 위와 똑같은 메시지가 나오며, y를 입력해서 진행합니다.
이때, 계정과 암호를 묻는데 굳이 입력하지 않고 엔터를 쳐서 끝내도 됩니다.
이제 정말로 SSH를 소스트리로 쓸 준비가 끝났습니다.
이전과 마찬가지로 작업을 하면 됩니다.
ref : http://donggas90.blog.me/220690109105
'버전관리' 카테고리의 다른 글
TortoiseGit & GitLab & SSH key (0) | 2019.07.12 |
---|---|
sourcetree : remote: GitLab: API is not accessible error 오류 (0) | 2018.02.03 |
Perforce 워크스페이스 제거 (0) | 2015.12.23 |
형상관리 SVN 서버 구성 및 설정하기 (0) | 2015.10.27 |
tortoise svn 특정 버전 되돌리기 (0) | 2013.09.09 |