我可以通过 SSH 使用我的私有密钥连接到运行 Linux 的 EC2 实例,并且可以使用 sudo 运行特权命令,但是我的实例没有根密码。怎样才能获取根密码?

为确保安全,最好不要使用根密码。要获取临时根密码以完成任务,请按照下列步骤操作:

  1. 授予用户根许可,或通过运行 sudo su 命令来获得根用户许可。
  2. 手动为根用户创建一个密码。
  3. 完成任务。
  4. 删除根用户的密码。

在创建临时密码之前,务必了解以下内容:

  • 默认情况下,sshd 守护进程会配置为拒绝根用户建立直接的 SSH 连接。避免为根用户启用直接的 SSH 访问权。而是应该使用与操作系统关联的用户 ID(例如许多 Linux 发行版的“ec2-user”)和密钥对进行连接。
  • 启动运行 Linux 的 EC2 实例时,您需要将 SSH 密钥对与其关联,然后使用私有密钥对其进行身份验证并使用 SSH 登录该实例。实例的默认用户名称取决于操作系统。例如,CentOS 使用“centos”,Ubuntu Linux 使用“ubuntu”,大多数其他 Linux 发行版使用“ec2-user”。
  • 在使用适用于您的实例的用户 ID 和密码登录后,可以在每条命令之前使用 sudo 作为前缀运行特权命令,如下例所示:
$ sudo mount /dev/sdf1/localfolder

为根用户添加临时密码的方法如下:

1.    使用 SSH 连接到运行 Linux 的 EC2 实例

2.    运行以下命令来获取根用户许可:

$ sudo su

3.    运行以下命令为根用户创建密码:

# passwd root 

4.    看到提示后,输入您的临时根密码,然后再次输入以确认。

注意:您必须以根用户的身份运行此命令。

完成任务后,运行以下命令删除根密码:

# passwd –d root

此页面对您有帮助吗? |

返回 AWS Support 知识中心

需要帮助?请访问 AWS 支持中心

发布时间:2016 年 1 月 27 日

更新时间:2018 年 7 月 20 日