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

我现在使用的是msysgit,因为GUI工具使用了Putty的Pageant和PLink工具,但是我使用Cygwin作为一般的SSHterminal。 我一直在Cygwin上使用ssh-agent,但这意味着我必须为两个SSH密钥pipe理器input我的SSH密钥密码。 是否可以configuration我所有的Unix端口工具(msys,git,cygwin,Ruby Net:SSH等)来使用PLink / Pageant而不是ssh-agent? PLink似乎是这样做的,但我找不到文档。

    我也写了openssh和pageant之间的代理,我称之为ssh-pageant 。 这看起来和沙拉德差不多,但是我没有听说过。 那么如果你有麻烦,我想我会抛出ssh-pageant来尝试。

    前段时间我碰到了charade ,它把ssh-agent和代理replace成了Pageant。 那个时候我还没有完全搞定,也没有机会玩,但是值得一试。 如果您有任何运气,请回复并让我知道,这是我的事情做了很长一段时间的清单!

    您正在寻找集成ssh-agent和pageant,以便您只有一个密钥库。 一种方法是使用PuTTY作为您的terminal,保持您的密钥在选美中,启用代理转发,运行Cygwin sshd和ssh到本地主机。 这将为您提供一个环境,通过与PuTTY的ssh连接,由pageant提供密钥 – 无需运行ssh-agent。

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

    编辑:我现在已经试过了; 它工作得很好。 我创build了一个PLINK的快捷方式:

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

    然后,在一个Cygwinterminal(当然我使用PuTTYcyg):

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

    似乎工作很好,但仍然需要本地sshd。

    真正好的是有一个openssh兼容的代理直接与pageant keystore进行通信,但是除非有人写这样一个野兽,否则这是不会发生的。 我在很久以前就对它进行了研究,似乎比这个解决方法足够简单。

    你可以用另一种方式来使用puttycyg吗?

    [ http://code.google.com/p/puttycyg/%5D

    这样,你有腻子作为你的cygwinterminal。

    我会build议同样的事情(使用腻子),但只是使用腻子,因为它与pagent和plink更好地整合,我使用它随着msysgit,但使用由msysgit提供的git bash,它会罚款,它在控制台之间的一个单调乏味的切换,但分离也可以

    另一种方法来做到这一点。

    将这行添加到.bash_profile的最顶部

     exec ssh-agent /usr/bin/bash 

    然后在.bashrc的底部添加你的密钥

     ssh-add ~/.ssh/myprivate