问题标签 [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 投票
2 回答
2360 浏览

php - 使用带有密钥的 ssh 进行部署,而不提供私钥的密码(ssh-agent)

Capistrano 和 Rocketeer 在私钥密码方面的区别在哪里?

我已经正确设置了 Capistrano 和 Rocketeer 部署策略并且可以正常工作。Capistrano 让ssh-agent 提供密码短语- Rocketeer 似乎没有。问题不在于如何,而是为什么需要密码。

背景:

我想使用Rocketeer来部署 Laravel 应用程序而不是 Capistrano。似乎它将 SSH 连接委托给 Laravel。

在配置中仅设置远程服务器的名称并运行检查后,在提示输入凭据后,Rocketeer 将所需的密码和我所需私钥的路径存储在非版本控制的文件中。

我不想将用于建立 SSH 连接的凭据存储在我的磁盘上——尤其是的任何私钥的密码。

那么,为什么除了需要服务器名称之外还有其他内容?

我看到 Laravel 在其远程配置中准备了这些字段 - 我只是无法找出最终负责的组件以及为什么它没有将 SSH 连接完全留给系统本身。

RocketeerLaravelSymfonyphpseclib还是php本身需要这么多信息来建立 SSH 连接?

0 投票
1 回答
6303 浏览

git - ssh-agent 不在 CMD 中创建

我在 CMD 中使用了以下命令:

输出是:

'eval' 不是内部或外部的、可运行的程序或批处理文件。

在 CMD 中寻找解决方案,它在 gitbash 中运行良好

0 投票
0 回答
472 浏览

git - 无法 git pull/push 到远程服务器上的 github。虽然 ssh-agent 已启用并且应该转发到远程

我的配置(ununtu 14.04 和服务器 ununtu 13.1) 在我家(本地)~.ssh/config 中遵循这个 github 教程:

在我的全局(本地)/etc/ssh/ssh_config 中:

还尝试forwardAgent了 sshd_config 中的行。并在远程 sshd_config

这是连接的日志(使用 -vvv 标志运行 ssh): 注意!我可以 ssh 到远程服务器!但是 ssh-agent - 将 ssh 权限从我的计算机转发到远程无法正常工作,因此我无法 git push/pull

但是在远程服务器中,当我尝试 git push 或只是 github ssh 测试时:

ssh -T git@github.com 我得到一个: Permission denied (publickey). 任何线索?想法?谢谢!

0 投票
0 回答
151 浏览

ssh - 自动添加非默认私钥 SSH 身份验证代理

为方便起见,我没有“默认”私钥,通常~/.ssh/id_rsa~/.ssh/id_dsa~/.ssh/identity。我有多个密钥来管理多个帐户,一个用于工作,一个用于个人。我使用 SSH 代理转发来获得正确的身份验证。这一切都很好。

我遇到的问题是在每次注销/重新启动后,SSH 代理不会自动添加我的密钥,因为它似乎只查找默认命名密钥,如 GitHug 所述:错误:权限被拒绝(公钥):确保您有一个正在使用的密钥

有没有办法定义 SSH 代理在加载时应该自动添加哪些密钥,或者我每次都必须手动添加它们?可能创建一个在登录时打开并添加它们的脚本。

0 投票
1 回答
3112 浏览

python - 使用 python paramiko 的 SSH 密钥转发

我们目前在我们的桌面上运行一个脚本,该脚本使用 paramiko ssh 到远程 linux 主机。一旦我们在远程 linux 主机上,我们执行另一个命令来登录另一台远程机器。我们想要做的是从 paramiko 将密钥传递给远程服务器,这样我们就可以再次使用它们来 ssh 到另一个远程主机。

这将是 linux 中 'ssh -A remotehost.com' 的等效功能。

0 投票
1 回答
1377 浏览

macos - Mac OS 10.9/Mavericks 上的 ssh-askpass 坏了?

在 Mac OS 10.7 和 10.8(单独的计算机)上,我一直在使用 ssh-askpass 脚本来验证 SSH 密钥的使用:

https://github.com/TimZehta/mac-ssh-confirm

但是,这似乎不适用于 Mavericks/10.9?

普通的 SSH 密钥可以正常工作:

但是使用-c,它不再起作用..

/usr/libexec/ssh-askpass 由 root 拥有并具有 +x。它似乎甚至没有被执行(添加了简单的“touch a-logfile”行,从未调用过)。

关于如何进一步调试的任何想法或提示?

谢谢

0 投票
1 回答
911 浏览

vagrant - Vagrant 中的 SSH 代理转发

我正在使用 Vagrant 来启动多 VM 环境(VirtualBox Hostonly 模式)。每个 VM 都启用了 ssh 代理转发。作为“流浪”用户,我可以连接到我的 Bitbucket 帐户并从 VM 中检出存储库。以下是相关的控制台日志:

每个 VM 也有一个用户,“go”。当我以“go”身份登录并尝试连接到 Bitbucket 时,它会引发错误。甚至 SSH_AUTH_SOCK 也没有设置:

sudoers 文件有:

因此,当“vagrant” sudo 进入“go”时,ssh-agent 连接应该被转发。我在这里想念什么?

主机是 Mac OS X 10.8,而虚拟机是 CentOS 6.5 机器。

谢谢!

0 投票
4 回答
44701 浏览

git - 使用 Ansible 进行 SSH 代理转发

我正在使用 Ansible 1.5.3 和带有 ssh 代理转发的 Git ( https://help.github.com/articles/using-ssh-agent-forwarding )。我可以登录到我正在使用 Ansible 管理的服务器并测试我与 git 的连接是否配置正确:

我还可以使用此帐户克隆和更新我的一个存储库,因此当我通过 ssh 直接登录到我的服务器时,我的 git 配置看起来不错并使用 ssh 转发。

问题:当我使用 Ansible 命令模块尝试上面显示的相同测试时。它因“权限被拒绝”而失败。Ansible 输出的一部分(带有详细日志记录)如下所示:

这是运行此命令的简单剧本:

问题:为什么当我通过 ssh 手动登录并运行命令时一切正常,但当通过 Ansible 以同一用户身份运行同一命令时失败?

如果没有其他人超过我,我会尽快发布答案。尽管我使用 git 来演示该问题,但任何依赖 ssh 代理转发的模块都可能发生此问题。它不是 Ansible 特有的,但我怀疑很多人会在这种情况下首先遇到这个问题。

0 投票
1 回答
2341 浏览

git - Vagrant shell 和 ansible 配置因 bitbucket 失败

我不能强制 vagrant 配置从 bitbucket 克隆私有 git 存储库。我有流浪者 1.6.3。

我在 ssh_keys 中的位置:

然后在 setup_project 我打电话:

输出是:

但是,当我vagrant ssh进入盒子,然后按顺序调用相同的 git clone 命令时 - 一切正常。我还测试了ansible config,但问题完全相同。

这里有什么问题?

0 投票
1 回答
228 浏览

macos - SSH-ADD 密钥被刷新

我最近从 Ubuntu 机器切换到 Mac,我遇到了这个奇怪的 ssh 问题,我无法理解为什么?

每次我通过使用 ssh-add 添加 ssh 列表的私钥通过 Mac 重新启动/重新启动时,都会不断刷新

我不确定这是否是理想的行为,ssh-add但我知道我没有在我的 Ubuntu 机器上执行此操作,也没有在我早期的 Mac 机器上执行此操作,任何新创建的 ssh 密钥也没有添加到ssh 添加列表

现在我不确定为什么新 Mac 不能像上面那样工作

无论如何要解决这个问题,我必须每次(手动)像这样添加我的身份

现在谁能解释一下这种奇怪行为的原因以及解决它的可行解决方案

为什么我需要这个是因为我有一个 Capistrano 脚本

并且每次我运行cap 脚本时,它都会因为上面解释的相同原因而失败,并且只有当我使用上面提到的命令将私钥添加到 ssh-add时才会成功

有问题的 Mac OS 是