Git 정리(2편)

goya3014·2021년 7월 2일
0

git

목록 보기
2/2

요즘 인프런에서 노드 관련 강의를 듣던 중 맥을 사용하시는 강의자의 명령어가 윈도우를 사용하는 내게 통하지 않아 검색하던 중 Git Bash라는 것을 알게되었다.

git bash란?

OS에 상관없이 쓸 수 있는 리눅스 베이스의 터미널용 Git이다.
이것을 사용하면 window에서도 리눅스 명령어를 사용하는 것이 가능하다.

현재 강의를 들으며 작업중인 소스 코드를 올리려고 하는데, 컴퓨터와 깃허브 서버와의 안전한 통신을 위해 SSH를 사용한다는 것을 알게되었다.

SSH(Secure Shell)란?

네트워크 프로토콜 중의 하나로, 네트워크 상의 다른 컴퓨터와 통신시 안전하게 통신하기 위해 사용하는 프로토콜이다.

데이터 전송시, 원격 제어시

예를 들어, 소스 코드를 원격 저장소인 Github에 올리려고 할 때 SSH를 통해 데이터를 전송한다.
클라우드 사용에서도 서버에서 해당 머신에 대한 명령을 내리고자 할 때 SSH를 통해 접속하게 된다.

SSH의 통신방식

SSH는 한쌍의 Key를 이용해 접속하려는 컴퓨터와 인증 과정을 거치게 된다.

Public Key
Private Key

먼저 Public Key를 통신하고자 하는 컴퓨터에 복사하여 저장한다. 이후 클라이언트 사이드 컴퓨터의 Private Key와 응답을 하는 서버 사이드 컴퓨터에 복사되어 저장된 Public Key와 서로 한 쌍의 Key인지 여부를 검사한다.

이렇게 서로 관계를 맺고 있는 Key라는 것이 증명이 되면 비로소 두 컴퓨터 사이에 암호화된 채널이 형성이 되어 Key를 활용해 메시지를 암호화하고 복호화하며 데이터를 주고 받을 수 있게된다.

profile
이제 막 첫걸음을 시작한 주니어 개발자입니다.

0개의 댓글