И это всё МОЁ

Допустим, есть некий сервис (например ssh), который слушает порт на машине Б с серым адресом. Я хочу достучаться до него с машины А, имея в распоряжении сервер с белым адресом.


Находясь на машине Б, выполняю команду: ssh -NR 13020:localhost:22 пользователь@ip_сервера. Теперь все запросы на 13020-й порт сервера должны попадать на 22-й порт машины Б, так? Кажется, так всё и происходит: находясь на сервере, я могу ввести ssh пользователь@localhost -p 13020, и попадаю на машину Б. Но если находясь на машине А ввести ssh пользователь@ip_сервера -p 13020 — ничего не получается, пишет Connection refused. Почему так?


Но теперь, находясь на машине А, пробрасываю локальный порт на сервер: ssh -NL 15020:localhost:13020 пользователь@ip_сервера. Пробую ssh пользователь@localhost -p 15020 — работает! Кажется, всё хорошо. Но работает только ssh, подключиться таким образом к vnc-серверу у меня не получается. Магия!









 ,