을(를 ) 통해 ssh
도달 server1
하고 싶었습니다 .server3
server2
이는 다음을 사용하여 수행할 수 있습니다.
ssh -t user2@server2 ssh user3@server3
하지만 언제 이것을 달성할 수 있습니까 server2
?server3
비밀번호 로그인?
제약:
1)비밀번호를 입력하지 않을 예정입니다.
2)이 경우 SSH 키를 사용할 수 없습니다
답변1
마지막을 제외하고 -t
각 후속 에 이 옵션을 사용해야 합니다 .ssh
ssh -t user1@server1 ssh -t user2@server2 ssh user3@server3
가능하다면 내장된 SSH 명령 대신 -J
( )를 사용하는 것이 좋습니다.ProxyJump
ssh -J user1@server1,user2@server2 user3@server3
답변2
이를 수행하는 몇 가지 방법이 있습니다. 내가 사용할 빠르고 더러운 방법은 터널을 만든 server1 -> server2
다음 그 터널을 사용하여 이동하는 것입니다.server1 -> server3
ssh -L localhost:2222:server3:22 server2
여기서 우리는 다음과 같이 말하고 있습니다: ... 에 나타나는 모든 트래픽
에 대한 sshserver2
엘localhost 포트 2222에 있는 터널의 로컬 측...
터널을 통과합니다..
반대편에서 해당 트래픽을 server3 포트 22로 보냅니다.
그런 다음 다른 창에서:
ssh -p2222 localhost
그러면 server3의 비밀번호를 묻는 메시지가 표시됩니다.