当您要将多个用户添加到系统时,用户管理成为一个重要的考虑因素。如果系统上的用户管理无效,则可能必须妥善保管系统上私人信息和敏感信息的安全性和访问权限。本文为您提供了简单的技术,您可以利用这些简单的技术来拥有有效的用户管理控件。它包括通过UI和命令行进行的用户和组管理过程,您可以通过非常基本的步骤执行该过程。
我们正在Ubuntu 18.04系统上运行本文中描述的命令和过程。请注意,您需要具有root特权才能执行此处提到的任何任务。那么,让我们首先了解根是什么?
了解root用户
在开始用户管理之前,一定要了解Linux中的root用户。默认情况下,Ubuntu不允许root用户直接登录(但是其他Linux发行版(例如Debian和CentOS)允许直接root登录);因此,Ubuntu已创建了一个名为“sudo”的功能,可用于执行各种管理操作。您需要使用sudo命令提供密码,该密码有助于保持对用户作为管理员的所有操作的责任。默认情况下,在安装Ubuntu时创建的第一个用户被赋予sudo权限。它具有完全的root特权,并被添加到/etc /sudoers文件中的sudoers列表中。
重要的是要注意,您必须是授权的管理员才能执行本文中介绍的所有用户管理操作。
管理用户
您可以通过UI将用户添加到Ubuntu系统。但是,需要通过命令行完成高级用户管理。
通过GUI添加用户
请按照以下步骤操作,以通过Ubuntu的图形界面添加用户:
通过Ubuntu Dash或单击Ubuntu屏幕右上角的down-arrow,打开“帐户设置”对话框。单击您的用户名,然后选择“帐户设置”,如下所示:
将打开以下“用户”对话框。请注意,默认情况下将禁用所有字段。您需要提供身份验证才能进一步使用此对话框。单击“用户”对话框右上角的“解锁”按钮。
将打开以下“身份验证”对话框,以便您以管理员身份提供身份验证信息,因为只有这样,您才可以创建或编辑用户帐户:
请提供您的密码,然后单击认证按钮。现在,您将可以看到已启用“用户”对话框中的所有字段,以便您进行以下操作:
点击添加用户按钮。将打开以下“添加用户”对话框,供您输入要创建的新用户的详细信息:
您可以通过此对话框指定是要创建标准用户还是管理用户。同样重要的是要知道,对于新用户来说,将密码字段保留为空不是一个好的安全实践。这样,任何用户都可以登录并访问系统上的私有和安全数据。
点击加按钮,只有在“添加用户”对话框中提供了所有有效信息后才会启用。
现在将创建新用户,您将能够在“用户”对话框中如下所示:
通过命令行添加用户
Ubuntu命令行为管理员提供了更多控制权以执行用户管理操作。请按照以下步骤操作,以通过命令行添加用户:
- 通过按Ctrl + Alt + T或通过Ubuntu Dash打开终端。
- 输入以下命令以添加新用户:
$ sudo adduser [username]
您将需要输入sudo的密码。您还将被要求输入新用户的密码(对于re-confirmation)。您可以选择提供或忽略输入新用户的生物数据,因为它是可选的。
输入ÿ如果您提供的信息正确无误,然后按Enter键。
现在将在您的Ubuntu系统上创建新用户。
列出所有用户
作为Ubuntu管理员,您可以通过以下命令查看添加到系统中的用户列表:
$ awk -F':' '$2 ~ "\$" {print $1}' /etc/shadow
在此图中,sana是管理员,guest是我们通过UI创建的用户,guest用户是我们通过命令行创建的用户。
锁定/解锁用户帐户
Ubuntu使您可以通过以下命令临时锁定和解锁任何用户帐户:
$ sudo passwd -l username
$ sudo passwd -u username
锁定的用户只有在其处于锁定状态时才能登录系统。
向用户授予根特权
如果要授予用户root特权,则需要编辑visudo文件,该文件包含系统上的sudoer列表。
通过以下命令打开visudo文件:
$ sudo nano visudo
此命令将在Nano编辑器中打开visudo文件。
在文件中添加以下行:
[username] ALL=(ALL) ALL
此行将为指定用户提供完全root权限。
User_Alias ADMINS = [username]
Cmnd_Alias HTTPD = /etc/init.d/httpd
ADMINS ALL = HTTPD
这些行将创建一组用户,然后您可以为其分配命令别名。
通过Ctrl + X退出文件,然后输入Y和Enter来保存对visudo文件所做的更改。
现在,我们示例中的“来宾”用户将能够执行所有root用户操作。
通过命令行删除用户
您可以使用以下命令通过命令行删除用户:
$ sudo deluser [username]
在此示例中,我们删除了来宾用户。请记住,如果从没有更多成员的组中删除用户,该用户组也将被自动删除。
通过GUI删除用户
您可以通过图形界面执行删除用户的简单任务,如下所示:
- 打开帐号设定通过Ubuntu破折号或单击位于Ubuntu屏幕右上角的down-arrow对话框。单击您的用户名,然后选择“帐户设置”。
- 的用户对话框将打开。请注意,所有字段将被禁用。您需要提供身份验证才能进一步使用此对话框。点击开锁位于“用户”对话框右上角的按钮。
- 选择要删除的用户的用户名,然后单击删除用户按钮如下:
通过以下对话框,系统会询问您是否要丢弃或保留从系统中删除的用户文件
您可以通过相应的按钮选择删除或保留文件。然后,该用户将从您的系统中删除
删除/存档已删除用户的主文件夹
当您从系统中删除用户时,其主文件夹可能仍驻留在您的计算机上,具体取决于您在删除用户时所做的选择。您可以手动删除此文件夹或将其存档。使用与已删除用户相同的用户ID或组ID创建的新用户现在将可以访问其文件夹。您可能希望将这些UID /GID值更改为更合适的名称,例如root帐户,甚至可以选择通过以下命令重新定位文件夹,以避免将来发生冲突:
$ sudo chown -R root:root /home/username/
$ sudo mkdir /home/archived_users/
$ sudo mv /home/username /home/archived_users/
管理小组
Ubuntu使您可以为系统上的用户创建组。这样,您可以将管理权限和文件访问权限分配给整个组,而不是一次分配给单个用户。
您只能通过命令行在Ubuntu 18上执行组管理。
新增群组
为了添加新的用户组,请输入以下命令:
$ sudo addgroup [groupname]
例:
将创建一个新组,并为其分配唯一的组ID(GID)。
将用户添加到组
您可以通过以下命令将现有用户添加到组中:
$ sudo adduser [username] [groupname]
例:
查看组信息
为了查看组的成员,请使用以下命令:
$ groups username
您可以使用以下命令列出组成员及其GID。
$ id username
gid输出代表分配给用户的主要组。请进一步阅读以了解什么是主要组和次要组。
更改用户的主要组
用户可以是一个或多个组的一部分;其中一个是主要人群,其他是次要人群。在id命令的输出中,gid指示用户的主要组。为了更改用户的主要组,请使用以下命令:
$ sudo usermod -g [newPrimaryGroup] [username]
例:
现在,您可以看到通过id命令获取的新gip是新分配的主组的gip。
创建用户时分配组
您可以在创建新用户的同时向用户分配组,如下所示:
$ sudo useradd -G [groupname] [username]
例:
设置或更改用户密码
请注意,尚未为该新用户分配密码。这不是一个好的安全做法,因此您应该通过以下命令尽快将密码分配给该新用户:
$ sudo passwd [username]
例:
现在,新用户将拥有一个密码。
请在下面的UI图像中查看在为用户帐户分配密码之前如何将其禁用。
列出所有组
您可以通过以下命令列出系统上的所有组:
$ sudo getent group
删除组
为了从系统中删除用户组,可以使用以下命令:
$ sudo delgroup [groupname]
本文介绍了如何在Ubuntu系统上管理用户和组,以进行有效的权限控制。您可以通过本教程中介绍的有用步骤,以管理员身份管理用户或将管理权限授予其他用户以执行这些操作。