2012-09-16 45 views
25

我在Amazon EC2上创建了Ubuntu 12.04实例。尝试使用RSA密钥SSH进入EC2,获取:错误的RSA1标识符...权限被拒绝(公钥)

我已经下载了PEM文件,并能够通过SSH进入实例,没有问题。

现在,我想在远程实例上为顾问等创建一些帐户。 他们应该能够使用RSA密钥ssh进入方框。在EC2机器上,我在〜/ home /中设置了几个帐户,并将它们分配给组管理员。我也给了自己一个类似的帐户(MyTestAccount)进行测试。这是我做过什么:

我使用的主要根到我的本地机器(的〜/ .ssh)上创建的.ssh目录公钥和私钥:

drwx------ 2 peter peter 1024 Sep 14 10:23 .ssh 

而且里面的文件:

-rw------- 1 peter peter 1675 Sep 14 10:23 id_rsa 
-rw------- 1 peter peter 394 Sep 14 10:23 id_rsa.pub 
-rw------- 1 peter peter 444 Sep 14 00:05 known_hosts 

然后我SCP'd的id_rsa.pub文件到我的远程EC2实例,并将其添加到我的远程实例的 的.ssh/authorized_keys文件。我的远程 .ssh目录的权限:

drwx------ 2 ubuntu ubuntu 4096 Sep 16 16:13 .ssh 

我的authorized_keys的和文件:

-rw------- 1 peter ubuntu 1179 Sep 14 00:05 authorized_keys 

接下来,我注销我的远程实例,并尝试使用新的密钥SSH到遥控盒。当我发出以下命令:

[email protected]:~/.ssh$ ssh -vvv [email protected] 

我得到的下面。它看起来像我的私钥有问题吗?有什么建议么?谢谢。

OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL 1.0.1 14 Mar 2012 
debug1: Reading configuration data /etc/ssh/ssh_config 
debug1: /etc/ssh/ssh_config line 19: Applying options for * 
debug2: ssh_connect: need priv 0 
debug1: Connecting to ec2-XX-XXX-XX-XXX.compute-1.amazonaws.com [XX.XXX.XX.XXX] port 22. 
debug1: Connection established. 
debug3: Incorrect RSA1 identifier 
debug3: Could not load "/home/peter/.ssh/id_rsa" as a RSA1 public key 
debug1: identity file /home/peter/.ssh/id_rsa type 1 
debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048 
debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048 
debug1: identity file /home/peter/.ssh/id_rsa-cert type -1 
debug1: identity file /home/peter/.ssh/id_dsa type -1 
debug1: identity file /home/peter/.ssh/id_dsa-cert type -1 
debug1: identity file /home/peter/.ssh/id_ecdsa type -1 
debug1: identity file /home/peter/.ssh/id_ecdsa-cert type -1 

[SNIP ...]

debug2: we sent a publickey packet, wait for reply 
debug1: Authentications that can continue: publickey 
debug1: Trying private key: /home/peter/.ssh/id_dsa 
debug3: no such identity: /home/peter/.ssh/id_dsa 
debug1: Trying private key: /home/peter/.ssh/id_ecdsa 
debug3: no such identity: /home/peter/.ssh/id_ecdsa 
debug2: we did not send a packet, disable method 
debug1: No more authentication methods to try. **Permission denied (publickey).** 
+0

您是否尝试过建立与'SSH -i /路径/到/你/键yourserver' SSH连接?来自论坛的“ – j0nes

回答

75

这种情况是正常的,这并不奇怪。
消息你有:

debug3:不正确RSA1标识
debug3:无法加载 “/home/user_name/.ssh/id_rsa” 作为RSA1公钥

并不表示确实是一个错误。
RSA1公钥仅在SSH协议1,其已经过时的使用。目前,主要使用SSH协议2。

在正常的SSH登录过程中,您将最有可能看到的警告消息ssh -vvv
你可能会感到惊讶,但不要担心,这是正常的。

参考:
https://bbs.archlinux.org/viewtopic.php?id=122646,#9

+6

:”这一切意味着你的id_rsa文件不是RSA1公钥,这是一件好事,因为RSA1公钥仅用于SSH的协议版本1“ – akostadinov

+6

下一行('debug1:identity文件/home/peter/.ssh/id_rsa类型1)表示对同一文件的成功解析。 '1'可能会令人困惑,因为它表示成功,*不* SSH协议版本! – DouglasDD

相关问题