首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在windows上运行ssh-add?

如何在windows上运行ssh-add?
EN

Stack Overflow用户
提问于 2013-09-08 11:23:50
回答 13查看 369.7K关注 0票数 168

我正在跟踪#335部署到VPS,在这一集接近尾声的时候,我们需要运行ssh-add来让服务器访问github。

问题是如何在windows中运行它?需要安装什么?

我知道要运行ssh来访问远程服务器,我可以使用Putty。但是这个命令需要在本地运行,我知道如何使用Putty来完成这个任务。

EN

回答 13

Stack Overflow用户

回答已采纳

发布于 2013-09-08 12:12:57

可以安装用于Windows的Git,然后运行ssh-add

步骤3:将密钥添加到ssh-agent中。

若要配置SSH代理程序以使用SSH密钥,请执行以下操作: 如果安装了GitHub for Windows,则可以使用它克隆存储库而不处理SSH密钥。它还附带了Git Bash工具,这是在Windows上运行git命令的首选方法。

  1. 确保启用ssh-agent:
代码语言:javascript
复制
- If you are using Git Bash, turn on ssh-agent:

在后台启动ssh-agent -s # Agent pid 59566

代码语言:javascript
复制
- If you are using another terminal prompt, such as msysgit, turn on ssh-agent:

在后台启动ssh代理( ssh-agent -s) # Agent 59566

  1. 将SSH密钥添加到ssh代理: 添加~/.ssh/id_rsa
票数 129
EN

Stack Overflow用户

发布于 2016-11-21 12:44:45

原始答案使用git的start-ssh-agent

确保您已经安装了Git,并在您的路径中安装了git的cmd文件夹。例如,在我的计算机上,到git的cmd文件夹的路径是C:\Program Files\Git\cmd

确保您的id_rsa文件位于c:\users\yourusername\.ssh文件夹中

如果尚未启动命令提示符,请重新启动命令提示符,然后运行start-ssh-agent。它将找到您的id_rsa并提示您输入密码。

更新2019 -如果您使用的是Windows10,一个更好的解决方案: OpenSSH可以作为Windows10的一部分,这使得使用cmd/powershell的SSH /powershell要容易得多。它也不依赖于安装git,不像我以前的解决方案。

  1. 从“开始”菜单中打开Manage optional features,确保列表中有Open SSH Client。如果没有,您应该能够添加它。
  2. 从“开始”菜单中打开Services
  3. 向下滚动到OpenSSH Authentication Agent >右击>属性
  4. 将启动类型从“禁用”更改为其他3个选项中的任何一个。我把我的设定为Automatic (Delayed Start)
  5. 打开cmd并键入where ssh以确认顶部列出的路径位于System32中。我的安装在C:\Windows\System32\OpenSSH\ssh.exe。如果不在列表中,则可能需要关闭并重新打开cmd。

完成这些步骤之后,ssh-agent、ssh-add和所有其他ssh命令现在应该从cmd开始工作。要启动代理,只需键入ssh-agent即可。

  1. 可选步骤/故障排除:如果使用git,应该将GIT_SSH环境变量设置为之前运行的where ssh的输出(例如C:\Windows\System32\OpenSSH\ssh.exe)。这是为了阻止您正在使用的ssh版本(并且您的键被添加/生成)和git内部使用的版本之间的不一致。这样可以防止类似的问题。

这个解决方案的一些优点是:

  • 您不需要每次重新启动计算机时都启动ssh代理。
  • 您添加的标识(使用ssh-add)将在重新启动后自动添加。(它适用于我,但您可能需要在c:\Users\User.ssh文件夹中设置一个配置文件)
  • 你不需要吉特!
  • 您可以将任何rsa私钥注册到代理。另一个解决方案将只获取一个名为id_rsa的密钥。

希望这能有所帮助

票数 336
EN

Stack Overflow用户

发布于 2021-07-15 01:04:21

2021答复

近年来,微软改进了ssh关键支持。现在Windows中包含了一个功能齐全的“服务”。来自文档

在(管理)Powershell中:

代码语言:javascript
复制
# By default the ssh-agent service is disabled.
Get-Service -Name ssh-agent | Set-Service -StartupType Automatic

Start-Service ssh-agent

然后从任何用户shell:

代码语言:javascript
复制
ssh-add path/to/.ssh/id_rsa

需要代理套接字路径的程序应该使用:\\.\pipe\openssh-ssh-agent

票数 55
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18683092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档