본문으로 건너뛰기
Linux · CLI 기초집LESSON 16

SSH 기초와 공개키 인증 원리

난이도입문 → 초급
예상 시간30분
선수지식이전 강의

16강. SSH 기초와 공개키 인증 원리

1. 이번 강의에서 해결할 문제

SSH 키를 만들 때 기본 파일을 덮어쓰거나 개인 키를 공유하면 기존 접속 권한과 보안이 손상됩니다. 키 쌍의 역할과 파일 경계를 먼저 이해합니다.

2. 학습 목표

3. 핵심 개념

SSH는 암호화된 원격 셸과 파일 전송을 제공합니다. 공개키 인증에서는 개인 키가 로컬에 남고 공개 키만 서버의 authorized_keys에 등록됩니다. 서버는 공개키로 서명을 검증하며 개인 키 자체를 받지 않습니다. 이 과정은 원격 서버 접속을 요구하지 않고 전용 키 파일과 설정 문법만 확인합니다.

Ubuntu OpenSSH 공식 문서는 ed25519 키와 개인·공개 키 경계를 설명합니다.

4. 단계별 명령어와 예시

1. Ubuntu Bash(WSL)

실행 위치: Ubuntu 홈 디렉터리

대상: 과정 전용 SSH 키 ~/.ssh/id_ed25519_cli_course

Ubuntu Bash(WSL)
mkdir -p "$HOME/.ssh"
chmod 700 "$HOME/.ssh"
key_path="$HOME/.ssh/id_ed25519_cli_course"
if test -e "$key_path" || test -e "$key_path.pub"; then
echo "실습 키가 이미 있어 덮어쓰지 않습니다."
else
ssh-keygen -t ed25519 -f "$key_path" -C "cli-course@example.test"
fi
ls -l "$key_path"* 2>/dev/null

예상 결과: 암호문구 입력 후 전용 개인 키와 .pub 공개 키가 생성되거나 기존 파일 보호 안내가 표시됩니다.

2. Ubuntu Bash(WSL)

실행 위치: 홈 디렉터리

대상: 공개 키 지문만 확인

Ubuntu Bash(WSL)
ssh-keygen -lf "$HOME/.ssh/id_ed25519_cli_course.pub"

예상 결과: 키 종류와 지문이 표시되며 개인 키 내용은 출력하지 않습니다.

5. 명령어가 동작하는 이유

ed25519는 현대적인 공개키 알고리즘입니다. ssh-keygen은 개인 키와 공개 키를 분리해 만들고, 지문은 키 전체를 공개하지 않고 식별하는 짧은 값입니다.

6. 자주 하는 실수와 안전한 해결법

7. 직접 실습

8. 이해 점검 질문 3개

9. 핵심 요약

MINI QUIZ

SSH 기초와 공개키 인증 원리 미니 퀴즈

선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.

0 / 2
  1. 문제 1“SSH 기초와 공개키 인증 원리”의 위험한 선택을 피하려면 어떤 원칙을 적용해야 하나요?
  2. 문제 2“SSH 기초와 공개키 인증 원리”의 작업 기준으로 ‘처음 보는 호스트 키 경고를 무조건 승인’을 진단하거나 바로잡은 선택은 무엇인가요?
LESSON STATUS

학습을 마쳤나요?

직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.

16강. SSH 기초와 공개키 인증 원리 미완료 상태