由于GUI工具使用了Putty的Pageant和PLink实用程序,因此我现在使用msysgit,但是我将Cygwin用作通用的SSH终端。我曾经在Cygwin上使用ssh-agent,但这意味着我必须为两个SSH密钥管理器输入我的SSH密钥密码。是否可以将我所有的Unix端口工具(msys,git,cygwin,Ruby Net:SSH等)配置为使用PLink / Pageant而不是ssh-agent?看起来这就是PLink的用途,但是我找不到有关此方法的文档。
由于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:
我还在openssh和pageant之间编写了一个代理,我将其称为ssh-pageant。看起来和charade几乎一样,但是我没有听说过。好吧,以防万一您遇到麻烦,我想我会放弃ssh-pageant来尝试。
不久前,我遇到了charade,它将ssh-agent和代理替换为Pageant。当时我还不能完全正常工作,从那以后就没有机会使用它,但是可能值得尝试。如果您有运气,请发回邮件,让我知道,这已经是我多年以来要做的事情了!
make
,gcc-core
,keychain
,psmisc
,当然openssh
。如果按照从README文件很详细的说明这样你不会得到任何错误
您正在寻求集成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的兼容剂,但这种情况不会发生,除非有人写这样的野兽。我在很多月前都对它进行了调查,考虑到这种解决方法很容易,这似乎比它值得的麻烦还要多。
另一种方法。
在.bash_profile的最顶部添加此行
exec ssh-agent /usr/bin/bash
然后将您的密钥添加到.bashrc的底部
ssh-add ~/.ssh/myprivate
ssh-agent
。