PhpStorm SSH / SFTP cygwin

#ssh #phpstorm #sftp

#ssh #phpstorm #sftp

Вопрос:

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

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

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

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

Ответ №1:

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

Ответ №2:

Я нашел решение. Вам необходимо установить последнюю версию 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>scoopshims . В противном случае вам придется добавить его.

  3. Изменение переменной среды %PATH% для удаления пути C:WindowsSystem32OpenSSH

  4. Включите службу «OpenSSH Authentication Agent» На клавиатуре, нажав Windows R

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

    Дважды щелкните на службе «OpenSSH Authentication Agent»

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

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