Linux | PowerShell

[SSH] ProxyJump 사용방법

목차
  1. 1. 시작
  2. 2. 구성
  3. 2.1. U+ 공유기 설정
  4. 2.2. IPtime 공유기 설정
  5. 2.3. Synology NAS 설정
  6. 2.4. Windows_PC설정
  7. 3. 클라이언트 PC 설정
  8. 3.1. config 설정
  9. 4. 접속
  10. 4.1. 터미널 접속
  11. 4.2. VScode Remote SSH 접속
  12. 5. 멍청한 삽질기록
반응형

1. 시작

보안 환경이 있는 곳에서 내 PC를 사용할 일이 생겼다.

SSH사용은 허가하지만 원격(Anydesk, TeamViewer..) 앱과 Mail사이트, 클라우드사이트(aws, synologyQuickConnect) 등을 이용할 수 없었고 사용적발 시 곧바로 전화가 온다..(쓰지 말라고..)

Python으로 GPU를 사용해야 하지만 본사와 현장에 GPU가 있는 컴퓨터가 없었기 때문에 내 PC를 사용해야만 했다.

하지만 우리 집 네트워크 구성은 아래와 같이 구성되어 있어서 곧바로 접속할 수가 없었다.

우리집 네트워크 구성

U+ 공유기에 SynologyNAS 서버를 DMZ를 설정해 둬서 Synology에는 곧바로 접속할 수 있었지만, 내 `Windows_PC`에는 Synology에 SSH로 접속한 다음 또 SSH로 Windows_PC로 접속해야만 한다.

VScode의 Remote SSH로 접속하려면 한 번에(?) 접속하는 방법을 찾아보다 ProxyJump를 알게 되었다.

2. 구성

2.1. U+ 공유기 설정

  • DMZ를 Synology 서버의 주소로 설정한다.
  • DHCP 고정 IP 또한 설정한다.

2.2. IPtime 공유기 설정

  • IPtime에서 DMZ를 Windows_PC로 설정한다.
  • 이 또한 DHCP 고정 IP를 설정한다.
  • (선택) DDNS 주소를 생성한다. 어차피 DHCP고정 IP로 생성해 줘서 상관없지만 ip주소를 사용하기 싫으면 DDNS주소를 생성한다.

2.3. Synology NAS 설정

  • DDNS주소를 설정한다.
  • sshd_config를 아래와 같이 주석을 제거하고 수정한다.
  • 위치 `/etc/ssh/sshd_config`
  • SSHD 재시작
Port 22
# 포트를 설정한다. 기본은 22

AllowTcpForwarding yes

TCPKeepAlive yes

2.4. Windows_PC설정

  • SSH Server를 설치한다.
  • Windows 또한 sshd_config를 위 Synology NAS 설정과 동일하게 설정한다.
주의 : 통신사가 SK인 경우 22번 포트를 막아두어 꼭 다른 포트로 변경해야 합니다.
  • 위치 `C:\ProgramData\ssh\sshd_config`
  • SSHD 재시작

3. 클라이언트 PC 설정

이제 밖에서 접속을 시도하는 클라이언트 PC에서 설정을 해준다.

3.1. config 설정

  • 위치 Windows의 경우 `C:\Users\유저명\.ssh\config`
  • 위치 Linux의 경우 `~/.ssh/config`
  • 아래 내용과 같이 설정해 준다.
Host Synology
  HostName Synology_DDNS
  User Synology_User
  Port Synology_SSH_Port
  
Host Windows_PC
  HostName IPtime_DDNS
  User Windows_PC_User
  Port Windows_PC_SSH_Port
  ProxyJump Synology
  • 혹시 User명을 모르면 Synology는 자신의 DSM 접속주소와 패스워드
  • 윈도우의 경우 자신이 컴퓨터 킬 때 나오는 유저명이다
    • MS에 로그인되어 있으면 터미널을 켜보면 `PS C:\Users\유저명>` 이렇게 나온다. 

4. 접속

4.1. 터미널 접속

터미널에서 접속하려면 아래와 같이 입력한다.

ssh Windows_PC

그럼 Synology의 패스워드를 입력하고 Windows_PC의 패스워드를 입력하면 접속한다.

