이번에는 VS Code의 Remote - SSH 확장 기능을 사용하여,
비밀번호 대신 SSH 키를 통해 원격 컴퓨터에 안전하고 편리하게 접속하는 방법을 단계별로 정리하였다.
1. 왜 비밀번호 대신 SSH 키를 사용해야 할까?
단순 비밀번호 입력 방식은 간단하지만 보안에 취약하다.
SSH 키 인증은 비대칭 키 암호화를 기반으로 하여 보안성과 편의성을 동시에 제공한다.
| 항목 | 비밀번호 인증 | SSH 키 인증 |
|---|---|---|
| 보안 수준 | 낮음 (유출, 무차별 대입 공격에 취약) | 높음 (개인 키 없이는 접속 불가) |
| 편의성 | 매번 입력 필요 | 최초 1회 등록 후 비밀번호 없이 접속 |
| 활용성 | 수동 접속에 적합 | 자동화, 반복 작업에 유리 |
2. SSH 키 생성 (로컬 PC)
터미널(Windows는 PowerShell 또는 Git Bash)에서 다음을 실행한다:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
-t rsa: RSA 알고리즘 사용-b 4096: 4096비트 키 생성 → 보안 강화-C: 키 설명(식별용, 보통 이메일)
생성이 완료되면 ~/.ssh/ 폴더에
id_rsa(개인 키, 절대 외부 유출 금지)id_rsa.pub(공개 키)
파일이 생성된다.
3. 공개 키를 원격 서버에 등록
ssh-copy-id 명령어를 사용하면 편리하다:
ssh-copy-id [사용자명]@[원격서버_IP]
- 마지막으로 비밀번호를 1회 입력
- 공개 키가 원격 서버
~/.ssh/authorized_keys에 자동 추가됨
만약 ssh-copy-id를 사용할 수 없다면:
- 로컬에서
cat ~/.ssh/id_rsa.pub실행 → 공개 키 내용 복사 - 원격 서버
~/.ssh/authorized_keys파일에 수동으로 붙여넣기
4. VS Code에서 원격 접속
- VS Code 실행 후 좌측 메뉴에서 Remote Explorer 클릭
- 상단 메뉴에서 SSH 선택
ssh [사용자명]@[원격서버_IP]입력 → Enter- SSH 설정 파일(config) 저장 (기본값 추천)
- SSH Targets 목록에 서버가 나타나면 연결 아이콘 클릭
새 창이 열리면서 원격 서버와 연결됨.
→ 원격 파일 편집, 터미널 사용 가능.
학습 정리
SSH 키 기반 접속은 단순한 설정 이상의 가치가 있다.
- 보안성 강화 : 비밀번호 노출 위험 감소
- 작업 효율성 향상 : 반복 로그인 불필요, 자동화 작업 가능
- 개발 생산성 증대 : VS Code 원격 기능을 통해 로컬 제약 없이 개발 환경을 확장
'CS공부 > 인프라' 카테고리의 다른 글
| Prometheus & Grafana 기반 Springboot 모니터링 구축(with 401에러) (0) | 2025.05.08 |
|---|---|
| 모니터링 시스템 비교: ELK vs Prometheus & Grafana (0) | 2025.05.08 |
| 동기 vs 비동기 & 메시지 브로커 개념 정리 (0) | 2025.05.01 |
| OAuth2 인증 로직 및 Google 기반 구현 (0) | 2025.04.27 |
| GitHub 웹훅 기반 Jenkins CI/CD 파이프라인 설계 (0) | 2025.04.23 |