PhpStorm SSH / SFTP Cygwin

Я хочу использовать свою конфигурацию cygwin для соединения SSH или SFTP, но не работает.

Мой файл конфигурации config находится в каталоге C:\cygwin64\home\<username>\.ssh.. Этот файл конфигурации определяет переход через прокси-сервер SSH и отправляет некоторые переменные среды. Этот файл конфигурации отлично работает в cygwin для подключения по SSH или SFTP.

В настройках PhpStorm я указал путь оболочки в Tools > Terminal как C:\cygwin64\bin\bash.exe --login -i. Все локальные терминалы используют Cygwin в порядке. Но ssh-соединение не использует мой файл конфигурации. Я попытался скопировать конфигурацию в каталог C:\Users\<username>\.ssh, но это не сработало.

Можете вы помочь мне?


person Vincent    schedule 14.09.2020    source источник


Ответы (2)


Как правило, создание файла %USERPROFILE%/.ssh/config, указывающего на фактическое расположение ключей (с использованием действительного пути Windows), должно помочь. Но PhpStorm не поддерживает инструкции ProxyJump и ProxyCommand в нем, потому что нет поддержки для него из порта Windows клиента OpenSSH, и мы не можем использовать клиенты Cygwin или MinGW OpenSSH, которые поддерживают проксирование, но требуют работы в своей собственной подсистеме оболочки. Вот соответствующий отчет об ошибке: https://youtrack.jetbrains.com/issue/IDEA-214679< /а>

person Dmitrii    schedule 16.09.2020

Я нашел решение. Вам необходимо установить последнюю версию OpenSSH. Для этого я проделал следующие действия:

  1. Установка диспетчера пакетов scoop (https://scoop.sh/) с помощью PowerShell

    $ Set-ExecutionPolicy RemoteSigned -scope CurrentUser Ответ Y

    $ Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')

  2. Установка OpenSSH

    $ scoop install win32-openssh

    обычно установка изменяет переменную среды %PATH%, чтобы добавить путь, например C:\Users\<username>\scoop\shims. В противном случае вы должны добавить его.

  3. Модификация переменной среды %PATH% для удаления пути C:\Windows\System32\OpenSSH

  4. Включите службу агента аутентификации OpenSSH. На клавиатуре нажмите Windows + R.

    Введите: services.msc и нажмите Enter.

    Дважды щелкните службу агента аутентификации OpenSSH.

    Выберите тип запуска Автоматический и запустите службу.

После этих действий я смог подключиться с терминала Windows cmd. Я тестировал PhpStorm, и он тоже работает.

person Vincent    schedule 18.09.2020