이 질문에서:SSH 포트 전달이란 무엇이며 SSH 로컬 포트 전달과 원격 포트 전달의 차이점은 무엇입니까?, 이 사용법이 혼란스럽습니다.
ssh -L 123:farawayhost:456 remotehost
ssh -L sourcePort:forwardToHost:onPort connectToHost
의미: SSH를 사용하여 연결connectToHost
하고 모든 연결 시도를 전달합니다.현지의sourcePort
onPort
포트forwardToHost
에 접근할 수 있는 컴퓨터의 포트에 연결합니다 .connectToHost
"..., 그게 무슨 뜻이야?"도달 할수있다connectToHost
기계 에서 . "그게 정확히 무슨 뜻이에요?
내가 올바르게 이해했다면 ssh -L 123:localhost:456 remotehost
이는 위 명령의 특정 사례이며, 여기서 farawayhost
및 remotehost
둘 다 동일한 시스템에 있습니다.
그렇다면 동일한 컴퓨터에 있을 때 farawayhost
와 없을 때 remotehost
어떻게 작동합니까 ? 이것은 먼저 로그인 remotehost
한 다음 다시 로그인 해야 한다는 의미입니까 farawayhost
?
답변1
처음에는 왜 혼란스러웠는지 모르겠습니다. 원래 답변이 명확하지 않아서였을 수도 있지만 갑자기 이해하게 되었습니다.
2대의 컴퓨터가 있고 해당 컴퓨터의 공용 IP가 1.2.3.4
각각 2.3.4.5
.
사용법은 다음과 같습니다. 개행 문자를 입력하라는 메시지가 표시되며 비밀번호가 필요합니다.ssh -L 10283:1.2.3.4:8000 [email protected] -N
username
2.3.4.5
인증에 성공하면 지정된 ssh
대로 로그인되지 않지만 -N
연결이 설정됩니다. 그래서 전송된 모든 데이터는현지의포트는 먼저 (포트 ) 를 통해 10283
보낸 다음 포트 로 데이터를 보냅니다.2.3.4.5
ssh
22
2.3.4.5
1.2.3.4
8000.
이제 html 파일을 만들고 echo hello > index.html
이를 사용하여 http 서버를 실행해 보겠습니다.1.2.3.4
python -m http.server
그런 다음 localhost:10283
로컬 컴퓨터에 입력합니다.
로컬 컴퓨터:
존재하다 1.2.3.4
: