问题标签 [pageant]

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 回答
4502 浏览

python - 如何在 Windows 上将 Pageant 与 Paramiko 一起使用?

我知道 Paramiko 在 Windows 下支持 Pageant,但它默认不工作。

我正在寻找使用 Pageant 中加载的密钥进行连接的示例。

0 投票
1 回答
867 浏览

tortoisesvn - SSH 登录不适用于 TortoisePlink 1.7.11.3 + putty .061

我已经安装了 TortoiseGit 1.7.11.3 并配置了最新的 putty 和 ssh 登录。

我可以 ssh 到远程机器,而无需远程机器提示输入用户名和密码。但是,当我从命令提示符执行“git clone xyz@abc:path destination”时,它会提示输入用户名和密码。

我已经为 Git 和 TortoiseGit 正确设置了环境变量。

你能告诉我 TortoisePlink 有问题吗?

0 投票
3 回答
4909 浏览

windows-services - 来自 Windows 服务的 Plink 找不到 Pageant

我有一个将plink.exe用于 SSH 连接的 Windows 服务,我发现 Plink 找不到正在运行的 Pageant。

这是我到目前为止所做的步骤。

  1. 安装 Windows 服务以作为特定用户运行
  2. 在启动 Windows 服务之前,我以该用户身份登录并使用 PuTTY 生成的密钥启动 Pageant。
  3. 然后我启动 Windows 服务(但我无法让它工作,因为 Plink 找不到 Pageant 并且服务器回复为No supported authentication methods available。)

注意:如果我使用该用户将 Windows 服务作为控制台应用程序运行,则一切正常。

0 投票
2 回答
2541 浏览

ssh - 腻子选美协议?

ssh-agent 有一个协议,可以将数据发送给它以由特定的私钥签名:

http://api.libssh.org/rfc/PROTOCOL.agent

在 Linux 中,使用 ssh-agent,您可以打开一个 Unix 域套接字到 SSH_AUTH_SOCK 并将数据包发送到该套接字。但是,Windows 没有 Unix 域套接字。

有任何想法吗?

谢谢!

0 投票
1 回答
3752 浏览

mercurial - 如何使受密码保护的 PPK 停止通过 TortoisePlink 和 KeyRing 在 TortoiseHG 中询问密码

已解决,请参阅最后的编辑

我有一个 SourceForge 存储库,并且在那里正确设置了我的 SSH 密钥。它工作正常。但是当我使用 TortoiseHG 将我的修改推送到存储库时,我一直被要求输入 PPK 的密码(因为我保护了它)。

我告诉 Mercurial 我的 PPK 是这样的:

[ui] ssh = tortoiseplink.exe -ssh -i "c:\Users\my_user\SSH\my_user.ppk"

但它一直在用 PPK 的密码困扰我。我知道 Mercurial 的 KeyRing 扩展,但它是否适用于 PPK?

然后...

TortoiseHG 有这个选美工具。显然,您通过指定 -agent 来告诉 TortoiseHG 使用它,如下所示:

[ui] ssh = tortoiseplink.exe -ssh -i "c:\Users\my_user\SSH\my_user.ppk" -agent

我在 Pageant 中添加了我的密钥,但是当我与 TortoiseHG 同步时,它仍然要求输入我的 PPK 的密码,即使我在 Pageant 中添加 PPK 时已经提到过。

让我烦恼的另一件事是,Pageant 在程序重新启动时“忘记”了所有键。所以有点'没用。

有什么办法可以使用 KeyRing 扩展将我的 PPK 添加到 TortoiseHG 并将密码存储在某个地方?

如果没有办法解决这个问题,我想我只会使用不受保护的 PPK,就是这样......

后期编辑:

这是我尝试通过 TortoiseHG 同步工具进行推送时得到的调试输出,配置如上。

% hg --repository C:\Projects\MyProject push --debug ssh://echysttas@hg.code.sf.net/p/myproject/code

pushing to ssh://echysttas@hg.code.sf.net/p/myproject/code

