【问题标题】:PhpStorm SSH / SFTP cygwinPhpStorm SSH / SFTP cygwin
【发布时间】:2020-09-14 12:35:31
【问题描述】:

我想使用我的 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 目录中复制配置,但不起作用。

你能帮帮我吗?

【问题讨论】:

    标签: ssh phpstorm sftp


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

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

        $ Set-ExecutionPolicy RemoteSigned -scope CurrentUser回答是

        $ 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 Authentication Agent”服务

        选择“自动”启动类型并启动服务。

      在这些操作之后,我能够从 Windows cmd 终端进行连接。我从 PhpStorm 测试过,它也可以。

      【讨论】:

        猜你喜欢
        • 2020-07-31
        • 2010-12-08
        • 1970-01-01
        • 2018-06-22
        • 2016-05-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多