执行“sudo -s”时需要 root 密码

执行“sudo -s”时需要 root 密码

我在 AWS 上有一个 CentOS 7 服务器。

当以用户身份登录时centos,如何防止无需密码即可sudo -s登录?rootroot

[root@server ~]# cat /etc/sudoers | grep rootpw
Defaults rootpw
[root@server ~]# getent group wheel
wheel:x:10:centos
[root@server ~]# gpasswd -d centos wheel
Removing user centos from group wheel
[root@server ~]# getent group wheel
wheel:x:10:
[root@server ~]# su centos
[centos@server root]$ sudo -s
[root@server ~]# !!!!!!!!!!!!!!!!

答案1

sudo始终使用用户帐户的密码。如果用户有sudo权限,则用户可以在提示符中输入自己的密码后以 root 身份执行命令sudo

sudo在您的示例中,您看到了票证有效期的影响。sudo首次运行时,它会要求输入密码。之后,它会创建一个在一定时间内有效的票证。在此期间,sudo不会要求输入密码。

如果你想改变这种行为,你可以通过添加来禁用该票证

Defaults     timestamp_timeout=0

/etc/sudoers配置文件。

答案2

找到原因了。

问题在于/etc/sudoers.d/90-cloud-init-users

centos ALL=(ALL) NOPASSWD:ALL

这允许用户centos无需密码即可使用 sudo。

相关内容