2012-05-16 106 views
4

我需要从Github上所有的时间拉,我有一个密码,但它是一种痛苦,所以我通常跑......钥匙扣用于SSH-添加

ssh-agent bash 
ssh-add ~/.ssh/id_rsa 
<prompt and give passphrase> 

这适用于会议,但即使在注销后,我希望它在下一次我使用PuTTY时保存密码。因此,我安装了钥匙串,但我太笨了,无法操作它。我想这...

/usr/bin/keychain ~/.ssh/id_dsa 

它说,它加了我的密码,但我怎么会叫钥匙扣等等节省了我对Git的密码也没有工作:(

编辑:道歉张贴这对计算器,它在技术上确实有一定的相关性节目,因为它有使用Git做的,但我的道歉不张贴在超级用户

+0

对不起,编程问题,投票转移到http://superuser.com/或者你可以'举'它,并要求主持人移动我。 (我没有downvote你的问题)。祝你好运。 – shellter

+0

@shellter,我无意中将您的评论标记为脱离主题。我实际上打算将OP的问题标记为迁移到SuperUser。似乎没有办法解决错误的评论标志 - 抱歉。 –

+0

如果我在登录后输入“ssh-agent bash”,它将*工作,然后用适当的密钥加载钥匙串。我该如何做到这一点,所以我需要输入什么? – PolishHurricane

回答

7

好吧,这是我能想出...

安装钥匙扣最好的...

然后添加以下的〜/ .bashrc文件

eval `keychain --eval id_rsa` 

然后将以下内容添加到〜/ .bash_profile

ssh-agent bash 

这将启动钥匙串。这并不像将它们放在bash配置文件或bashrc文件中那么简单。

1

你必须保持按键的“。持久“状态可以这么说。这可以通过让代理在本地打开一个代理来完成,加上 - 在openssh的情况下 - ssh -A。然后,远程服务器上的ssh-add将导致密钥被打开并保留在本地桌面上,这样,在远程端再次登录时,密钥已经可用。

9

您实际上需要以不同方式调用钥匙串。以下添加到您的的〜/ .bashrc文件

eval `keychain --eval id_rsa` 

有关如何正确设置它为您的特定壳或系统的更多信息,请参阅keychain documentation,或者如果你有更复杂的要求。