Хост-тунель Windows через середній сервер Linux на інший хост Linux з обмеженими портами


0

Додаток:

Я бачив питання " Windows HTTP тунель через 2 хости Linux? " І намагаюся дізнатися щось про відповіді. Я вивчив. Я почну давати свою проблему, а потім розповім трохи про свої тести з відповідями на це питання.

Я намагаюся підключити свій хост Windows до хоста Linux, використовуючи середній linux (єдиний із зовнішнім IP).

У чому моя проблема:

У мене windows hostнемає портів, які я хочу відкрити (порти ігор та трафіку).

У мене linux hostє порти, які я хочу відкрити.

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

Порятунок: я маю доступ до своєї компанії linux server, яка має зовнішній IP (200.XXX).

Отже, я хотів би використовувати це linux serverяк проміжний, хоча мій windows hostі мій linux host.

The complicating: 

Мій linux serverєдиний порт 110 відкритий. Я можу підключитися до нього лише через ssh за допомогою порту 110

Іншими словами: мені потрібен такий приклад, який я можу зробити:

windows host's Firefox, доступний для використання 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

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

Як я можу це зробити?

Моє оточення, іншими словами:


Windows host (внутрішній IP == 10.XXX; всі порти відкриті)

переживає

Linux Server(зовнішній IP == 200.XXX; до нього можна підключити лише за допомогою ssh на порт 110; порт 110 єдиний відкритий )

перенаправлення трафіку хоста Windows на

Linux Host (внутрішній IP == 192.XXX; порти відкриті, можна підключитися за допомогою ssh на порт 22)


Ще один додаток:

Це спрацювало б, якби на моєму linux server, я міг (у досконалому світі) отримати доступ до свого linux host(що неможливо, враховуючи, що у мене внутрішній IP linux host)

хост windows: 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

Адаптовано з відповіді Як перенести на недоступний віддалений комп'ютер шляхом тунелювання через сервер, до якого може дістатися кожен?

"Рішення", яке працювало:

  • на 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.

PS: Для ssh на windows я використовував cygwin для встановлення openssh для полегшення речей.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.