Можно ли подключиться к серверу SSH, доступному только изнутри сети, используя машину Windows без SSH в качестве шлюза ?.
Разрешите пояснить свой вопрос с помощью наброска:
Я (машина Linux) ---> WIN (Windows без SSHD) ---> LIN (Linux с SSHD).
Machine Me - это компьютер, который я использую для подключения к LIN через WIN. WIN доступен извне, у него открыт порт RDESKTOP, а LIN доступен только изнутри сети.
Надеюсь, вы поняли вопрос.
OpenSSH имеет очень гибкую возможность использовать прокси через опцию ProxyCommand. Если в окне Windows нет демона SSH, можно ли установить прокси-сервер socks, прокси-сервер HTTP CONNECT или общий прокси-сервер TCP? Если да, то вы можете использовать его как точку для подключения к внутренней системе. Точные детали будут зависеть от того, какой именно прокси вы устанавливаете и какие межсетевые экраны / фильтры используются между различными системами.
Вы не сможете сделать это, не установив хотя бы какой-нибудь прокси на Windows. В Windows нет встроенного универсального прокси-сервера, который позволял бы пересылать SSH-трафик.
Главный вопрос в том, можете ли вы подключиться к какой-либо службе через другую машину. Ответ - да, но вам нужно программное обеспечение.
Я просто быстро погуглил и нашел вот что: http://www.quantumg.net/portforward.php То же самое есть в Linux в различных утилитах, но мне больше всего нравится rinetd http://www.boutell.com/rinetd/.
Оба работают одинаково - вы запускаете программу, которая в основном пересылает пакеты с одного хоста на другой. Если у вас есть доступ к машине посередине, вы сможете установить демон / сервер, который сделает это.
Нет, sshd выполняет пересылку, поэтому без демона SSH, работающего в Windows, вы не сможете.
Windows имеет встроенный механизм сопоставления портов:
netsh interface ipv6 install # Port forwarding needs to enable ipv6
netsh interface portproxy add v4tov4 listenaddress=123.234.12.34 listenport=22 connectaddress=192.168.1.2 connectport=22
Замените 123.234.12.34 общедоступным IP-адресом вашего Windows Server, а 192.168.1.2 - IP-адресом интрасети вашего Linux Server.