【问题标题】:SSH EC2 asking for passwordSSH EC2 要求输入密码
【发布时间】:2012-04-02 14:46:39
【问题描述】:

我刚刚按照这个视频在这里设置了我的 EC2 服务器 - http://www.youtube.com/watch?v=bBajLxeKqoY

我什至选择了相同的服务器类型,一切都很顺利,直到它要求我的 EC2 服务器的 root 密码...

有什么建议吗?

【问题讨论】:

    标签: amazon-web-services amazon-ec2 ssh root


    【解决方案1】:

    在浏览器中登录 Amazone 控制台: https://us-east-2.console.aws.amazon.com/ec2/xxxxxxxx

    点击左侧面板中的实例 -> 然后选择您的实例 -> 点击右上角的连接按钮

    你会看到一个窗口打开,会有一个按钮ssh Client

    在这里您可以看到与您的实例连接的确切命令。

    【讨论】:

      【解决方案2】:

      检查您的 .pem 文件是否损坏。使用这条线

      openssl rsa -check -in test.pem -noout
      

      它应该返回 RSA Key OK。如果不是,那么很可能是您的 pem 文件中的某种格式或某些内容存在问题。

      【讨论】:

        【解决方案3】:
        chmod 400 pem_file
        
        ssh -i /path_to_the_pem_file ec2-user@ServerIP
        

        ssh -i /path_to_the_pem_file ubuntu@ServerIP
        

        AWS AMI 默认禁止 root 访问。

        希望对你有帮助。

        【讨论】:

          【解决方案4】:

          这是连接方式:

          ssh -i /path/my-key-pair.pem ec2-user@public-ip
          

          现在,它可以是 root、centos、ubuntu 或其他东西,而不是 ec2-user。您可以在“使用说明”下查看。如果它不存在,并且您已经尝试过上述所有用户,请从 AMI 随附的文档中查找。

          AWS 上有一个错误让我花费了很多时间。如果您从“Images > AMIs”下的已保存 AMI 启动实例,请注意它使用创建它的运行实例的原始密钥。启动 AMI 时,它会提示您选择一个新密钥,甚至在描述下显示该密钥,但事实是这些密钥永远无法使用!

          因此,如果您使用的是自定义/保存的 AMI,则必须获取原始密钥并使用它们,或者只需从 AWS 或市场创建一个全新的密钥。如果您尚未创建 AMI 或不记得它的来源,请查看详细信息选项卡。然后,您可以启动新实例或从同一源创建新 AMI。然后,这将使用您指定的键。

          【讨论】:

            【解决方案5】:

            生成密钥时请使用--query 'KeyMaterial'

            信息:

            keyMaterial - 未加密的 PEM 编码 RSA 私钥。

            【讨论】:

            • 这正是我所追求的,因为我遇到了这个问题,因为我自己造成的 AWS CLI 缺陷,生活和学习,感谢您发布此答案,即使其他人提供用户/权限解决方案!在此处找到更多文档:docs.aws.amazon.com/cli/latest/userguide/…
            【解决方案6】:

            就做吧

                 sudo su -
            

            为我工作

            【讨论】:

              【解决方案7】:

              在我的例子中,我们一直在复制一个文本文件来保存一个无处不在的密钥。有人不小心在这个文件中添加了字符,当我们从未设置密码时,我们开始从现已损坏的 .pem 文件中收到密码提示。

              【讨论】:

                【解决方案8】:

                就我而言,问题在于文件的中断类型。试试这个:

                1.- 使用 TextWrangler 打开 .pem 文件

                2.- 在应用程序底部,验证中断类型是否为“Windows(CRLF)”。

                问候

                【讨论】:

                  【解决方案9】:

                  更新

                  由于活动而更新此答案:

                  根据系统是 ubuntu 还是 Rhel,用户会有所不同。

                  对于 ubuntu 是

                  ssh -i my-pem-file.pem ubuntu@my-ec2-instance-address
                  

                  对于 RHEL 来说是

                  ssh -i my-pem-file.pem root@my-ec2-instance-address
                  

                  连接到 ec2 实例不需要密码,它只需要一个 pem 文件 这就是你连接它的方式

                  ssh -i my-pem-file.pem ec2-user@my-instance-address
                  

                  记得在 ssh 之前chmod 400 你的 pem 文件

                  【讨论】:

                  • chmod 600 为我工作,而不是 400。使用 Windows 7,由于我猜的奇怪行为:P
                  • 我会在 windows 上使用 PuTTY。
                  • Putty 抛出“无私钥”错误 :-( 我尝试了密钥的每个排列与位数。现在您已经指出,问题可能仅与用户权限有关。我会验证并通知您!
                  • 是的,错误是由于文件权限引起的!谢谢!
                  • Alpine Linux AMI 没有记录,用户名为 alpine - 以 USER 登录后变为 root,您需要 sudo -s
                  【解决方案10】:

                  对我来说,问题是我从现有实例创建了一个 AMI,所以当我启动 AMI 时,即使我选择了一个新密钥,实例的原始密钥仍然有效。

                  【讨论】:

                    【解决方案11】:

                    如果其他人碰到这个问题,我的问题的解决方案是我必须使用sudo 运行它:

                    sudo ssh -i my-pem-file.pem root@my-ec2-instance-address
                    

                    【讨论】:

                      【解决方案12】:

                      我正在使用 TurboLinux 实例,在 Mac OS 系统上,请尝试以下命令: ssh -i xxxxx.pem root@xxx.xxx.xxx.xxx(分配VM的公共地址) 我不用再问密码就可以通过了。

                      【讨论】:

                        【解决方案13】:

                        我遇到了同样的问题,经过一番挣扎,我再次阅读了这个页面:

                        http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html

                        注意在第四个主题中它谈到了用户名。通常是ec2-user,但如果您使用的是 RHEL5 发行版,则可以是 root如果您使用的是 Ubuntu,用户名将是 ubuntu - 这是我的情况。

                        所以也可以试试这些:

                        ssh -i my-pem-file.pem ubuntu@my-ec2-instance-address 用于 Ubuntu

                        ssh -i my-pem-file.pem root@my-ec2-instance-address 用于 RHEL5

                        希望对你有帮助!

                        【讨论】:

                        • 当前的 CentOS AMI 还需要一个 ssh 用户名root。这与许多暗示用户名通常或始终为ec2-user 的 EC2 信息背道而驰。
                        • 感谢您的建议,它帮助很大。 CoreOS 的用户名为core
                        【解决方案14】:

                        可能是Linux problem。 但是也有可能您使用了错误的地址/密钥(您启动了一个新实例但仍在使用旧地址;或者 2 个 pem 具有相似的名称,使用了错误的名称)"ssh with non-existing user"

                        【讨论】:

                          【解决方案15】:

                          如果您从另一台机器移动/复制了 pem 文件,则该文件的所有者可能与运行 ssh 客户端的用户不同。要更改文件的所有者:

                          sudo chown <currentusername> <filename.pem>
                          

                          【讨论】:

                            【解决方案16】:

                            如果您在以 ec2 用户身份登录后需要以 root 身份执行操作,请使用 sudo su - 这可以让您进入 root 并且不需要密码。你确实需要它的东西,比如查看 tomcat 日志文件

                            【讨论】:

                              【解决方案17】:

                              当您在 sshd_config 中启用 PasswordAuthentication yes 时,系统会要求您输入密码。尝试将其更改为否。这应该可以解决它。

                              仅适用于可能遇到相同问题的其他人

                              【讨论】:

                              • 如果我想使用密码怎么办?在哪里可以找到它?如何设置?
                              【解决方案18】:

                              您应该使用 *.pem 而不是 root 密码。登录后使用passwd 设置密码。

                              【讨论】:

                              • 我正在使用 pem 文件,但它仍然要求输入密码?除非尝试在另一台计算机上使用 pem 进行 ssh 重要吗?
                              • 如果你使用 *pem 它默认不会要求输入密码。尝试在 ssh 命令中将用户指定为“ec2-user”或“root”。您使用的是什么客户端和客户端操作系统?您是否将 ec2 访问限制为仅某些 IP?
                              • 我没有,或者我认为我没有,我只是完全按照那个视频。我在 ec2-user 上尝试了 root ...我正在使用 ubuntu 并且只是终端
                              • ssh -i my.pem ec2-user@myip.com
                              • 我在以root 登录时遇到了同样的问题,但图像配置为登录应为ubuntu
                              猜你喜欢
                              • 2013-09-30
                              • 2013-03-17
                              • 2021-03-29
                              • 2013-08-09
                              • 2014-10-05
                              • 2018-06-30
                              • 2014-02-01
                              • 1970-01-01
                              • 1970-01-01
                              相关资源
                              最近更新 更多