Туннелирование через ssh (проброс порта)
2010-12-24
туннелирование
ssh
linux
С помощью ssh можно пробросить порт для какого-нибудь сервера (сервиса).
Получение данных через удаленный хост.
Задача: мы на хосте hostA:8000 хотим через хост hostB получать данные с хоста ya.ru:80 (http порт 80)
ssh -N -L 8000:ya.ru:80 user@hostB
При этом на хосте hostA создается серверное(LISTEN) соединение на 8000 порту.
Передача данных на удаленный хост.
Задача: мы на хосте hostA где хотим с хоста ya.ru:80 передавать данные на хост hostB:8000
ssh -N -R 8000:ya.ru:80 user@hostB
При этом на хосте hostB создается серверное(LISTEN) соединение на 8000 порту.
Ключ -N запрещает выполнять команды (только проброс порта), т.е. вход на удаленный хост не совершается.
Так же можно добавить ключ -f, что переведет процесс в фоновый режим.
Использование SSH как VPN