로컬 컴퓨터의 원격 호스트로 포트 전달

로컬 컴퓨터의 원격 호스트로 포트 전달

세 대의 기계가 있는 상황을 생각해 보세요.

Machine 1                  Machine 2                 Machine 3
(Local)                 (Intermediate)                (Server)
(Ubuntu)                    (RHEL)                     (RHEL)

나는 아파치를 실행 중이고 Machine 3내 로컬 컴퓨터에서 아파치 홈페이지를 탐색해야 합니다 (Machine 1).

지금까지 내가 한 일:

다음을 사용하여 포트 전달을 수행할 수 있습니다.

ssh -L8888:localhost:8888 machine2@ip  # on machine 1
ssh -L8888:localhost:80 machine3@ip   # on machine 2

내 로컬 컴퓨터에서 Apache 홈 페이지에 액세스할 수 있지만 로그인할 때마다 이 단계를 다시 수행해야 합니다.

좀 읽은 후에 나는 이것을 자동화하려면 config에서 이 작업 을 수행해야 한다는 것을 알았고 ~/.ssh이것이 파일의 내용 Machine 1입니다 .Machine 2config

머신 1에서:

Host Machine2
        HostName <Machine2 IP>
        User <username for Machine 2>
        RemoteForward 8888 localhost:8888

머신 2에서:

Host Machine3
            HostName <Machine3 IP>
            User <username for Machine 3>
            RemoteForward 8888 localhost:80

이것은 나에게 효과가 없었고 나는 오랫동안 이 분야에 갇혀 있었습니다. 이 문제에 대한 도움을 주시면 대단히 감사하겠습니다. 감사해요!

답변1

ssh -L8888:localhost:80 machine3@ip   # on machine 2

...

RemoteForward 8888 localhost:80

-L대안은 추가 기능 구성에서 사용하는 것 대신 ssh_config입니다 .LocalForwardRemoteForward

관련 정보