프록시 점프(ProxyJump) 세팅 가이드

1. 배경과 동기

CentOS 서버 환경은 Ubuntu만 사용하던 사용자에게 다소 불편할 수 있다.
이를 해결하기 위해 CentOS 메인 서버 안에서 Ubuntu 22.04 컨테이너를 띄우고, 로컬 PC → CentOS 서버 → Ubuntu 컨테이너로 점프(ProxyJump)하는 방식으로 접속 환경을 구성할 수 있다.

이렇게 설정하면:

  • 익숙한 Ubuntu 환경에서 작업 가능
  • VS Code의 Remote-SSH 확장과 연동하여 바로 컨테이너에 접속 가능
  • 서버 관리와 개발 환경 분리 용이

2. .ssh/config 설정 예시

아래는 로컬 PC의 ~/.ssh/config 파일에 넣을 수 있는 예시 설정이다.
실제 환경에서는 IP, 포트, 서버 이름을 적절히 변경하여 사용하면 된다.

# Ubuntu 컨테이너 접속용 설정
Host Lab-Ubuntu22-Container
HostName 127.0.0.1
Port 6789
User dev
ProxyJump Lab-CentOS-Main
IdentityFile ~/.ssh/id_ed25519
IdentitiesOnly yes
StrictHostKeyChecking accept-new
UserKnownHostsFile ~/.ssh/known_hosts.d/Lab-Ubuntu22-Container

# CentOS 메인 서버 접속용 설정
Host Lab-CentOS-Main
HostName 123.4.567.89
Port 2345
User researcher
IdentityFile ~/.ssh/id_ed25519
IdentitiesOnly yes
StrictHostKeyChecking accept-new
UserKnownHostsFile ~/.ssh/known_hosts.d/Lab-CentOS-Main

주요 설정 설명

  • Host: 로컬에서 부르는 별칭 (VS Code에서 이 이름으로 접속)
  • ProxyJump: 중간 서버를 통해 최종 목적지에 접속하도록 지정
  • IdentityFile: 개인 키 파일 경로 (ed25519 사용 권장)
  • StrictHostKeyChecking accept-new: 처음 접속 시 자동으로 호스트 키 추가
  • UserKnownHostsFile: 접속 대상별 별도 known_hosts 관리

3. VS Code Remote-SSH 접속 방법

  1. VS Code에서 Remote-SSH 확장을 설치한다.
  2. 커맨드 팔레트(Ctrl+Shift+P) → Remote-SSH: Connect to Host... 선택
  3. .ssh/config에 설정한 별칭(예: Lab-Ubuntu22-Container) 선택
  4. 정상적으로 프록시 점프를 통해 Ubuntu 컨테이너에 접속 가능

4. 권장 보안 설정

  • id_rsa 대신 ed25519 키 사용 (보안 강도 및 성능 우수)
ssh-keygen -t ed25519 -C "your_email@example.com"
  • 필요하다면 ~/.ssh/config 내에 ForwardAgent no 등을 추가하여 보안 강화
Posted by 공돌이pooh
,