running "c:\Program Files\TortoiseHg\TortoisePlink.exe" -agent echysttas@hg.code.sf.net "hg -R p/myproject/code serve --stdio"

sending hello command

sending between command

在这里我收到一个密码请求,我取消了它,因为我不想继续重复我的密码

远程 hg 没有合适的响应 [命令返回代码 255 Mon Nov 19 20:43:14 2012]

后期编辑2:

我注意到一些示例使用 plink.exe 而不是 TortoisePlink.exe。好吧,我也尝试使用 plink.exe(直接来自 Putty 网站)。这产生了可喜的结果......

sending hello command

sending between command

remote: Passphrase for key "rsa-key-20121118":

remote: Passphrase for key "rsa-key-20121118":

但后来,它卡在了这里。

稍后编辑 3

非常有趣的发现::- D。

它卡住了,因为我从非提升的 Explorer 调用 TortoiseHG Sync 但我从提升的 Total Commander开始了 Pageant 。我在我的 Windows 7 上使用 UAC,这导致了问题。

如果 Pageant 是从管理员权限 Total Commander 运行的,那么 TrtoiseHG Sync 也必须从那里启动!如果这样做,它的工作原理!如果我从非提升的资源管理器启动 Pageant 并且我也从那里进行同步,它也可以工作。

完毕!

懒惰的獾我仍然将答案授予你,因为你很懒惰,你证明了自己的兴趣并帮助了我很多。虽然“它可以在我的机器上运行”并不是真正的答案,但它确实让我思考,你的许多文字和描述值得那个光荣的绿色复选标记,是吗?:D。

0 投票
1 回答
1468 浏览

c# - 从 Pageant 读取私有 SSH 密钥

我正在用 C# 编写一个实用程序,它需要通过 SSH(使用SSH.NET)自动连接到服务器,这几乎是一个轻松的过程。服务器强制公钥认证(服务器是我的,我有完全的物理控制),这样只有少数人可以访问它。

在 Windows 上,我们都设置了 Pageant 以使用 TortoiseGit 与我的服务器进行通信,所以我只需要从 Pageant 读取已经解锁的内存中私钥,而不是每次我想再次询问密码。调试/运行该实用程序。

到目前为止,我发现的最接近的东西是来自 Paramiko 的 Python 模块,它检查是否存在 Pageant 窗口并公开发送和接收方法。这应该很容易移植到 C#,但我想知道我需要向 Pageant 发送什么命令来接收密钥?

通过 Paramiko,这并不是很明显,而且我找不到任何以编程方式使用 Pageant 的文档。答案不必在 C# 中,但如果是,我就不必为此编写一个小实用程序。

0 投票
1 回答
661 浏览

bitbucket - 使用带有两个帐户的 TortoiseGit 的 Pageant - 需要不断删除 SSH 密钥

我可以访问两个BitBucket 帐户。我想对它们都使用 SSH。我正在使用 TortoiseGit 和 Pageant 进行身份验证。

但是,我必须不断从 Pageant 中删除 SSH 密钥才能正确进行身份验证。这是我目前必须做的:

  1. 从 Pageant 中删除所有密钥。
  2. 对账户 A 中的存储库进行操作。成功。
  3. 对账户 B 中的存储库进行操作。成功。
  4. 尝试对帐户 A 中的存储库进行操作。获取“conq:存储库访问被拒绝”消息,直到我从 Pageant 中删除另一个帐户的密钥。

我怎样才能让它正常工作?我已经用谷歌搜索并找到了有关的东西,~/.ssh/config但我很确定那是 Linux 的东西。我还发现在 中提到使用“会话” Putty.exe,但似乎我只能使用主机名来选择我想使用的会话 - 因为两个帐户都使用 bitbucket.org,我认为这不会起作用。

任何帮助,将不胜感激。实在想不通为什么这么复杂!

0 投票
0 回答
90 浏览

svn - svn+ssh、pageant 和 AUC 管理员权限

我在使用 svn+ssh 和 pageant 时遇到了一个奇怪的问题。我的系统 (W7 x64) 配置为使用最大 UAC 保护。

