在AWS的EC2服务器上创建root用户密码,并使用root用户登录

今天开始研究亚马逊的云主机EC2,遇到了一个问题,我需要在EC2上安装一些Web软件时,但是执行一些命令只能是root权限才可以运行,而EC2默认不是通过root用户登录的,所以需要需要创建新的root密码并切换到root帐号

1、根据官网提供的方法登录连接到EC2服务器(官网推荐windows用户使用PUTTY连接)

2、 创建root的密码,输入如下命令:

sudo passwd root

3、然后会提示你输入new password。输入一个你要设置的root的密码,需要你再输入一遍进行验证。

4、接下来,切换到root身份,输入如下命令:

su root

5、使用root身份编辑亚马逊云主机的ssh登录方式,找到 PasswordAuthentication no,把no改成yes。输入:

vim /etc/ssh/sshd_config

6、接下来,要重新启动下sshd,如下命令:

sudo /sbin/service sshd restart

7、然后再切换到root身份

su root

8、再为原来的”ec2-user”添加登录密码。如下命令:

passwd ec2-user

按提示,两次输入密码。到此可以用root身份直接登录EC2的服务器了。

 


以上是早些年找到的内容,不过对于现在的系统来说,该方法行不通了,ec2-user连sudo权限都没有。

在网上又找了些资料,整理如下:

对于基于 Amazon Linux AMI 或 CentOS/RHEL 的实例

  1. 登录到你的 EC2 实例: 

    使用 SSH 登录到你的 EC2 实例。例如:

    ssh ec2-user@your-ec2-instance-public-dns
  2.  切换到 root 用户

    首先,你可以切换到 root 用户来执行后续操作。使用以下命令:

    sudo -i
  3.  编辑 sudoers 文件

     使用你喜欢的文本编辑器(例如 vim 或 nano)编辑 /etc/sudoers 文件。例如,使用 visudo 命令(这是一个更安全的编辑 sudoers 文件的方法,因为它会检查语法错误):

    visudo 
  4.  添加 ec2-user 到 sudo 组: 

    在 visudo 编辑器中,找到以下行(可能位于文件的不同部分): 

    ## Allow root to run any commands anywhere
    root ALL=(ALL) ALL

    在下面添加一行,以允许 ec2-user 使用 sudo:

    ec2-user ALL=(ALL) ALL

    保存并关闭编辑器。 

  5.  测试 sudo 权限

    切换回 ec2-user 并尝试使用 sudo 命令:

    exit # 退出 root 用户回到 ec2-user
    sudo whoami

    如果返回root,则说明配置成功了。

     

 

posted @ 2025-02-14 12:59  阿木工作室  阅读(1077)  评论(0)    收藏  举报