fcu*_*hoo 7 users root authentication su
我在 CentOS 上创建了一个用户useradd -M username
。现在,我想成为那个用户就像su - username
.
它要求我输入该用户的密码,但我没有为该用户设置密码。作为一种解决方法,我必须成为 root,然后才能su - username
正常工作。
首先,我认为它要求输入 root 密码,但事实并非如此。有任何想法吗?
slm*_*slm 12
使用命令创建帐户后,useradd
您需要以 root 身份运行以下命令为这个新创建的帐户设置密码:
$ passwd <username>
Run Code Online (Sandbox Code Playgroud)
如果您绝对肯定您 (userZ) 希望在不提供 userX 密码的情况下成为另一个用户 (userX),并且您不想先成为 root,那么您可能正在寻找sudo
.
CentOS Wiki 很好地涵盖了您在这篇题为:如何成为 Root 的文章中询问的整个主题。
这是一个概要。
您希望能够以 root 身份执行任何操作,例如成为其他用户,而无需提供他们的密码。将以下规则添加到您的 sudoers 文件/etc/sudoers
. 注意:您visudo
以 root 身份使用命令编辑 sudoers 文件!
userZ ALL=(ALL) ALL
Run Code Online (Sandbox Code Playgroud)
上述方法仍会向您询问 userZ 的密码。您可以通过将此规则添加到 sudoers 来摆脱这种保护。
userZ ALL=NOPASSWD: ALL
Run Code Online (Sandbox Code Playgroud)你想从包裹的能力只利用成为一个特定的用户sudo
。
userZ ALL=(root) NOPASSWD: /bin/su - userX
Run Code Online (Sandbox Code Playgroud)
注意:也可以执行上述操作,以便 userZ 也必须使用他们的密码来运行su
命令。以上只是让我们的 userZ 变成了 userX,仅此而已。