
SSH туннелирование обычно применяется когда вам надо получить доступ к удаленной сети. Причем, чтобы сам туннель был «непробиваем» для сторонних глаз. Это достигается за счет его шифрования.
Бывают экстравагантные ситуации, когда необходимо прокинуть не один туннель, а два (читать два и более), чтобы добраться до ну очень удаленной сети. Т.е. сначала мы попадаем в первую сеть, а оттуда попадаем во вторую сеть. Фактически, это просто два хода ssh клиентом. Оказывается и это довольно просто решить. Понадобится лишь еще один свободный порт.
Допустим, видимый host первой сети имеет адрес 192.168.1.1, а видимый (из первой сети) хост второй сети имеет адрес 10.0.0.1. И нам надо прокинуть порт 25 до какого-нибудь компьютера, например, 10.0.0.100 из второй сети. Тогда пишем следующее:
ssh -f -L 7701:10.0.0.1:22 192.168.1.1
ssh -f -L 7702:10.0.0.100:25 localhost -p 7701Все, теперь мы можем обращаться локально к адресу localhost:7702 и все запросы будут перенаправляться на 10.0.0.100:25.




Discussion