如何在 Ubuntu 18.04 上添加和删除用户

简介

在Linux系统上添加和删除用户是需要熟悉的最重要的系统管理任务之一。当您创建新系统时,默认情况下,您通常只有 帐户的访问权限。

当以超级用户 的身份运行时,您可以完全控制系统及其用户,但这也很危险,甚至可能具有破坏性。对于常见的系统管理任务,最好添加一个非特权用户并在没有** 超级用户** 权限的情况下执行这些任务。您还可以为系统上可能拥有的任何其他用户创建其他非特权帐户。系统上的每个用户都应该有自己的单独帐户。

对于需要管理员权限的任务,Ubuntu系统上安装了一个名为sudo的工具。简单地说,sudo允许您以其他用户的身份运行命令,包括具有管理权限的用户。在本指南中,您将学习如何创建用户帐户、分配sudo权限和删除用户。

前提条件

要完成本教程,您需要访问运行Ubuntu18.04的服务器。确保您有超级用户 访问服务器的权限,并启用了防火墙。要进行此设置,请遵循我们的Ubuntu 18.04.初始服务器设置指南

添加用户

如果您以超级用户 的身份登录,您可以随时通过运行以下命令来创建新用户:

1adduser newuser

如果您是以拥有sudo权限的非 用户身份登录,则可以使用以下命令添加新用户:

1sudo adduser newuser

无论采用哪种方式,您都需要回答一系列问题:

  • 为新用户分配并确认密码。
  • 输入有关新用户的任何其他信息。这是可选的,如果您不希望使用这些字段,可以通过按ENTER键跳过。
  • 最后,您将被要求确认您提供的信息是正确的。按Y继续。

您的新用户现在可以使用了,并且可以使用您输入的密码登录。

如果您需要新用户具有管理权限,请继续下一节。

为用户授予sudo权限

如果您的新用户应该能够以根用户 (管理)权限执行命令,则需要为新用户授予对sudo的访问权限。我们来看看两种方法:一是将用户添加到预定义的** sudo** User group,]中;二是在sudo‘S配置中按用户指定权限。

将新用户添加到SUDO组

默认情况下,Ubuntu 18.04系统上的sudo被配置为将FULL权限扩展到sudo 组中的任何用户。

您可以使用groups命令查看您的新用户所在的组:

1groups newuser
1[secondary_label Output]
2newuser : newuser

默认情况下,新用户只在他们自己的组中,因为adduser除了用户配置文件之外还创建了这个组。用户及其自己的组共享相同的名称。要将用户添加到新组中,可以使用usermod命令:

1usermod -aG sudo newuser

-aG选项告诉usermod将用户添加到列出的组中。

请注意,usermod命令本身需要sudo权限。这意味着只有当您以根用户 的身份登录,或者作为其他已被添加为sudo组成员的用户登录时,您才能将用户添加到sudo组。在后一种情况下,您必须在此命令前加上sudo,如下例所示:

1sudo usermod -aG sudo newuser

/etc/sudoers中指定显式用户权限

除了将用户放在 sudo 组中,您还可以使用visudo命令,该命令在系统的默认编辑器中打开一个名为/etc/sudoers的配置文件,并显式地指定每个用户的权限。

修改/etc/sudoers时,唯一推荐的方式是使用visudo,因为它会锁定文件,防止同时进行多次编辑,并在覆盖文件之前对其内容进行验证检查。这有助于防止因为您丢失了sudo权限而导致sudo配置错误并无法修复问题的情况。

如果您当前以根用户 身份登录,请运行以下命令:

1visudo

如果您以拥有sudo权限的非 用户身份登录,请运行带有sudo前缀的相同命令:

1sudo visudo

传统上,visudo会在vi编辑器中打开/etc/sudoers,这可能会让新手感到困惑。在新的Ubuntu安装中,默认情况下,visudo将使用Nan文本编辑器,这将提供更方便和可访问的文本编辑体验。使用箭头键移动光标,并搜索如下所示的行:

1[label /etc/sudoers]
2root ALL=(ALL:ALL) ALL

在此行下方,添加以下突出显示的行。请务必将newuser更改为您要授予sudo权限的用户配置文件的名称:

1[label /etc/sudoers]
2root ALL=(ALL:ALL) ALL
3newuser ALL=(ALL:ALL) ALL

为每个应该被授予完全sudo权限的用户添加如下所示的新行。完成后,按CTRL+X保存并关闭文件,然后按Y,然后按Enter确认。

测试您的用户的sudo权限

现在,您的新用户可以使用管理权限执行命令。

以新用户身份登录后,您可以以常规用户身份通过正常键入命令来执行命令:

1some_command

您可以使用管理权限执行相同的命令,方法是在命令前键入sudo

1sudo some_command

在执行此操作时,系统将提示您输入登录时所用的常规用户帐户的密码。

删除用户

如果您不再需要用户,最好删除旧帐户。

您可以通过以根用户身份 运行以下命令来删除用户本身,而不删除其任何文件:

1deluser newuser

如果您以另一个具有sudo权限的非 用户身份登录,您将使用以下内容:

1sudo deluser newuser

如果您希望在删除用户时删除用户的主目录,则可以以根用户身份 发出以下命令:

1deluser --remove-home newuser

如果您以具有sudo权限的非 用户身份运行此命令,则需要运行带有sudo前缀的相同命令:

1sudo deluser --remove-home newuser

如果您之前为您删除的用户配置了sudo权限,则可能需要再次删除相关行:

1visudo

如果您是拥有sudo权限的非根用户 ,请使用以下命令:

1sudo visudo
1[label /etc/sudoers]
2root ALL=(ALL:ALL) ALL
3newuser ALL=(ALL:ALL) ALL   # DELETE THIS LINE

这将防止使用相同名称创建的新用户意外地被授予sudo权限。

结论

现在,您应该已经很好地掌握了如何在Ubuntu18.04系统中添加和删除用户。有效的用户管理将允许您将用户分开,并仅为他们提供执行其工作所需的访问权限。

有关如何配置sudo的更多信息,请查看我们的指南如何编辑sudoers file.

Published At
Categories with 技术
comments powered by Disqus