配置 sudo 要求输入 root 密码

配置 sudo 要求输入 root 密码

是否可以配置 sudo 来询问 root 密码而不是用户密码?

服务器配置了一个 root 用户和一个具有有限权限的简单用户(我们称他为 simple),用于部署服务器上托管的所有应用程序。用户 simple 不在 sudoers 列表中,因此

$ sudo command

不起作用,因为 simple 的密码无法授予他 root 权限。

有时我需要通过 Capistrano(一个 ruby​​ 部署工具)运行一些需要 root 访问权限的脚本,编写脚本以便以 root 身份登录、运行脚本然后注销非常困难。我希望能够执行以下语句

$ sudo god restart tasks-group

并让 Capistrano 提示我输入 root 密码。目前,Capistrano 提示输入部署用户密码,这显然是一个非管理员帐户。

答案1

我认为您正在尝试以不符合其预期的方式使 sudo 工作 - 您不想将“简单”用户添加到 sudoers 文件中(如果我错了,请纠正我)。

在这种情况下,sudo 不是您想要使用的工具,您需要发出su -c <command>此命令以提示输入 root 密码,执行命令,然后退出。

答案2

如果您希望用户通过自己的密码或 root 密码进​​行身份验证,则需要在 sudoers 文件中设置一个标志。该标志称为rootpw。Sudo 是一个非常强大的软件包,请务必查看有关 sudoers(5) 的手册页。

答案3

否。su使用 root 密码成为 root 。

sudo更好的解决方案可能是在部署机器上使用 capistrano 来执行需要 root 访问权限的任务。

答案4

如果允许部署用户使用 sudo,那么此时它确实会成为可以以管理方式行事的特权帐户。这就是 sudo 的目的。还是我误解了这个问题?

相关内容