Я пытался создать туннель к клиенту, прошедшему через сервер, используя следующую команду
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.
кто-то знает, где проблема? Большое спасибо
Вот что я использую, чтобы загрузить мой 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 на удаленный .mydomain.com - TCP-порт 80 на local.mydomain.com . «-N» указывает ssh просто настроить туннель и не подготавливать поток команд, а «-T» говорит ssh не выделять псевдо-tty в удаленной системе. Опция "-R" указывает ssh настроить туннель в качестве обратного туннеля.
Ваше описание сбивает с толку. Как указано, вы сказали, что соединения с localhost:4444
должны быть перенаправлены на IP_server
, который затем должен соединиться с IP_client:80
, но затем вы подключаетесь напрямую к IP_client:80
?