Подключитесь к серверу SSH через HTTP-прокси, используя plink и netcat

Я пытаюсь подключиться к SSH-серверу с ПК под управлением Windows через корпоративный HTTP-прокси.

Трюк работает под Debian с использованием OpenSSH клиента с ncat из пакета nmap, но он не работает под Windows с Plink 0.70 + Ncat 7.70 ( https://nmap.org/). Замазка работает тоже хорошо, хотя использование чистого пллинка было бы лучше для меня.

Плинк имеет -proxycmd вариант, который, похоже, похож на ProxyCommand вариант в OpenSSH. Однако он не работает должным образом (SSH-сервер работает на порту 443):

plink.exe -C -ssh -P 443 -i my_pvt_key.ppk -proxycmd "ncat --verbose --proxy-type http --proxy 192.168.101.200:3128 %host %port" -sshlog sshlog.txt root@192.0.2.123

Команда немедленно возвращает "FATAL ERROR: Сервер неожиданно закрыл сетевое соединение".

Журнал шпаклевки:

=~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2018.07.19 07:38:28 =~=~=~=~=~=~=~=~=~=~=~=
Event Log: Writing new session log (SSH packets mode) to file: sshlog.txt
Event Log: Starting local proxy command: ncat --verbose --proxy-type http --proxy 192.168.101.200:3128 port
Event Log: We claim version: SSH-2.0-PuTTY_Release_0.70
Event Log: Server unexpectedly closed network connection

Третья строка журнала сбивает с толку. В конце команды есть слово "порт", и оно должно быть заменено реальным портом. хозяин 192.0.2.123 вообще не показывается.

Команда ncat --verbose --proxy-type http --proxy 192.168.101.200:3128 192.0.2.123 443 само по себе вроде нормально работает. Таким образом, я полагаю, проблема в том, что Plink неправильно анализирует аргументы в команде ncat. Я, наверное, не прав.

Есть идеи как это исправить?

0 ответов

В Putty, в Configuration->Connection->Proxy, вы можете настроить HTTP-прокси напрямую, не используя ncat,

В plinkВы можете обратиться к конфигурации Putty. Текст справки говорит

"host" также может быть именем сохраненной сессии PuTTY

Так что просто позвоните plink с сохраненной конфигурацией.

Спасибо, вопрос, я успешно в Window 10 1903 через open ssh, ниже моя команда:

 ssh root@domain.com -o "ProxyCommand C:\Program Files (x86)\Nmap\ncat.exe --verbose --proxy-type http --proxy 127.0.0.1:10801 %h %p" -v

С plink: Release 0.71(64-bit), команда OP работает нормально, но cmd покажет некоторые не распознанные диаграммы без цвета. Лучше использовать Open SSH в Windows 10?

plink.exe -C -ssh -P 27158 -i C:\Users\xxx\.ssh\test.ppk -proxycmd "ncat --verbose --proxy-type http --proxy 127.0.0.1:10801 %host %port" root@xxx.xxx-sshlog sshlog.txt
Другие вопросы по тегам