[환경구축][쿠버네티스][TIL]가상 서버 + SSH 공개키 인증 설정
2025. 8. 26. 13:00ㆍ대외활동/인공지능사관학교
728x90
반응형
SMALL

쿠버네티스 실습 환경을 만들면서 가장 먼저 부딪힌 부분이 바로 SSH 접속 환경이었다. 가상 서버를 띄우고도 OpenSSH가 없으면 접속조차 못 하고, 공개키 인증을 설정하지 않으면 매번 비밀번호를 입력해야 했다.
오늘은 쿠버네티스 실습 환경을 만들면서 겪었던 SSH 접속 환경 설정 과정을 정리해봤다. 이번 과정을 정리하면서, 앞으로 서버 환경을 세팅할 때 초기 보안 설정과 편의성 확보를 동시에 챙길 수 있다는 점을 기록해 두고자 한다.
1. 가상 서버 생성 시 OpenSSH 여부
- 대부분의 클라우드 VM 이미지(Ubuntu, CentOS 등)에는 OpenSSH Server가 기본 포함되어 있다.
- 하지만 Minimal 이미지를 선택하면 빠져 있을 수 있다.
- 이 경우 서버에 직접 들어가서 설치해야 한다.
# cmd 창에서 ssh 계정@ip 들어간 환경에서 실행하기!
sudo apt update
sudo apt install -y openssh-server
# 설치 후 확인
systemctl status ssh
2. SSH 공개키 발급 & 등록
1) 로컬에서 키 발급
# 윈도우 cmd 창에서 실행하기!
ssh-keygen -t rsa -b 4096

→ id_rsa(개인키), id_rsa.pub(공개키) 생성


2) 공개키만 서버에 등록
서버 접속 후 .ssh 디렉토리에서 작업

exit 하고 다시 로그인해서 확인해야 한다.
3. 편리한 점
- 매번 비밀번호 입력 없이 ssh 계정명@IP로 바로 로그인 가능
- 자동화 스크립트, 쿠버네티스 설정, Ansible 같은 툴에서 비밀번호 프롬프트 없이 바로 서버 관리 가능
- 여러 서버(마스터 + 워커 노드) 관리할 때 생산성이 크게 향상됨

4. 주의할 점
- 개인키(id_rsa)는 절대 유출되면 안 된다 → 유출되면 누구든 서버에 로그인 가능
- authorized_keys 퍼미션을 제대로 안 주면(600 미만) 접속이 막히거나 보안 경고 발생
- 여러 서버 환경에서 키를 잘못 섞어 쓰면 인증 오류 발생 → 키 관리 체계 필요
개인적으로 처음 키를 만들 때가 window10버전이어서 rsa 키만 생성이 되어서 rsa로 키를 생성했지만 최근에는 ed25519 ssh 키로 많이 만든다.
아래는 두 키를 비교한 내용이다. 키는 생성할 때 명령어의 차이로 만들어 질 수 있다.
5. RSA vs ED25519 SSH 키 비교
| 항목 | RSA | ED25519 |
| 알고리즘 | 공개키 암호화의 고전적인 방식 (RSA) | 타원곡선 기반 서명 방식 (EdDSA/Curve25519) |
| 보안 강도 | 보안성은 키 길이에 비례 (2048bit 이상 권장, 4096bit 추천) | 기본 256bit지만, 동등 보안 강도는 RSA 3000~4000bit 수준 |
| 키 길이 / 파일 크기 | 길고 무겁다 (4096bit 키는 길다) | 매우 짧고 가볍다 |
| 속도 | 생성, 서명, 인증 속도가 상대적으로 느림 | 훨씬 빠르고 효율적 (특히 저사양 서버, IoT에서도 유리) |
| 호환성 | 거의 모든 환경/구버전 서버에서 지원 | 최신 OpenSSH(버전 6.5 이후)에서만 지원, 일부 구형 시스템은 호환 안 됨 |
| 권장 상황 | 레거시 시스템, 호환성이 중요한 경우 | 최신 시스템, 보안과 성능을 모두 원하는 경우 |
SSH 키 생성 명령어 옵션 해설
1) RSA 키 생성
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
- ssh-keygen : SSH 키(개인키 + 공개키) 생성 명령어
- -t rsa : 키의 타입(type) → RSA 알고리즘으로 생성
- -b 4096 : 키 길이(bit length) → 4096bit 보안 강도 (일반적으로 2048 이상 권장)
- -C "your_email@example.com" : 키 식별용 주석(comment), 주로 이메일을 입력
2) ED25519 키 생성
ssh-keygen -t ed25519 -C "your_email@example.com"
- -t ed25519 : 키 타입을 ED25519(타원곡선 기반)으로 지정
- -C "your_email@example.com" : 주석(식별용)
- (참고) ED25519는 내부적으로 256bit로 고정되어 있어 -b 옵션 필요 없음
기억 포인트
- -t : 알고리즘 타입 선택 (rsa, ed25519 등)
- -b : 키 길이 지정 (RSA/ECDSA만 해당, ED25519는 고정)
- -C : 누구의 키인지 표시하는 주석
👉 따라서 RSA는 길이를 조정할 수 있고, ED25519는 더 짧고 안전하며 기본 설정으로 충분하다.
- ED25519: 더 짧고 안전하며 빠르다. → 최신 환경에서는 기본 선택
- RSA: 호환성은 넓다. → 구형 시스템이나 기업 환경에서 여전히 쓰임
👉 지금 쿠버네티스 실습 환경(최신 Ubuntu라 가정)이라면 ED25519 키 생성을 추천함.
정리(회고)
- VM 생성 시 OpenSSH가 자동으로 설치되지 않을 수도 있으니 꼭 확인해야 한다.
- 공개키 기반 인증을 설정하면 비밀번호 입력의 번거로움 없이, 특히 쿠버네티스 멀티 노드 환경에서 훨씬 수월하게 서버 관리가 가능하다.
- 하지만 개인키 보안 관리와 권한 설정은 필수!
728x90
반응형
LIST
'대외활동 > 인공지능사관학교' 카테고리의 다른 글
| [AI Crew][특강] 클라우드 시대의 준비 – 취업 전략부터 네이버 클라우드 동향까지/네이버클라우드특강3 (1) | 2025.08.28 |
|---|---|
| [TIL] Kubernetes Pod 학습 정리-2025.8.27 (0) | 2025.08.27 |
| [AI Crew][행사]인공지능사관학교 8월 Talk Up & 도서 지원 프로그램 후기/교육생과 함께 성장하는 진심 어린 소통의 장 (2) | 2025.08.26 |
| [AI Crew][행사] 네이버 1784와 AWS 코리아 본사 방문기 – AI 사관학교에서 본 미래의 업무 환경 (1) | 2025.08.25 |
| [가상화 실습] Docker Swarm 환경 구축을 위한 VMware 버추얼 머신 생성 과정과 설정 방법 (3) | 2025.08.12 |