如何在 Ubuntu 上将用户添加到 Sudoers

这 sudo Linux 中的命令允许您运行所有需要 root 权限的命令。 如果没有 root 权限,普通用户在 Linux 中可以做的事情是非常有限的。 但是,实际上,您不能授予每个用户所有权限,让他们可以对系统做任何他们想做的事情。 但是,您希望为某些用户分配 root 权限以执行全部或有限数量的职责。 这 sudo 命令允许您通过允许用户以 root 用户身份运行所有或一组特定命令来执行此操作。

将用户添加到 sudoers(可以运行的用户列表 sudo 命令)在 Ubuntu 上,有三种不同的方法,包括命令行和 GUI。 我们将解释每种方法 example. 如果您对如何在 Linux 中添加新用户感兴趣,请访问我们关于如何在 Ubuntu 20.04 上添加和删除用户的帖子。

笔记:对于演示,我们将使用 Ubuntu 20.04 LTS。 您可以在其他 Linux 发行版上使用相同的过程 sudo.

检查用户是否具有 Sudo 权限

查明用户是否有 sudo 权利,您将需要检查它是否是该组的一部分“sudo”。 您可以在终端中使用以下命令进行检查:

$ groups <username>

如果用户有 sudo 权利,你会看到“sudo” 输出中的组。

例如,检查名为“ummara”的用户是否拥有 sudo 访问,命令将是:

$ groups ummara

以下输出显示用户“ummara”是 sudo 组,因此有 sudo 特权。

在 Ubuntu 上将用户添加到 Sudoers

有不同的方法可以在 Ubuntu 上将用户添加到 sudoers。 请记住,您需要以 root 身份运行此处描述的命令,或者 sudo.

方法 #1 通过将用户添加到 sudo 组(命令行)

将用户添加到 sudoers 并分配它 sudo 权限,使用 usermod 命令如下:

$ sudo usermod -aG sudo username

此命令会将用户添加到名为“sudo”。 的成员 sudo 组被允许运行 sudo 命令。

例如,要将名为“ummara”的用户添加到 sudoers,命令将是:

$ sudo usermod -aG sudo ummara

Enter 这 sudo 密码,之后用户将被添加到 sudo 团体。 要确认用户现在在 sudoers 中,请发出以下命令:

$ groups <username>

groups 命令告诉用户属于哪些组。

在我们的场景中,命令将是:

$ groups ummara

在输出中,您应该看到 sudo 团体。

现在用户将被允许运行 sudo 命令,就像我们尝试过的“sudo apt update”命令:

方法 2:通过将用户添加到 Sudoers 文件(命令行)

另一种赋值方法 sudo 访问是通过将用户添加到 sudoers 文件。 您可以按如下方式编辑 sudoers 文件:

$ sudo visudo

Enter 你的密码。 现在向下滚动文件底部并添加以下格式的条目:

username ALL=(ALL) NOPASSWD:ALL

例如,我们想将一个名为“ummara”的用户添加到 sudoers。 为此,我们在 sudoers 文件中附加了以下条目:

ummara ALL=(ALL) NOPASSWD:ALL

完成后,保存并 close sudoers 文件。 现在用户将被允许运行所有命令 sudo.

编辑 sudoers 文件后,您可以检查其语法是否正确。 发出以下命令来执行此操作:

$ sudo visudo -c

如果语法正确,您将看到以下输出:

要确认用户现在在 sudoers 中,请发出以下命令:

$ groups <username>

你应该看到 sudo 在输出中分组。

使用 Sudo 限制根访问

在某些场景下,用户需要执行某个需要 root 权限的任务。 但是,给他们分配所有特权是不合理的。 和 sudo,您可以限制对他们可以使用的命令的 root 访问。 例如,您希望名为“ummara”的用户仅授予对“useradd”和“adduser”命令的访问权限。 在这种情况下,使用以下命令编辑 sudoers 文件:

$ sudo visudo

然后向下滚动文件并添加以下条目:

ummara ALL=(ALL) NOPASSWD: /usr/sbin/useradd,/usr/sbin/adduser

Save sudoers 文件并退出。

现在用户“ummara”将只能使用 useradd 和 adduser 命令。

但是,如果“ummara”尝试运行任何其他 sudo 命令,它将被拒绝。

方法 #3:通过将帐户类型更改为管理员 (GUI)

您可以通过另一种方式从图形用户界面将用户添加到 sudoers。 以下是执行此操作的步骤:

1. 通过右键单击桌面并选择打开设置实用程序 设置 从菜单中。

然后在设置窗口中,选择 用户 标签。 然后通过单击解锁用户设置 开锁 按钮。

现在输入您的密码进行身份验证,然后单击 认证.

现在选择您要授予的用户 sudo 使用权。 然后在用户下 帐号设定,切换前面的切换按钮 行政人员 进入状态,如下面的屏幕截图所示。

通过这样做,用户将被添加到 sudo 组,它将能够使用所有 sudo 命令。

从 Sudoers 中删除用户

要从 sudoers 中删除用户,请使用以下命令:

$ sudo gpasswd -d <username> sudo

此命令将从 sudo 组,因此它将不再能够以 root 用户身份运行命令。

要确认用户是否已从 sudoers 中删除,请运行以下命令:

$ groups <username>

应该没有“sudo” 输出中的组。

Sudo 对于系统管理员来说是一个非常方便的工具,它允许他们为用户提供具有粒度的 root 访问权限。 在这里,我们介绍了如何使用不同的方法将用户添加到 sudoers,限制 root 访问 sudo 并从 sudoers 中删除用户。