이번시간에는 Secure Shell
, 줄여서 ssh
를 통해 원격저장소를 사용하는 방법에 대해 알아보겠습니다.
저번시간에는 https
링크를 통해 clone
을 사용했습니다.
하지만 단점은 원격저장소에 접근할때 로그인을 해야한다는 단점이 있었습니다.
ssh
의 가장 강력한 장점은 원격 저장소를 이용할때마다 로그인을 하지 않아도 된다는 점입니다.
자동로그인을 위한 방식이 아니라 또다른 통신방식입니다.
ssh-keygen
을 입력하고 아무것도 입력하지않은채 엔터를 3번 눌러줍니다. 그러면 ssh
를 통해서 다른 컴퓨터로 접속할 수 있는 비밀번호가 생깁니다.
현재 만든 비밀번호는 아주 복잡하게 만들어 졌기 때문에 해킹으로 뚫릴 가능성은 현재기술로 거의 불가능합니다.
현재 저는 저장된 위치가 /c/Users/김현준/.ssh/id_ras
에 저장되었습니다.
홈 디렉토리에 저장되었으므로 cd ~/.ssh
로 이동해준후 파일 목록을 보면 정상적으로 저장된 것을 확인 할 수 있습니다.
id_ras
는 private key
를 의미하고 id_rsa.pub
는 publice key
를 의미합니다.
즉 기존에 사용하는 컴퓨터에는 private key
를 저장하고 다른 컴퓨터 환경에서 사용할때는 public key
를 사용하면 됩니다.
그러면 id_rsa
를 만들때 같이 생성된 id_rsa.pub
파일이 같이 저장되어있는 컴퓨터에 접속할때 비밀번호를 입력하지 않고도 두 개간의 컴퓨터를 안전하게 로컬 컴퓨터가 서버 컴퓨터에 로그인 할 수 있습니다.
따라서 자신의 로컬 컴퓨터에는 private key
, 원격 저장소가 있는 컴퓨터에는 publice key
가 저장됩니다. 그리고 자신의 private key
는 절대로 노출되면 안되고 , publice key
가 있는 컴퓨터가 있으면 자동 로그인이 가능합니다.
그리고 cat id_rsa.pub
로 통해 비밀번호 내용을 복사 해줍니다.
이후 github
프로필에서 Setting
를 들어가봅시다.
이후 좌측의 ssh and gpg keys
를 클릭하고 저장소의 이름과 아까 저장한 비밀번호를 넣어줍니다.
그리고 add ssh key
입력시 정상적으로 추가가 된것을 확인 할 수 있습니다.
따라서 현재 github
라는 원격 저장소에 publice key
를 저장한 것입니다.
그러므로 id_rsa
라는 private key
를 가지고 있는 사람은 id_rsa.pub
라는 publice key
를 가지고 있는 저장소를 사용할 수 있습니다.
github
로 돌아가서 새로운 repository
를 만들어 줍시다.
그리고 ssh
링크를 복사해줍니다.
그리고 git clone
을 이용해 링크와 , 저장할 폴더의 이름을 넣습니다.
cd gitgth_ssh
로 이동한 후에 f1.txt
파일을 만들고 add
와 commit
를 해줍니다.
그리고 git push
를 통해서 원격 저장소에 파일을 저장할 수 있습니다.
github
에도 파일이 정상적으로 올라갔습니다.
지금까지 ssh
를 이용하여 비밀번호를 직접 입력하지 않고 보다 안전하게 저장소를 이용하는 방법에 대해 알아봤습니다.
여기까지 하도록 하겠습니다.