SSH туннель и получение веб-страниц через туннель

Я попытался создать туннель к клиенту, прошедшему через сервер, используя следующую команду

ssh -X -f admin@IP_server -N -L 4444:IP_client:80

но при попытке открыть клиент:80 firefox получит как ошибку эту

channel 2: open failed: unknown channel type: 
Connection to 81.21.20.207 closed by remote host.

кто-то знает, где проблема? Спасибо большое

3 ответа

Вот что я использую, чтобы загрузить мой webmin на свои серверы (который скрыт, так что только кто-то с доступом по ssh может его увидеть):

ssh -l oli -L 9090:localhost:9090 my-server-ip

Это соединяет меня с сервером и отображает мой локальный порт 9090 на P9090 сервера. Я просто смотрю на http://localhost:9090/ и я вижу вебмин.


Если вы пытаетесь подключиться к другому устройству через ваш сервер, вам не стоит искать варианты туннелирования вручную. ssh имеет встроенный прокси режим SOCKS. Запустите это:

ssh -D 9999 oli@my-server-ip

Затем вы говорите своему браузеру о прокси SOCKS. Посмотри в настройках сети. localhost как сервер, порт 9999, Помните, что это должно быть в настройках для SOCKS. Это не HTTP-прокси.

Теперь при просмотре весь трафик проходит через туннель ssh. Это означает, что если на другом конце есть устройство, к которому может подключиться только ваш сервер, вы можете подключиться к нему, используя его IP.

Обратите внимание, что DNS-запросы и другой сетевой трафик не будут проходить через туннель (AFAIK), поэтому вам нужно подключиться к IP-адресу, если он имеет значение (что, я подозреваю, будет в этом случае)

Вы хотите обратный туннель, попробуйте это:

ssh -NT -R 4444:local.mydomain.com:80 user@remote.mydomain.com

Это инициирует соединение с remote.mydomain.com и перенаправляет TCP-порт 4444 на remote.mydomain.com на TCP-порт 80 на local.mydomain.com. "-N" указывает ssh просто настроить туннель и не подготавливать поток команд, а "-T" говорит ssh не выделять псевдо-tty в удаленной системе. Опция "-R" указывает ssh настроить туннель в качестве обратного туннеля.

Ваше описание сбивает с толку. Как указано, вы сказали, что соединения с localhost:4444 должны быть направлены в IP_server который затем должен подключиться к IP_client:80, но тогда вы подключаетесь непосредственно к IP_client:80?

Другие вопросы по тегам