SSH 서버에 액세스하기 위해 다른 SSH 서버를 중개자로 사용할 수 있습니까?

SSH 서버에 액세스하기 위해 다른 SSH 서버를 중개자로 사용할 수 있습니까?

서버가 두 대 있어요

Server1 -> Static IP1 
Server2 -> Static IP2

Server2방화벽은 다음에서만 허용합니다.Static IP1

Server1어디서든 SSH를 통해 연결할 수 있습니다.

SSH를 통해 연결한 다음 s 쉘 내에서 다른 SSH 작업을 수행하는 Server2대신 동적 IP 뒤에 있는 PC에서 한 단계로 SSH를 통해 연결하려면 어떻게 해야 합니까 ?Server1Server2Server1

답변1

OpenSSH 7.3p1 이상이 있는 경우 server1단일 명령으로 점프 호스트로 사용하도록 지시할 수 있습니다.

ssh -J server1 server2

바라보다FCBSD~의답변이전 버전의 경우.

답변2

당신은 사용해야합니다SSH포트 전달은 필요에 따라 이 -L옵션이 필요할 수도 있고 필요하지 않을 수도 있습니다 -R.

ssh server1 -g -L 2222:server2:22

-g원격 호스트가 로컬 전달 포트에 연결하고 -Lserver1 포트 2222에서 server2 포트 22로 연결을 설정하도록 허용합니다 .

따라서 server1은 ssh localhost -p 2222server2에 연결됩니다.

이를 사용하면 문제가 발생할 경우 -vvv많은 디버깅 출력을 제공하는 데 도움이 됩니다 .

역방향 터널을 설정하면 -R원격 호스트의 연결이 로컬 측으로 전달됩니다.

관련 정보