• 카테고리

    질문 & 답변
  • 세부 분야

    개발 도구

  • 해결 여부

    미해결

SSH key 관련 질문

21.08.14 22:59 작성 조회수 259

0

선생님 안녕하세요! git에 대해 진짜 쉽고 재밌게 잘 가르쳐주셔서 감사합니다 :)
다름이 아니라 한가지 궁금한 점이 있는데, github 에서 SSH key 는 언제 사용하는 것일까용?
강의에서는 다뤄주신 적이 없어서 저도 필요 없는 줄 알았는데, 다른 팀원들이 ssh key 이야기를 하더라구요...!
구글에서 찾아봐도 해당 키 설정이 필수라는 이야기는 없어서 여쭤봅니다!

답변 2

·

답변을 작성해보세요.

1

음.. 글자 색이 좀 이상하긴 한데,, 아무튼 추가적으로 궁금하신게 있다면 언제든 말씀주세요! 그리고 강의 좋게 들어주셔서 감사합니다

maschuli님의 프로필

maschuli

질문자

2021.08.22

정말 상세한 답변 감사드립니다!! ^_^ 다시 한 번 시도하고 설명해주신 내용대로 제 레퍼지토리에서 좀 이것저것 만져보다보면 알 것 같아요!

git 수업 재밌고 쉽게 잘 들었습니다~! 다른 강의도 꼭 기다리고 있겠습니다 :) !!

1

안녕하세요 :) 우선 ssh가 무엇인지부터 말씀드리는게 좋을 것 같네요.

ssh는 안전하게 특정 서버에 연결할 수 있는 프로토콜입니다. 

안전하게 어떤 서버에 접속하거나 연결할 때 ssh를 사용합니다.

github와 우리 컴퓨터는 https로도 통신할 수도 있고, ssh로도 통신할 수 있습니다.

그래서 아래 사진 처럼 어떤 github repository를 clone하려고 하면

https로도, ssh로도 clone할 수가 있습니다.

 

강의에서는 기본적으로 https를 이용해 github와 통신했기 때문에, ssh와 관련해서는 크게 다루지 않았습니다.

다만 ssh를 이용해 gihtub (혹은 gitlab, bitbucket 같은 다른 원격 저장소)와 연결하려면 

몇 가지 설정(ssh 키 생성, 등록)을 해야 합니다.

1. 우선 git bash를 열고 아래 명령어를 쳐 보세요. 

$ cd ~/.ssh
$ ls

만일 아래와 같은 내용이 나온다면 이미 ssh 키가 생성이 된 겁니다.

authorized_keys2  id_dsa       known_hosts
config            id_dsa.pub

2. 만일 아무것도 나오지 않는다면 아래 명령어로 ssh 키를 생성할 수 있습니다.

$ ssh-keygen

ssh-keygen 명령어를 입력하면 아래와 같은 내용들이 나올겁니다

Generating public/private rsa key pair.
Enter file in which to save the key (/home/xxx/.ssh/id_rsa):     // ssh 키를 저장하고 싶은 디렉터리를 지정합니다. 그냥 엔터 치셔도 됩니다
Created directory '/home/xxx/.ssh'.
Enter passphrase (empty for no passphrase):   // ssh 키 비밀번호 입력
Enter same passphrase again:                  // ssh 키 비밀번호 한 번 더 입력
Your identification has been saved in /home/schacon/.ssh/id_rsa.
Your public key has been saved in /home/schacon/.ssh/id_rsa.pub.
The key fingerprint is:
d0:82:24:8e:d7:f1:bb:9b:33:53:96:93:49:da:9b:e3 schacon@mylaptop.local

3. 위와 같은 절차를 거치셨다면 ssh 키가 생성이 되었을 겁니다. 아래 명령어를 치면 이상한 문자열들이 나올텐데, 그게 ssh 키 (정확히는 "공개 키") 라고 보시면 됩니다

$ cat ~/.ssh/id_rsa.pub

위 명령어를 쳤을 때 나오는 문자열을 그대로 github에 ssh 키를 등록하는 곳 (링크 : https://github.com/settings/ssh/new)의 Key 에 등록해주면 됩니다. (Title은 아무거나 넣어주셔도 됩니다. "내 컴퓨터", "누구누구 컴퓨터" 이런 식으로요) 

[자세한 내용]

https://git-scm.com/book/ko/v2/Git-%EC%84%9C%EB%B2%84-SSH-%EA%B3%B5%EA%B0%9C%ED%82%A4-%EB%A7%8C%EB%93%A4%EA%B8%B0

https://brunch.co.kr/@anonymdevoo/10