Что такое ssh -L 123:farawayhost:456 remotehost?

Что такое ssh -L 123:farawayhost:456 remotehost?

Возник из этого вопроса:Что такое переадресация портов 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находятся на одной машине.

Так когда farawayhostis и remotehostare не на одной машине, как это работает? Это значит, что мне нужно remotehostсначала войти в систему, а потом farawayhost?

решение1

Не знаю, почему я сначала растерялся, может быть, потому, что изначальный ответ был недостаточно ясен, но потом я внезапно это понял.

Предположим, у меня есть 2 машины, публичные IP-адреса которых — 1.2.3.4и 2.3.4.5.

Использование будет следующим: , это вызовет переход на новую строку, требуя пароль на .ssh -L 10283:1.2.3.4:8000 [email protected] -Nusername2.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:

введите описание изображения здесь

Связанный контент