Back-End/Server

SSH의 개념 및 키 생성 방법(Mac OS)

유자맛바나나 2021. 12. 27. 19:30

 

❑ SSH란

시큐어 셸(Secure SHell, SSH)은 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해 주는 응용 프로그램 또는 그 프로토콜을 가리킨다. 강력한 인증 방법 및 안전하지 못한 네트워크에서 안전하게 통신을 할 수 있는 기능을 제공한다. 기본적으로는 22번 포트를 사용한다.
SSH는 암호화 기법을 사용하기 때문에, 통신이 노출된다고 하더라도 이해할 수 없는 암호화된 문자로 보인다.

*출처: 위키피디아
  • 물리적으로 다른 PC에 인터넷으로 접속해 원격으로 제어하는 원격제어를 할 때(=원격 제어 프로그램) SSH를 사용한다. Server PC에 접속하는 것도 원격제어이고, 팀뷰어 같은 소프트웨어도 원격제어 프로그램이다.
  • 유닉스 계열의 OS에는 SSH가 대부분 기본적으로 설치되어 있다. 

 

 동작 과정

  • Client는 사용자가 제어할 때 쓰는 PC이고 Server는 제어될 PC이다.
  • Client에는 SSH Client 프로그램이 설치되어 있어야 하고, Server에는 SSH Server 프로그램이 설치되어 있어야 한다.

출처: 생활코딩 유튜브 Linux- ssh 1 : intro

  • Client PC에서 SSH Client 프로그램을 통해 명령어를 입력하면 아래와 같은 단계를 거쳐 Server PC를 제어하게 된다.
  • 이 과정들은 Web Browser(Client side)와 Web Server(Server side)의 관계와 매우 유사하다. 

출처: 생활코딩 유튜브 Linux- ssh 1 : intro

 

 Mac OS에서 SSH 키 생성하고 사용하기

레퍼런스

https://xho95.github.io/macos/security/openssh/ssh/gitlab/2017/02/22/Using-SSH-on-Mac.html

 

시스템에 SSH가 있는지 확인

$ cd  ~/.ssh
$ ls

~/.ssh 디렉토리가 없거나 해당 디렉토리에 아무런 파일이 없으면 새로 SSH 키를 만들어야 한다

 

SSH 키 쌍생성 명령어

$ ssh-keygen

Mac OS는 유닉스 계열이므로OpenSSH를 기본으로 포함하고 있다. 따라서 위와 같이 명령어를 입력하면 SSH 키 쌍을 생성할 수 있다.

 

SSH 키 쌍 생성시 터미널 Print

$ ssh-keygen
→ SSH 키 쌍 생성 명령어 입력

Generating public/private rsa key pair.
Enter file in which to save the key (/Users/사용자명/.ssh/id_rsa): 그냥 엔터침
Created directory '/Users/사용자명/.ssh'.
→ 일반적으로 그대로 엔터를 눌러 디폴트 값을 사용함

Enter passphrase (empty for no passphrase): 그냥 엔터침
Enter same passphrase again: 그냥 엔터침
→ 보통 passphrase를 입력하지 않으나 원하면 입력한다.

Your identification has been saved in /Users/사용자명/.ssh/id_rsa
Your public key has been saved in /Users/사용자명/.ssh/id_rsa.pub
The key fingerprint is:
SHA256: 해시 알고리즘 키
The key's randomart image is:
[그림 나옴]
→ SSH 키 쌍 생성 완료

 

 

Reference

유튜브 생활코딩 | SSH 개념 | https://www.youtube.com/watch?v=Bxz-1EgyA7w 

SSH 키 쌍 생성 | https://xho95.github.io/macos/security/openssh/ssh/gitlab/2017/02/22/Using-SSH-on-Mac.html