SSH 터널링

원문: https://www.notion.so/1a1bf506e994803db447f6024ab3415d?pvs=1

여러 번 SSH 접속을 반복하면서 배포하느라 번거로우셨던 적 있으신가요?

제가 다니는 회사는 B2B 프로젝트를 주로 진행하는데, 대부분의 프로젝트가 SSH 터널링을 통한 배포 환경을 갖추고 있습니다.

로컬 VPC는 윈도우 기반이고, 실제 배포가 이뤄지는 서버(B 서버)는 리눅스 환경입니다.

그런데 이 B 서버에 접근하려면 중간에 A 서버를 먼저 SSH로 거쳐야만 접속이 가능하죠.

매번 A 서버에 접속한 후 다시 B 서버로 들어가는 이 반복적인 과정이 꽤 귀찮게 느껴졌습니다.

그래서 이번 글에서는 SSH 터널링을 통해 로컬에서 B 서버로 바로 접근할 수 있는 방법을 공유해보려고 합니다.

이 모든 것은 CMD 에서 실행합니다. ip주소의 예시로 A서버는 111, B서버는 222로 표기를 하겠습니다.

[1] ssh 키 설정

  1. ssh 키가 있는 지 확인

  2. ssh 키 생성

  3. A 서버에 ssh 키 등록

  4. 수동으로 ssh 키 복사

  5. A 서버에 접속

  6. A 서버에 키 등록(””는 빼고 사용)

  7. 비밀번호 없이 A 서버 접속 테스트

  8. B 서버에 ssh 키 등록

  9. A 서버에서 B 서버에 ssh 키 복사

  10. 비밀번호 없이 B 서버 접속 테스트

[2] ssh 터널링 설정(로컬 VPC에서 한 번에 B 서버로 접속)

  1. VPC 에서 ssh 설정 파일 열기(파일이 없으면 새로 생성됨)

  2. 파일에 다음 내용 추가

  3. 파일 저장 후 닫기

  4. 해당 파일 경로 찾기

  5. 나온 경로로 config 파일을 찾아서 해당 파일의 확장자가 .txt라거나 다른 확장자가 붙으면 확장자 삭제

  6. VPC에서 ssh 에이전트 활성화

  7. A 서버에서 ssh 에이전트에 ssh 키 추가

  8. 이제 A 서버에 한 번에 접속 가능!(로컬 VPC cmd 에서 실행)

  9. 이제 B 서버에 한 번에 접속 가능!(로컬 VPC cmd 에서 실행)

[2] ssh 터널링을 이용하여 파일 한 번에 다운로드 및 업로드 하는 방법

  1. 한 번에 B 서버에서 VPC로 파일 다운로드

  2. 한 번에 VPC에서 B 서버로 파일 업로드

Tags:

Categories: ,

Updated:

Comments