在EC2实例上为Ubuntu用户强制实施密码

时间:2016-03-01 09:11:03

标签: ubuntu amazon-ec2

我有一个“ Amazon EC2 ubuntu ”实例,并拥有密钥文件(somekeyfile.pem)来通过SSH访问该实例。我已经与供应商共享了密钥文件(somekeyfile.pem)文件以部署项目内容。但现在我想撤销该供应商的访问权限。为此我尝试了以下方法。

(1) Set root password using the command 
sudo passwd

(2) Set ubuntu password using the command 
sudo passwd ubuntu

(3) Modify the /etc/ssh/sshd_config
    and set PasswordAuthentication yes
    then restart the SSH service 

(4) Modified /etc/sudoers.d/90-cloud-init-users and changed 

ubuntu ALL=(ALL) NOPASSWD:ALL

to:

ubuntu ALL=(ALL) ALL

仍然是供应商,我只能使用密钥对登录实例。有没有办法使用keypair / .pem身份验证启用密码。请指导。我知道Sudo命令要求输入密码。

1 个答案:

答案 0 :(得分:2)

首先,您不应该共享您的私钥。

私钥私有

您应该做的是要求您的用户创建自己的私钥/公钥对并与您沟通公开,以便您可以将其附加到$HOME/.ssh/authorized_keys文件。

要允许密钥使用特定用户通过SSH连接到主机,您需要做的是将相应的公开密钥附加到此用户的$HOME/.ssh/authorized_keys文件。

要撤消密钥,您只需删除此用户的$HOME/.ssh/authorized_keys文件的相应行。

如果您对公钥/私钥机制不满意,您应该首先阅读它。

解决您的问题:

  1. 创建新的私钥/公钥对。私钥将被替换 您当前的somekeyfile.pem并暂时保密!

  2. 将公钥附加到相应的.ssh/authorized_keys

  3. 确保您可以使用新私钥登录

  4. 删除.ssh/authorized_keys

  5. 中与旧密钥对应的行

    警告:如果您陷入困境,最终将无法再联系到您的主机,因此请在撤销旧密钥之前确保新密钥有效。