Skip to content
On this page

SSH (Secure Shell)

임대한 서버에서 어떤 작업을 하려고할 때마다 원격 서버가 존재하는 IDC까지 직접 이동해서 작업을 하긴 힘들다. 서버를 호스팅 받고 나면 일반적으로 서버 아이피, root 패스워드, 또는 SSH 개인키/공개키가 주어진다. 이 정보를 이용해 원격으로 서버를 제어할 수 있다.

GUI 원격 제어

  • 원격 데스크톱 프로토콜(RDP; Remote Desktop Protocol)을 통해 서버를 GUI로 제어 할 수 있다.
  • RDP는 MS사에서 개발한 프로토콜로, Windows에는 원격 데스크탑 프로그램(서버 및 클라 이언트)이 포함되어 있다.
  • 하지만 Unix 계열 OS는 기본적으로 RDP 프로그램를 포함하지 않는다. 물론 RDP와 유사한 많은 오픈 프로토콜들이 개발되어 Unix 계열 서버를 GUI를 통해 원격 제어하는 것도 불가능하지는 않다.

CLI 원격 제어

  • Unix 계열 OS는 SSH(Secure Shell) 프로토콜을 통해 서버를 CLI로 제어 할 수 있다.
  • SSH는 서버와 클라이언트간의 인증 및 패킷 암호화를 위한 프로토콜 또는 그 프로그램을 일컫으며, 쉽게 는 SSH는 안전한 원격 셸이라고 생각해도 좋다.
  • Unix 계열 OS는 기본적으로 SSH 프로그램(서버 및 클라이언트)을 포함하고 있다.
  • Windows 서버도 PowerShell 이라는 프로토콜을 통해 CLI 원격 제어를 제공할 수 있다.

SSH 서버 및 클라이언트

  • sshd는 기본적으로 22번 포트를 사용
  • 연결시 원격 서버와 인증과정을 거치게 된다.
    • 로그인, 패스워드 기반 인증
  • 인증 성공 시 ssh는 원격 서버에서 CLI 셸을 실행. 종료하려면 exit
  • 서버 sshd 측에서 비대칭키 기반 인증을 요구하는 경우 개인키가 필요하다.
    • 개인키와 쌍을 이루는 공개키가 원격 서버의 user의 특정 파일에 등록되어 있어야 한다.

reference

LINKS TO THIS PAGE

Edit this page
Last updated on 8/13/2022