Хост Windows туннелирует через средний сервер Linux к другому хосту Linux с ограниченными портами

Приложение:

Я видел вопрос "туннель Windows HTTP через 2 хоста Linux?" и попытка узнать что-то об ответах. Я учился. Я начну давать свою проблему и затем говорить немного о моих тестах с ответами того вопроса.

Я пытаюсь соединить свой хост окон хоста Linux, с помощью среднего Linux (единственный с внешним IP).

Что является моей проблемой:

Мой windows host не имеет портов, которые я хочу открытый (игра и порты трафика).

У меня есть a linux host это имеет порты, которые я хочу открытый.

Так, проблема была бы решена, если я мог бы сделать a ssh tunnel через мой windows hostк моему linux host. Проблема состоит в том, что оба из затем только имеют внутренний IP (каждый находится на моей компании, другой находится на моем университете).

Спасение: у Меня есть доступ к моей компании linux server, это имеет внешний IP (200. X.X.X).

Так, я хотел бы использовать это linux server как промежуточное звено, хотя мой windows host и мой linux host.

The complicating: 

Мой linux server только имеет порт 110 открытых. Я могу только соединиться через ssh с ним с помощью 110 портов.

Другими словами: мне нужен пример, таким образом, что я могу сделать:

windows host's Firefox, proxified для использования localhost:9999

перенаправляет его доступ к linux server,

это перенаправляет его доступ к моему linux host.

Один (но не единственный) идея является обратным туннелированием мой linux host к моему linux server, и затем прямое туннелирование мой windows host к моему linux server, создание этого linux server перенаправьте мой windows host доступ к моему linux host.

Но я не знаю, что команды пробуют это.

Я попробовал, но без успеха:

хост Linux: ssh -R 20000:localhost:22 middle_user@200.X.X.X -p110

хост окон: ssh -L 9999:localhost:20000 middle_user@200.X.X.X -p110

Как я могу сделать это?

Моя среда, в другом слова:


Windows host (внутренний IP == 10. X.X.X; все открытые порты)

прохождение через

Linux Server (внешний IP == 200. X.X.X; может только подключить использование ssh к нему на порте 110, порт 110 является единственным открытым),

перенаправление окон размещает трафик к

Linux Host (внутренний IP == 192. X.X.X; открытые порты, может соединить использование ssh на порте 22),


Другое приложение:

Это работало бы если на моем linux server, Я мог (в идеальном мире), получают доступ к моему linux host (что невозможно, учитывая, что у меня есть внутренний IP на моем linux host)

хост окон: ssh -L 9999:localhost:9999 -D 9999 -p 110 middle_user@200.X.X.X

сервер Linux: ssh -D 9999 linux_host_user@linux_host_ip

0
задан 05.07.2018, 16:48

1 ответ

Адаптированный из ответа, Как к ssh к недостижимой удаленной машине путем туннелирования через сервер, которого все могут достигнуть?

"Решение", которое работало:

  • на linux-user, Я сделал ssh -R 1234:localhost:22 server_user@200.X.X.X -p110

  • на windows-user, Я сделал ssh -L 1235:localhost:1234 server_user@200.X.X.X -p110

затем,

  • на windows-user, Я сделал ssh -D 9999 -p 1235 linux-user@localhost

и затем, на windows-user, Я мог настроить Firefox для использования носков прокси localhost:9999 и мог получить доступ к серверу, работающему на моей машине пользователя Linux.

P.S.: Для ssh на окнах я использовал cygwin, чтобы установить openssh, упростить вещи.

0
ответ дан 27.11.2019, 17:49

Теги

Похожие вопросы