删除没有密码的用户在sudoers中

时间:2014-04-02 11:14:15

标签: linux amazon-ec2

我有一个名为 ec2-user 的用户,并且我已经通过我能够连接到机器的pem文件连接到我的EC2实例,

现在我已通过此命令将此用户添加到sudoers列表中:

echo 'ec2-user ALL=(ALL) ALL' >> /etc/sudoers

此命令已成功执行,但在此之后,当我想要 sudo 要求输入密码时,ec2-user上没有密码。

现在,我有一些问题:

  1. 如果这是错误的方式,为什么Linux允许它完成命令?
  2. 如果这是对的,那么如何提供密码?
  3. 如果我这样做的话,我怎么能回到正常状态呢?
  4. 全部谢谢

2 个答案:

答案 0 :(得分:1)

我假设您使用的是Amazon Linux AMI。对于此AMI,默认情况下,只能使用SSH远程登录的帐户是ec2-user。此外,默认情况下,禁用密码身份验证以防止强力密码攻击。您必须在启动时为实例提供密钥对,就像您已经完成的那样。 请注意,ec2-user默认具有sudo权限。当你做sudo时,你不必输入任何密码。当您手动更改sudoers文件时,您更改了设置以要求用户ec2-user执行任何sudo操作的密码。对不起,我不知道恢复正常的简单方法。我建议启动一个新的AMI实例并终止你的旧实例。

答案 1 :(得分:1)

  

如果这是错误的方式,为什么Linux允许它完成命令?

责备Linux没有意义,它假定您为用户设置了密码。

  

如果这是对的,那么如何提供密码?

不,你不能提供密码,因为没有密码

  

如果我以错误的方式做了这件事,我怎么能回到正常状态呢   情况?

唯一的出路是以单用户模式启动计算机并撤消更改。 很遗憾,您无法将EC2实例启动到单用户模式。请咨询亚马逊支持,了解他们是否可以为您提供帮助。

你已经没有选择了。创建一个新实例,然后通过附加此实例的EBS卷来复制数据。