내 점프 서버와 최종 호스트는 모두 기본이 아닌 22 포트에서 실행되고 있습니다.
~에 따르면https://wiki.gentoo.org/wiki/SSH_jump_host
나는 ssh -J user1@host1:port1 user2@host2 -p port2
둘 중 하나를 시도했다ssh -J user1@host1:port1 user2@host2:port2
점프 서버 비밀번호를 입력하라는 메시지가 표시되고 모두 오류와 함께 실패합니다.
channel 0: open failed: administratively prohibited: port forwarding is disabled
stdio forwarding failed
kex_exchange_identification: Connection closed by remote host
Connection closed by UNKNOWN port 65535
그러면 어떻게 작동하게 만들 수 있나요?
답변1
매뉴얼 페이지에서는 이 옵션의 형식이 이므로 -J
올바르게 보입니다.-J [user@]host[:port]
-J user1@host1:port1
-J [user@]host[:port]
먼저 점프 호스트에 대한 SSH 연결을 설정한 다음 거기에서 최종 대상으로 TCP 전달을 설정하여 대상 호스트에 연결합니다. 여러 점프를 쉼표로 구분하여 지정할 수 있습니다. 이는 ProxyJump 구성 지시문을 지정하는 바로가기입니다.
그런데 오류 내용으로 볼 때 문제는 포트 사양이 아니라 -J
중간 호스트가 포트 포워딩을 허용하지 않고 포트 포워딩을 요구한다는 점인 것 같습니다.
이를 변경할 수 없지만 점프 호스트를 신뢰하는 경우 점프 호스트에 대한 연결을 설정하고 그곳에서 다른 SSH 클라이언트를 실행하여 최종 대상 호스트에 대한 연결을 열 수 있습니다.
ssh user1@host1:port1 'ssh user2@host2:port2'
(혹은 와 함께 ssh -t
)