AWS - 删除 ec2-user 是否安全?

AWS - 删除 ec2-user 是否安全?

我在用着Amazon Linux AMI

当您创建 EC2 实例时,默认用户名是ec2-user

我想创建另一个user1具有与 相同权限的用户(假设 )ec2-user,并且我想删除ec2-user。删除 安全吗ec2-user

您能提供给我如何执行此操作的 Linux 命令吗?

抱歉,我对 Linux 命令很陌生。

答案1

创建与 ec2-user 具有相同权限的用户的步骤如下:

  • 创建账户
    • 用户添加新账户
  • 为账户设置密码
    • 密码 新账户
  • 将账户添加到 sudo 组
    • usermod -aG sudo NEWACCOUNT
  • 使用账户登录
    • su - NEWACCOUT
  • 创建 .ssh 目录
    • 创建目录 .ssh
  • 退出 NEWACCOUNT
    • 出口
  • 现在您已返回 root 权限,复制 authorized_keys 文件,并在 .ssh 上设置安全性
    • cp /home/ec2-user/.ssh/authorized_keys /home/NEWACCOUNT/.ssh/authorized_keys
    • chmod 700 /home/NEWACCOUNT/.ssh

完全退出系统,然后尝试使用 NEWACCOUNT 登录。

登录后,调用sudo su以确保其具有正确的权限。您应该会收到一条错误消息。

最后一步是将文件中的 ec2-user 替换为 NEWACCOUNT:

  • /etc/sudoers.d/云初始化

最简单的方法是使用 nano 编辑器,但 Linux 中还有许多其他编辑器。

如果此方法有效,那么您将拥有一个具有与 ec2-user 相同权限的新帐户(并且您还删除了 ec2-user 成为 root 的能力),并且可以安全地删除(或忽略)该帐户。

答案2

在 AWS 上,实例在启动时使用 CloudInit 进行配置。对于 Amazon Linux AMI,此信息存储在/etc/cloud/cloud.cfg.d/00_defaults.cfg部分下system_info

所以,恕我直言,实现您想要的最简单的解决方案是在启动实例时提供以下用户数据:

#cloud-config
system_info:
  default_user:
    name: user1

注意:在 CloudInit 版本不同的不同发行版上,此操作可能不会完全相同。

有用的链接:

答案3

是的,您可以删除默认的 AWS ec-user。您可以添加新用户并访问 EC2 实例。但是当您最初创建实例时,同时还会生成与 ec2-user 对应的 SSH PUB/PRI 密钥对。因此,您必须首先生成一个新的密钥对,才能使用新用户访问 EC-2 实例。

答案4

删除 ec2-user 的概念完全错误且具有误导性,整个 AWS 云功能监控和其他基于事件的东西都会损坏且毫无用处?您是否知道这种后果,或者您仍然需要对此进行研究?

相关内容