SSH 터널을 통한 Rsync - 게이트웨이 서버 사용

SSH 터널을 통한 Rsync - 게이트웨이 서버 사용
Environment:
----------         ----------              /|             ------------
|  Work  |         | Gateway|             | |             | cluster   |
|Station |--------------------------------| |-------------|           |
|        |         |        |          Firewall A         |           |
----------         ----------             | |             ------------
                                          |/
  • 사용자는 워크스테이션에서 클러스터로 데이터를 전송해야 합니다. (rsync/scp)
  • 방화벽 A는 게이트웨이 및 특정 내부 서브넷의 연결(ssh)만 허용합니다.
  • 모든 사용자는 게이트웨이 서버에 계정을 갖고 있으며 허용된 서브넷 외부에서 클러스터에 액세스할 수 있습니다.

사용자가 게이트웨이 서버를 터널로 사용하여 집(또는 허용된 서브넷 외부)에서 데이터를 전송하기 위해 rsync/scp를 사용하려면 어떻게 해야 합니까?

예를 들어, 원격 터미널의 경우 사용자는 클러스터에서 터미널을 수신하려면 "ssh user@gateway"를 수행한 다음 "ssh user@cluster"를 수행해야 합니다. 사용자가 "ssh user@cluster"만 수행하면 방화벽이 연결을 차단합니다.

감사해요

답변1

저는 주로 파일 ssh작업 기능을 사용합니다 config. 이 파일을 여기에 저장할 수 있습니다:

$HOME/.ssh/config

이 파일에 다음과 같은 섹션을 추가할 수 있습니다.

Host cluster
    ProxyCommand ssh usear@gateway nc cluster %p

이를 통해 워크스테이션에서 클러스터형 시스템의 사용자를 찾고 ssh같은 도구를 사용할 수 있습니다 .rsync

$ ssh user@cluster

-또는-

$ rsync somefile user@cluster:~

관련 정보