• »
  • »
  • »
  • Проброс портов через ssh - туннель

Проброс портов через ssh - туннель

Иногда бывает необходимо подключиться к другому компьютеру находящемуся внутри удаленной локальной сети, защищенной брандмауэром. На прямую к этой машине подключиться нет возможности, но есть доступ по ssh до другого компьютера в удаленной сети. В этом случае можно использовать проброс портов через ssh - туннель.


1 - Переброс удаленного порта на локальную машину
Задача: необходимо получить доступ до веб-сервера <web-host> в удаленной сети, при этом есть доступ по ssh к хосту <ssh-host>, который имеет доступ до <web-host>:

ssh -L 8081:<web-host>:80 user@<ssh-host>

Команду необходимо выполнять от пользователя root, после чего будет доступен на локальном компьютере по адресу http://localhost:8081


2 - Переброс локального порта или доступного нам по сети на удаленную машину
Задача: необходимо удаленному хосту <ssh-host> доступному по ssh, открыть доступ до веб-сервера <web-host> который нам доступен:

ssh -R 8081:<web-host>:80 user@<ssh-host>

После чего на удаленном хосте <ssh-host> будет доступ до веб-сервера <web-host> по адресу http://localhost:8081.


Дополнительные параметры:
-f - переход в фоновый режим;
-t - запуск консольного приложения на удаленном хосте
-N запрет на выполнение удаленных команд
-X - перенаправление всех запущенных X-приложений на ваш локальный X-сервер
-p № - внешний порт SSH сервера

Комментарии (1)

  1. Анонимус:
    фев 27, 2023 at 06:49

    Спасибо! Единственный метод который работает, перерыл весь интернет, везде целые страницы вода и 0 полезной инфы, а тут всё кратко и - главное - работает. Спасибо!

    Ответить