问题标签 [ssh-agent]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2657 浏览

windows-7 - 如何隔离 msysgit 附带的 msys 实现中提供的 ssh-add/ssh-agent 的问题?

我已经从http://code.google.com/p/msysgit/downloads/list安装了 msysgit:Git-1.7.8-preview20111206.exe (编辑:我还安装了 msysGit-fullinstall-1.7.8-preview20111206.exe ,它可以方便地安装到不同的目录,并且我看到该实例存在相同的问题)。

我遇到了 ssh-agent 的问题,ssh-add 总是报告:“无法打开与您的身份验证代理的连接。”

不幸的是, ssh-add 没有给我任何关于它遇到的错误的更多细节。当它尝试连接到一个套接字时,感觉就像它正在超时,但它实际上并没有承认这是问题所在,并且 ssh-agent 的行为就像它正在正常运行一样。考虑到这种组合让我怀疑存在权限问题,但我不知道我会去哪里调查这类问题(而且我在 Windows 事件日志中看不到任何我认为重要的东西)。

这个错误消息让我感到困惑:我有理由相信如果我的环境变量设置不正确,我会收到这个错误消息,但我有理由相信我的环境变量设置正确。我有理由相信,如果我的环境变量引用了一个未运行的 ssh-agent 实例,我可能会收到此错误消息,但我恰好有一个 ssh-agent 实例正在运行,并且它与我在环境变量中看到的匹配. 这是可重复的。我已经启动(并最终关闭)了几十个 ssh-agent 实例,使用诸如ssh-agent > ~/.ssh/environment; . ~/.ssh/environment,eval `ssh-agent`等等之类的技术ssh-agent bash......我无法让 msys ssh-add 连接到 msys ssh-agent。

我现在还不关心编写任何脚本——我相信如果我可以从命令行让 ssh-add 工作,我就可以编写脚本......

另请注意,ssh-add 使用的 10 秒实时发生在它发出“无法打开...”消息之前。

而且,我在这里使用的是当前版本的 Windows 7。而且,我也安装了 cygwin,但是当我使用 msys 时它不在我的路径中。任务管理器显示我只有一个 ssh-agent 实例正在运行。正在运行的 ssh-agent 是 msys ssh-agent,它是从 msysgit 的 bash 提示符启动的(路径中没有来自 cygwin 的任何内容)。ssh 密钥是使用 cygwin 的 ssh-keygen 生成的,但表面测试表明 msys ssh 实用程序对该文件没有问题。ssh-agent 没有给我任何错误消息或警告。

我可以使用 cygwin 的 ssh-agent,但是混合 cygwin 和 msys 会引入其他复杂性(您可以从我对这个问题的描述中看到其中的一些),我试图让 msys 在没有任何来自 cygwin 的情况下工作。

我需要做什么才能找出为什么 msys ssh-add 不起作用?(或者:我需要做什么才能让 ssh-add 正常工作?)

0 投票
1 回答
3188 浏览

git - 如何使用 Git ssh-agent 保存密码

不知道如何或为什么,但 ssh-agent 丢失了所有保存的密码。我怎样才能重新添加它们?

我希望在通过 SSH 连接时输入密码然后让 ssh-agent 从那里记住它。

我为不同的主机使用了一个配置文件,据我所知,我不必ssh-add为那里的任何条目输入密码,而是输入一次密码,然后代理记住了它。

谢谢你。

0 投票
1 回答
699 浏览

php - 需要在 Apache PHP 脚本下运行 ssh-agent

我想在 apache 下执行的 PHP scipt 中运行 capistrano 命令。当我发出命令时,我需要启动 SSH-Agent。Apache 在具有 ssh-agent 设置的 www-data 用户下运行,但在 PHP 和 Apache 下运行任何命令时 ssh-agent 不可用

有没有办法让 apache 用户启动 ssh-agent 以便它可用?还有其他解决方法吗?

0 投票
1 回答
539 浏览

security - ssh-agent 使用什么机制来保证未锁定的私钥在内存中的安全?

我正在开发一个,以使高级用户更容易快速访问KeepassX数据库文件。目前,该应用程序在内存中的寿命非常短,因此未加密的 KeePass 数据库的安全性并不是一个大问题。

但是,我想添加在后台保持数据库解锁一段时间的功能,类似于 KeepassX GUI 的方式。这将允许在不提示输入主密码的情况下立即查询密码。这意味着会有某种守护进程将数据库保存在内存中并与客户端通信。

这似乎与 的安全含义相似,ssh-agent我想知道这些部分是否有人熟悉该项目如何处理敏感数据的长期安全存储(即解锁的 SSH 私钥)。

0 投票
5 回答
11978 浏览

python - paramiko,没有与 ssh-agent 交谈。织物中的相同行为

首先,我试图让织物工作,但它一直要求我输入密码。

所以我试图减少这个问题。也许从 Python 创建一个 SSH 连接是一个很好的 POC。我发现fabric 使用parmiko 进行SSH 处理。唔。好的,让我们尝试让一个示例正常工作。

