SSH错误:“不是RSA1密钥文件〜/ .ssh / id_rsa。”,“key_type_from_name:未知密钥类型'----- BEGIN'”

时间:2012-05-22 17:40:26

标签: deployment heroku ssh ssh-keys openssh

git push heroku master

返回:

ssh_exchange_identification: read: Connection reset by peer      
fatal: The remote end hung up unexpectedly.

这是我第一次尝试推送到heroku。

  • heroku login返回“身份验证成功”
  • 〜/ .ssh / id_rsa最初是由heroku命令行客户端创建的 - 我第一次运行heroku login并询问我是否要生成密钥。
  • 我使用ssh-keygen -t rsa(按照指定的here)重新创建了密钥,然后再次尝试但是徒劳无功。
  • 在“〜/ .ssh”创建“authorized_keys”并使用我的公钥,没有运气。
  • 创建了/etc/hosts.allow,内容为“sshd all”,但仍然没有运气。

密钥的权限是:“ - rpm -------” Heroku状态是O.K. 我正在使用Mac OS X 10.7。

ssh -vvv myloginname@heroku.com

返回:

OpenSSH_5.6p1, OpenSSL 0.9.8r 8 Feb 2011   
debug1: Reading configuration data /etc/ssh_config  
debug1: Applying options for *  
debug2: ssh_connect: needpriv 0   
debug1: Connecting to heroku.com [50.19.85.132] port 22.   
debug1: Connection established.   
debug3: Not a RSA1 key file ~/.ssh/id_rsa.   
debug2: key_type_from_name: unknown key type '-----BEGIN'   
debug3: key_read: missing keytype    
debug3: key_read: missing whitespace   
debug3: key_read: missing whitespace   
debug3: key_read: missing whitespace    
debug3: key_read: missing whitespace   
debug3: key_read: missing whitespace   
debug3: key_read: missing whitespace  
debug3: key_read: missing whitespace   
debug3: key_read: missing whitespace   
debug3: key_read: missing whitespace   
debug3: key_read: missing whitespace     
debug3: key_read: missing whitespace    
debug3: key_read: missing whitespace     
debug3: key_read: missing whitespace     
debug3: key_read: missing whitespace      
debug3: key_read: missing whitespace       
debug3: key_read: missing whitespace       
debug3: key_read: missing whitespace        
debug3: key_read: missing whitespace           
debug3: key_read: missing whitespace            
debug3: key_read: missing whitespace              
debug3: key_read: missing whitespace               
debug3: key_read: missing whitespace               
debug3: key_read: missing whitespace             
debug3: key_read: missing whitespace           
debug3: key_read: missing whitespace             
debug2: key_type_from_name: unknown key type '-----END'             
debug3: key_read: missing keytype               
debug1: identity file ~/.ssh/id_rsa type 1             
debug1: identity file ~/.ssh/id_rsa-cert type -1            
debug1: identity file ~/.ssh/id_dsa type -1            
debug1: identity file ~/.ssh/id_dsa-cert type -1               
ssh_exchange_identification: read: Connection reset by peer            

2 个答案:

答案 0 :(得分:3)

我遇到了同样的问题(不是在heroku上),而是在我自己的服务器上。

尝试查看 /var/log/auth.log 我的〜/ .ssh / authorized_keys 文件由错误的用户

拥有

答案 1 :(得分:0)

如果我尝试

  

ssh -vvv myloginname@heroku.com

我明白了:

debug2: key_type_from_name: unknown key type '-----END'
...
debug3: check_host_in_hostfile: filename ~/.ssh/known_hosts
debug3: check_host_in_hostfile: match line 1
debug3: check_host_in_hostfile: filename ~/.ssh/known_hosts
debug3: check_host_in_hostfile: match line 2
debug1: Host 'heroku.com' is known and matches the RSA host key.
debug1: Found key in ~/.ssh/known_hosts:1
debug2: bits set: 500/1024
debug1: ssh_rsa_verify: signature correct

~/.ssh/中是否有known_hosts文件?我的包含heroku.com,50.19.85.154 ssh-rsa50.19.85.132 ssh-rsa的条目。你有那些吗?

如果你which ssh-keygen,那么正在运行什么版本的ssh-keygen?这是Heroku Toolbelt安装的应该使用的正确副本吗?如果不是,Heroku Managing Keys article中的步骤可能没有创建有效密钥?