PhpStorm SSH / SFTP cygwin

问题描述

我想将cygwin配置用于SSH或SFTP连接,但是不起作用。

我的配置文件“ config”位于目录C:\cygwin64\home\<username>\.ssh.中,该配置文件定义SSH代理跳转并发送一些环境变量。此配置文件在cygwin中可以正常工作,可以通过SSH或SFTP进行连接。

在PhpStorm设置中,我已将Tools > Terminal中的shell路径指定为C:\cygwin64\bin\bash.exe --login -i。所有本地终端使用cygwin罚款。但是ssh连接不使用我的配置文件。我尝试在C:\Users\<username>\.ssh目录中复制配置,但这不起作用。

你能帮我吗?

解决方法

通常,创建指向键的实际位置的%USERPROFILE%/.ssh/config文件(使用有效的Windows路径)应该会有所帮助。但是PhpStorm不支持​​ProxyJump和ProxyCommand指令,因为OpenSSH客户端的Windows端口不支持ProxyJump和ProxyCommand指令,并且我们不能使用Cygwin或MinGW OpenSSH客户端,后者支持代理,但需要在其自身的Shell子系统中运行。这是相关的错误报告:https://youtrack.jetbrains.com/issue/IDEA-214679

,

我找到了解决方案。您需要安装最新版本的OpenSSH。为此,我做了以下动作:

  1. 使用PowerShell安装瓢包管理器(https://scoop.sh/

    $ 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进行了测试,它也可以工作。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...