繁体   English   中英

将 VS Code 与本机 Windows OpenSSH 客户端一起使用

[英]Using VS Code with native Windows OpenSSH client

我正在尝试从 Putty/Pagent/plink 传递到 Windows OpenSSH 本机客户端。

我已经在TortoiseGit做到了这一点,但是VSCode的主要问题似乎是我无法设置要使用的 ssh 代理。

我在 Windows 上启用了OpenSSH代理服务以自动启动,并使用ssh-add添加了我的开放 ssh 密钥。

每次我尝试从VSCode推送时,我得到的只是一条错误消息

Git:致命错误:断开连接:没有可用的受支持的身份验证方法(服务器发送:公钥)

尝试从终端推送时,我也得到了

请确保您拥有正确的访问权限并且存储库存在。

如前所述,使用TortoiseGit我完全没有问题,唯一的区别是在 TortoiseGit 中我设置了ssh-agent

您可能需要确认您的系统环境变量GIT_SSH指向 Git 中的sshC:\\Program Files\\Git\\usr\\bin\\ssh.exe

您可能需要更新您的 Windows OpenSSH。 如果您从 PowerShell 窗口运行ssh -V并看到OpenSSH_for_Windows_7.7p1 ,则可能就是这种情况。 安装 Win32 OpenSSH Wiki中提供了升级说明。

一般的

VS Code 使用 Windows 版本的 OpenSSH。

  • 您在 VS Code 中更改的配置文件位于/Users/<username>/.ssh/config
  • 密钥的默认位置/名称位于/Users/<username>/.ssh/id_rsa

例子

  • 本地:安装了 VS Code 和非常棒的远程 - SSH 扩展的 Windows 10 机器
  • 远程:Ubuntu,在那里我使用 git 进行开发并需要我的私钥可用
  • 由于远程是共享的,我想使用 SSH 代理转发并将我的私钥保存在我的本地机器上
配置文件:
Host mybox
  HostName actual.ip.or.name.of.mybox.com
  User myusername
  IdentityFile ~/.ssh/id_rsa
  ForwardAgent yes
PowerShell 命令(以管理员身份运行)
Start-Service ssh-agent
ssh-add C:\Users\<username>\.ssh\id_rsa       # private key to add
ssh-add -L                                    # list keys added
Set-Service ssh-agent -StartupType Automatic  # optional

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM