포트를 열지 않고 SSH 릴레이

포트를 열지 않고 SSH 릴레이

나는 기계를 가지고 A있고 SSH를 통해 기계 B에 접근할 수 있지만 Relay그 반대는 불가능합니다. 해당 포트가 액세스 가능한 유일한 포트인 경우를 제외하고 포트를 열지 않고도 머신을 통해 B머신 에 액세스할 수 있습니까 ?ARelay22

예를 들어, 가능한 해결책은 읽고 쓰기 위해 파일을 열고 여는 것 ssh입니다 . 에서 에 연결하면 과 의 통신을 위해 이러한 파일을 읽고 쓸 수 있습니다 .BRelaystdinstdoutArelayB

이를 달성하기 위한 명령줄 도구를 사용할 수 있는 방법이 있습니까?

답변1

글쎄, 분명히 릴레이에 이미 포트가 열려 있습니다. 그렇지 않으면 ssh가 불가능합니다.

내가 볼 수 있는 유일한 방법은 B가 릴레이로 SSH를 통해 연결하고 A가 사용할 수 있는 역방향 터널을 여는 것입니다. "-R" 옵션을 찾고 있습니다.

답변2

한 가지 방법은 다음과 같습니다.

  1. 로컬 포트를 중계 및 전달하기 위한 ssh A(예: ssh -L 6022:127.0.0.1:6022) 이 명령은 SSH를 통해 A의 로컬 포트 ​​6022를 릴레이의 포트 6022로 전달합니다.
  2. 원격 포트를 로컬로 중계 및 전달하는 ssh B( ssh -R 6022:127.0.0.1:22) 이 명령은 중계의 원격 포트 6022를 B의 로컬 포트 ​​22로 전달합니다.
  3. 이제 A에서 SSH를 사용하여 localhost 포트 6022에 연결하면 B에 로그인할 수 있습니다.

관련 정보