我可以在Cygwin的ssh中使用PLink和Pageant吗?


26

由于GUI工具使用了Putty的Pageant和PLink实用程序,因此我现在使用msysgit,但是我将Cygwin用作通用的SSH终端。我曾经在Cygwin上使用ssh-agent,但这意味着我必须为两个SSH密钥管理器输入我的SSH密钥密码。是否可以将我所有的Unix端口工具(msys,git,cygwin,Ruby Net:SSH等)配置为使用PLink / Pageant而不是ssh-agent?看起来这就是PLink的用途,但是我找不到有关此方法的文档。


Answers:


17

我还在openssh和pageant之间编写了一个代理,我将其称为ssh-pageant。看起来和charade几乎一样,但是我没有听说过。好吧,以防万一您遇到麻烦,我想我会放弃ssh-pageant来尝试。


11

不久前,我遇到了charade,它将ssh-agent和代理替换为Pageant。当时我还不能完全正常工作,从那以后就没有机会使用它,但是可能值得尝试。如果您有运气,请发回邮件,让我知道,这已经是我多年以来要做的事情了!


我可以确认它有效。(如下@Nightfly一样)
克里斯托弗·

2
我想补充一点,你建立确保您有以下软件包除了默认Cygwin安装包化妆前:makegcc-corekeychainpsmisc,当然openssh。如果按照从README文件很详细的说明这样你不会得到任何错误
亚历山大Pogrebnyak

5

您正在寻求集成ssh-agent和pageant,以便只有一个密钥库。一种执行此操作的方法是使用PuTTY作为终端,将密钥保留在页面中,启用代理转发,将Cygwin sshd和ssh运行到本地主机。这将为您提供一个环境,在该环境中,寻呼机可以通过与PuTTY的ssh连接提供密钥,而无需运行ssh-agent。

使用Plink应该可以这样做。只需使用-A选项,然后在交互式Cygwin会话中使用生成的SSH_AUTH_SOCK设置。免责声明:我还没有尝试过。

编辑:我现在已经尝试过了;它工作正常。我创建了PLINK的快捷方式:

"C:\path\to\PLINK.EXE" -A -ssh -l yournamehere localhost "echo $SSH_AUTH_SOCK; while :; do sleep 86400; done"

然后,在Cygwin终端中(我当然使用PuTTYcyg):

export SSH_AUTH_SOCK=/tmp/ssh-crYQh24AMq/agent.3964
ssh-add -l

看起来效果很好,但仍然需要本地sshd。

什么是真正伟大的是有直接传送给选美密钥库的OpenSSH的兼容剂,但这种情况不会发生,除非有人写这样的野兽。我在很多月前都对它进行了调查,考虑到这种解决方法很容易,这似乎比它值得的麻烦还要多。


嗯,这根本不是一个坏主意。这可能是我要去的方式。谢谢!关于您的openssh兼容代理,是的,这正是我希望plink可以提供的。似乎这将是一段非常有价值的代码,因为要使软件(如git)与openssh和plink兼容都需要进行大量工作。为什么不只有翻译层呢?好像是用“ Unix方式”来做的。:)
Jerph

2

您能以其他方式使用puttycyg吗?

[ http://code.google.com/p/puttycyg/]

这样,您就可以将腻子用作cygwin终端。


我不确定使用腻子会对我的Cygwin脚本造成什么影响。我想我不太清楚puttycyg会插入到哪里。我会调查一下-谢谢!
耶夫

0

我会建议使用相同的东西(使用腻子),但只使用腻子,因为它可以更好地与Pagent和plink集成在一起,我可以将其与msysgit一起使用,但可以使用msysgit提供的git bash,这样会很好,在控制台之间进行一些乏味的切换,但是分隔也可以很好


不幸的是,我不能离开Cygwin。我依赖于它提供的某些软件包,而不仅仅是纯ssh控制台的东西。Msys有其优势(例如,与许多Windows工具和Windows版本的Ruby的“更好”的集成),但是使用Msys上可用的工具来迁移基于Cygwin的脚本将非常困难。
耶夫

0

另一种方法。

在.bash_profile的最顶部添加此行

exec ssh-agent /usr/bin/bash

然后将您的密钥添加到.bashrc的底部

ssh-add ~/.ssh/myprivate

如何链接到Pageant?问题是关于如何除此之外使用ssh-agent
Tobias Kienzler 2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.