案例 1 - 开始选美并添加我的钥匙。- 从命令窗口使用 svn+ssh 访问 svn 档案工作正常。

案例 2 - 以管理员权限开始选美。并添加我的密钥 - 从以管理员权限运行的命令窗口使用 svn+ssh 访问 svn 存档。工作正常。

案例 3 - 开始选美并添加我的密钥 - 从以管理员权限运行的命令窗口使用 svn+ssh 访问 svn 档案失败。- 反过来也失败了。

我的结论是,选美必须以与尝试使用它的客户端相同的管理员权限执行。这给我带来了一些问题,因为我使用的是来自不同管理员的 svn+ssh。特权。

任何关于如何解决这个问题的想法都值得赞赏。

/拉尔斯

0 投票
1 回答
417 浏览

git - putty 断开连接错误,openssh 与 putty 冲突?

我一直无法将更改推送到我的 heroku 应用程序。大约 1 周前我能够做到,但我不能。

我想不出我做了什么导致这个(可能安装了heroku工具带?修复另一个问题,我现在不记得了)

无论如何,我完全迷路了,不知道该去哪里,我已经删除、读取了密钥、销毁了密钥、为腻子创建了路径,我不知道还有什么。据我所知,我本可以让它变得最糟糕 10 倍,而且我从来没有完全理解整个私钥、公钥以及 putty、pageant、git 和 heroku 是如何协同工作的。

我想我也安装了 Openssh,这可能与其他程序(腻子,选美?)

我“认为”我在heroku上设置了一个密钥。我从站点中删除了所有密钥,然后在我的 cmd 运行

这似乎在我的

.ssh

名为 id_rsa 和 id_rsa.pub 的文件夹

跑步

然后似乎将此密钥添加到heroku网站。查看它将显示此密钥并运行

显示;

ssh-rsa AAAAB3NzaC...HuBFGI3Q== Steve@STEVE-PC

所以我觉得我到了某个地方,但现在最后要做的就是将我的代码推送到heroku ...运行

返回错误对话框

PuTTY 致命错误已断开连接:没有可用的支持身份验证方法

并在“确定”该消息后的命令窗口中我看到

致命:无法从远程存储库中读取。请确保您具有正确的访问权限并且存储库存在。

我错过了什么,

我是要运行 OpenSSH 程序吗?选美应该运行吗?我收到一个腻子错误,但这与任何事情有什么关系?我以为我在使用openssh?我必须安装 totoriseGit,这需要一些设置还是与 openssh 冲突?我读到有人创建了从 putty 到 openssh 的系统路径,我想我曾经这样做过,但现在我不确定,甚至不记得我是如何做到的,如果两个程序发生冲突,这听起来更像是一个 hack 修复。我遇到的情况是这样吗?

这真的开始让我感到压力了,我希望上周能把这套装置上线。所以请有任何人知道出了什么问题,或者我可以去解决这个问题的新路线。

我需要一个英雄来帮助我!谢谢

0 投票
1 回答
2409 浏览

git - Windows 服务器上自动 Git-Pull 批处理文件的更好替代方案

我有一组 Web 服务器,为了使服务器上的文件保持最新,我使用了 Windows 计划任务。该任务调用一个执行 git-pull 命令的批处理文件。

这看起来很简单,但我使用 SSH 密钥对 git 服务器进行身份验证。到目前为止,我能够弄清楚将这些密钥传递给 git 的唯一方法是使用pageant.exe. 结果,我的批处理文件包含以下命令:

这在大多数情况下都有效;但是,一个主要问题是选美在后台运行,并且在第一次执行此批处理文件时,第一行无限期挂起。为了解决这个问题,我手动运行任务,杀死它,然后让它自动运行。但是,如果选美比赛崩溃或服务器重新启动,我的文件将不再在该服务器上同步,因为第一线问题(这在循环方案中可能是一个大问题)。

关于如何改进这个方案有什么建议吗?我无法切换到基于 https 的 git。