Ответ 1
Возможно, вы захотите использовать plink.exe
вместо клиента GUI. Синтаксис командной строки совместим с iirc.
Мне нужно создать SSH-туннель с PuTTY в Windows, который будет делать то же самое, что и эта команда в Linux:
ssh -fN -L 2000:SomeIp:2000 [email protected]
Я попробовал много вариантов в PuTTY, включая настройку порта источника в GUI на "2000" и пункт назначения "SomeIp: 2000". Назначение установлено на локальное (как предполагает переключатель -L
).
Я успешно вхожу в мой SSH-бокс, но порт не выполняется.
Возможно ли это в Windows, так что все соединения, выполняемые программами, использующими этот порт (2000), пройдут через этот туннель?
Возможно, вы захотите использовать plink.exe
вместо клиента GUI. Синтаксис командной строки совместим с iirc.
С помощью пакета PuTTY вы можете настроить туннель либо с помощью самого PuTTY (GUI), либо с помощью инструмента командной строки plink.exe
.
С plink.exe
вы используете те же аргументы, что и с OpenSSH ssh
, за исключением -f
, который не имеет эквивалента в Windows.
plink.exe -N -L 2000:SomeIp:2000 [email protected]
Справка: Использование инструмента подключения командной строки Plink
С PuTTY -L 2000:SomeIp:2000
переводится как:
Так что на самом деле, что вы утверждаете, что пытались. Если у вас есть какие-либо проблемы, используйте журнал событий PuTTY для расследования:
-N
переводится как "Не запускать оболочку или команду вообще".
Но, вероятно, с клиентом с графическим интерфейсом не имеет смысла его включать, так как вы все равно получаете окно, вы просто ничего не можете с ним сделать. Смотрите также PuTTY Wish No-Terminal-Window.
Или вы можете пробираться через GUI шпаклевки, что также позволяет это. См. Connection > SSH > Tunnels
с левой стороны с деревом опций.
В ответах выше упоминаются два различных способа решения проблемы:
У меня нет plink, и я не могу загрузить файл plink.exe (это строго контролируемая ограниченная среда), поэтому я использовал другой способ для сценария решения с помощью однострочного сценария:
start putty -ssh [email protected] -pw my_pw -L 2000:localhost:2000
Сохраните это в командном файле (расширение файла ".bat", например "tunnel.bat"). Поэтому каждый раз, когда вы дважды щелкаете по этому файлу, запускается команда, а putty создает туннель ssh. Если вы хотите больше туннелей, просто повторите эту часть
-L 2000:localhost:2000
изменив порты соответственно.
"Исходный" порт - это номер порта на том же компьютере, с которого вы используете putty (например, откройте его в своем браузере: 127.0.0.1:source). "Пункт назначения" - это удаленный порт, к которому вы хотите подключиться с локального компьютера. Это начало работать после того, как я понял это.
В этом путеводителе я продолжаю возвращаться. Прокрутите вниз половину пути для настройки туннелирования шпатлевки.
http://mike.geek-republic.com/2009/02/17/securing-windows-remote-desktop-with-copssh/