这是我写的。

导致以下错误消息:

ssh-agent 在我的会话中运行,我可以 SSH 到那个盒子,没问题,它不会提示我输入密码或任何东西。

我猜 paramiko 出于某种奇怪的原因无法连接到正在运行的 ssh-agent。

有没有其他人遇到过这样的问题?我正在使用 Ubuntu 11.10

我似乎记得不久前尝试过 Fabric 并遇到了类似的问题,也许它已经坏了一段时间了?

我连接,只是使用主机名作为参数。这是根据文档。

http://www.lag.net/paramiko/docs/paramiko.SSHClient-class.html

0 投票
1 回答
1302 浏览

python - 使用 ssh 配置文件和 RSA 密钥连接到多个主机时出现结构错误

当我使用 RSA 密钥和 ssh 配置文件通过 Fabric 连接到多个服务器时出现错误。我的客户是雪豹 10.6.8,带有 python 2.7.2、Fabric 1.4.0、ssh(库)1.7.13。我使用多个带有密码的 RSA 密钥(不使用密码是不可能的)。我将密码添加到 ssh-add。我可以毫无问题地通过 ssh 连接到我的所有服务器。我将 env.use_ssh_config = True 添加到我的 fab 文件中以读取我的 ssh 配置文件。

当我使用 RSA 密钥(带有密码)连接到一台服务器时,一切正常。

但是当我连接到 2 台或更多主机时,我不断收到第二台服务器的“登录密码”。

我的fabfile

我的 ssh 配置文件

在我的 ssh 配置文件中,我尝试删除“HashKnownHosts yes”,但这并没有改变任何东西。

paramiko.log

两台服务器的 SSH 代理密钥 0273aff478dddddd05378738dhe98798 相同。它在第一台服务器上连接,但在第二台服务器上失败。我尝试以不同的顺序使用不同的服务器,但我总是遇到同样的问题,即面料要求第二台服务器的密码。

我怎样才能解决这个问题?

谢谢

0 投票
19 回答
309504 浏览

git - Git keeps asking me for my ssh key passphrase

I created keys as instructed in the github tutorial, registered them with github, and tried using ssh-agent explicitly — yet git continues to ask me for my passphrase every time I try to do a pull or a push.

What could be the cause?

0 投票
1 回答
6423 浏览

capistrano - 使用 forward_agent 选项从 Windows 部署 Capistrano:“从身份验证套接字读取响应长度时出错。”

我正在尝试使用 Capistrano 部署一个项目。我的开发机器运行的是 Windows 7;我要部署的服务器是 Linux。

在 deploy.rb 脚本中,设置了以下内容:

Capistrano 脚本首先在本地运行 git 命令,此时系统会提示我输入 SSH 密钥的密码:

(你可能会看到,我已经从上面删除了真正的 git 路径。)

我输入我的密码,这很好用。然而,Capistrano 然后尝试在远程机器上做类似的事情(在下面重命名为 staging-server.com),我得到了一个错误——见这个摘录的最后一行:

如果我注释掉 deploy.rb 中的 forward_agent 行,则此安装成功,可能是使用部署服务器本身的密钥。

我的 SSH 密钥似乎正在工作 - 毕竟,初始 git 命令有效,我可以在 git push/pull 中使用它,并且 ssh -T git@github.com 报告它应该做什么(如github:help上的建议)。

当远程服务器要求提供密钥时,我假设我的机器没有提供密钥。经过大量谷歌搜索,我在http://hustoknow.blogspot.co.uk/2011/06/ssh-agent-and-agent-forwarding-on.html找到了建议,其中解释了如何获取 ssh-agent在启动时运行。我是在命令提示符下执行所有这些操作的,因此我切换到 git-bash 并设置我的 .bash_profile 以包含我链接到的脚本。

添加后,首次启动 git bash 时提示我输入密码,然后我可以使用 SSH 密钥连接到 github(无需重新输入密码)。此外, ssh-add -L 报告确实有一个可用的密钥。所以一切似乎都设置正确!

但是,我仍然收到“从身份验证套接字读取响应长度时出错”。错误。

有任何想法吗?这适用于我的开发机器是 Linux 的同事(相同的 deploy.rb 文件)。

0 投票
1 回答
11794 浏览

mysql - 使用 SSH 私钥进行 MySQL 根登录?

假设 Mysql -dbs 和一个有忘记密码的坏习惯的管理员(或者偏执狂想要更多创造性的身份验证,而不仅仅是密码)。是否可以以 Ssh-agent 存储私钥的方式访问 Mysql -root shell,然后我可以通过"mysql -u root"(不输入密码或私钥和密码的组合)登录?

0 投票
1 回答
1578 浏览

ssh - 系统启动后 ssh-agent 未运行(Suse 12.1、KDE)

当我调用 ssh-add 时,我收到以下错误消息:

无法打开与您的身份验证代理的连接。

好像ssh-agent没有运行。我不想手动运行它。我想让它自动运行。有人知道如何在 Suse 12.1 下使用 KDE 进行配置吗?