4.2. VScode Remote SSH 접속

  • `Ctrl + Shift + P` 입력

  • 그럼 Synology의 패스워드, Windows_PC의 패스워드를 입력하면 접속 완료

5. 멍청한 삽질기록

  • `SSH -L 3333:my.iptime.org:22 synology_user@my.synology.me -p 4444` 와 같이 연결하여 클라이언트에서
    `ssh windows_user@my.iptime.org -p 3333` 으로 접속하는 방법을 처음엔 생각했었는데 
    `async io completed with error: 10060` 오류로 엄청난 삽질을 했었다.
  • 나와 같은 생각으로 지금 삽질 중이면 proxyJump 방법을 사용해 보자.
반응형
저작자표시 변경금지 (새창열림)

'Linux | PowerShell' 카테고리의 다른 글

[부팅불가 해결]Ubuntu22.04 Nvidia 그래픽 드라이버 제거/설치 및 삽질기  (2) 2023.11.02
[Ubuntu] apt upgrade 롤백(취소하기)  (2) 2023.11.01
[Ubuntu] 부팅시 스크립트 설정  (1) 2023.08.12
[Ubuntu] 리눅스 별칭(alias) 사용  (0) 2023.08.12
[PowerShell] 윈도우에서 '.log' 파일 실시간으로 보기  (0) 2023.05.23
  1. 1. 시작
  2. 2. 구성
  3. 2.1. U+ 공유기 설정
  4. 2.2. IPtime 공유기 설정
  5. 2.3. Synology NAS 설정
  6. 2.4. Windows_PC설정
  7. 3. 클라이언트 PC 설정
  8. 3.1. config 설정
  9. 4. 접속
  10. 4.1. 터미널 접속
  11. 4.2. VScode Remote SSH 접속
  12. 5. 멍청한 삽질기록
'Linux | PowerShell' 카테고리의 다른 글
  • [부팅불가 해결]Ubuntu22.04 Nvidia 그래픽 드라이버 제거/설치 및 삽질기
  • [Ubuntu] apt upgrade 롤백(취소하기)
  • [Ubuntu] 부팅시 스크립트 설정
  • [Ubuntu] 리눅스 별칭(alias) 사용
항상 빌드중
항상 빌드중
망각을 지연시키는 블로그
언제나 미완성망각을 지연시키는 블로그
항상 빌드중
언제나 미완성
항상 빌드중
전체
오늘
어제
  • 분류 전체보기 (79)
    • Docker (4)
    • Linux | PowerShell (10)
      • [WSL][CUDA] TensorFlow 설치 과.. (4)
    • Kafka (3)
    • NiFi (13)
      • MiNiFi (4)
      • ExecuteScript (1)
    • RDBMS (3)
      • PostgreSQL (2)
      • Tibero (1)
    • NoSQL (1)
      • ElasticSearch(OpenSearch) (1)
    • 프로그래밍 (13)
      • JAVA (1)
      • WEB (9)
      • Python (3)
    • 잡것 (2)
      • 해킨토시 (1)
      • WSL (3)
      • VScode (3)
      • STT (3)
      • DIY (1)
    • 클러스터 구성 (4)
    • 정처기 (9)
      • 오답노트 (0)
      • 파이널 (4)
      • 벼락치기 (5)
    • 자동차 (6)
      • Android올인원 (3)
      • TOYOTA Prius XW50 (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • GitHub
반응형

공지사항

인기 글

태그

  • WSL
  • MiNiFi 사용방법
  • 프리우스4
  • 안드로이드 Shell
  • markdownserver
  • 접근성 꺼짐
  • 텐서플로우
  • 프리우스4 와이드미러
  • 마크다운 공유
  • 안드로이드 접근성 서비스
  • 접근성 서비스 꺼짐
  • prius4 side-view mirror
  • 안드로이드 자동실행
  • 마크다운 메모장
  • 안드로이드올인원 접근성 서비스
  • whisper설치 및 실행
  • NiFi Python
  • 안드로이드 올인원 루팅
  • whisper설치과정
  • nifi

최근 댓글

최근 글

hELLO · Designed By 정상우.
항상 빌드중
[SSH] ProxyJump 사용방법
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.