heroku – rails – 权限被拒绝(publickey)

heroku create Creating floating-planet-1824......................... done, stack is bamboo-mri-1.9.2 http://floating-planet-1824.heroku.com/ | git@heroku.com:floating-planet-1824.git git push heroku master Warning: Permanently added the RSA host key for IP address '50.19.85.156' to the list of known hosts. Agent admitted failure to sign using the key. Permission denied (publickey). fatal: The remote end hung up unexpectedly 

我生成了ssh键确定。

重新启动没有帮助。

结果表明

 heroku keys:add ~/.ssh/id_rsa.pub 

工作。

这就是我如何解决我的问题

 $ heroku keys:clear Removing all SSH keys... done $ heroku login 

清除所有以前的ssh后。 heroku login上传了我的ssh公钥,我很乐意git push heroku master

假设您已经在~/.ssh文件夹中使用了公钥和~/.ssh ,则可能存在两种不同的情况:

  • 您没有将公钥上传到Heroku的远程服务器。 解决方案,执行: heroku keys:add ~/.ssh/your_public_key
  • 或者你做了,但你没有将你的身份加载到SSH身份validation代理中。 解决方案,执行:

    ssh-add -K ~/.ssh/your_private_key # OSX

    ssh-add -k ~/.ssh/your_private_key # Ubuntu

并输入您的密码,以便您可以使用您的私钥

我面临的问题是设置ssh环境变量。

 SSH_AUTH_SOCK=0 heroku keys 

将显示密钥,删除然后登录,它将为您创建一个并添加到您的应用程序。 或者,您可以使用电子邮件创建rsa密钥,然后使用它

heroku keys:add /path

使用ssh-keygen -t rsa -C "your_email@youremail.com"生成密钥

如果其他人面临同样的问题:在fedora 16-17上使用rmv 1.17.3和系统ruby 1.9.3p392使用独立工具带,只需清除heroku密钥和凭据就不够了,我测试的问题不在于我的ssh钥匙扣。 如果有人遇到类似问题,并且更熟悉heroku工具带,我在这里发布了一个新问题 。