介绍
Linux 用户管理是系统管理员的一项基本技能。它涉及创建、修改和维护用户账户,以确保系统的正确访问和安全性。在这个实验中,你将学习如何在 Linux 环境中管理用户,重点是添加用户并配置他们的权限。这些技能对于维护任何 Linux 系统的安全性和完整性至关重要。
Linux 用户管理是系统管理员的一项基本技能。它涉及创建、修改和维护用户账户,以确保系统的正确访问和安全性。在这个实验中,你将学习如何在 Linux 环境中管理用户,重点是添加用户并配置他们的权限。这些技能对于维护任何 Linux 系统的安全性和完整性至关重要。
Linux 中的用户账户允许个人以特定权限访问系统。每个用户都有唯一的用户名、用户 ID (UID)、主目录和默认 shell。
在这一步中,你将在系统上创建一个名为 "cipher" 的新用户。
在你的 LabEx 虚拟机环境中打开终端。终端应该已经位于默认位置 /home/labex/project。
使用带有适当选项的 useradd 命令来创建新用户:
sudo useradd -m -s /bin/bash cipher
让我们来理解一下这个命令:
sudo:该命令以超级用户权限运行,这是进行用户管理所必需的。useradd:这是用于创建新用户的命令。-m:此选项为新用户在 /home/cipher 处创建一个主目录。-s /bin/bash:这将用户的默认 shell 设置为 bash。cipher:这是我们要创建的新用户的用户名。ls -l /home
你应该会看到类似于以下的输出:
total 8
drwxr-xr-x 2 cipher cipher 4096 Oct 15 10:30 cipher
drwxr-xr-x 5 labex labex 4096 Oct 15 10:00 labex
cipher 的条目确认用户及其主目录已成功创建。
每个用户账户都应该有一个安全的密码,以防止未经授权的访问。在这一步中,你将为上一步创建的“cipher”用户设置密码。
passwd 命令为用户设置密码:sudo passwd cipher
New password:
Retype new password:
如果两次输入的密码匹配,你将看到一条确认消息:
passwd: password updated successfully
sudo grep cipher /etc/shadow | cut -d: -f2 | grep -v '!'
如果返回一串字符,则表示密码已成功设置。输出不会显示实际密码,而是其加密形式。
让我们详细了解一下验证命令:
grep cipher /etc/shadow 查找包含我们用户的行cut -d: -f2 提取密码字段(第二个字段)grep -v '!' 只显示不包含 '!' 的行最后一部分 (grep -v '!') 特别重要,因为在 Linux 中:
因此,如果该命令返回输出,则确认已设置了有效密码,且不会暴露实际的密码哈希值。
创建用户后,了解如何查看该用户的信息非常重要。Linux 为此提供了多个命令。
id 命令查看 "cipher" 用户的基本信息:id cipher
这将显示用户 ID (uid)、组 ID (gid) 以及用户所属的组。输出应类似于:
uid=1001(cipher) gid=1001(cipher) groups=1001(cipher)
/etc/passwd 文件中该用户的条目,该文件包含基本的用户信息:grep cipher /etc/passwd
输出将是一行由冒号分隔的字段。例如:
cipher:x:1001:1001::/home/cipher:/bin/bash
这些字段代表:
finger 命令以更易读的格式查看用户信息。首先,安装 finger 软件包:sudo apt-get update
sudo apt-get install -y finger
finger cipher
输出将以更人性化的格式显示信息,包括登录状态和主目录:
Login: cipher Name:
Directory: /home/cipher Shell: /bin/bash
Never logged in.
No mail.
No Plan.
Linux 使用组来组织用户,并控制他们对文件和资源的访问权限。在这一步中,你将学习如何将用户添加到现有组中。
sudo groupadd crypto
usermod 命令将 "cipher" 用户添加到 "crypto" 组:sudo usermod -aG crypto cipher
在这个命令中:
sudo:以超级用户权限运行命令usermod:用于修改用户账户的命令-aG:将用户添加到组的选项(-a 表示追加,-G 表示补充组)crypto:组名cipher:用户名groups cipher
输出应同时包含 "cipher" 和 "crypto" 组:
cipher : cipher crypto
/etc/group 文件中该组的条目:grep crypto /etc/group
输出应显示该组及其成员:
crypto:x:1002:cipher
在执行管理任务时,用户通常需要提升权限。sudo(超级用户执行)命令允许普通用户以管理员权限执行命令。在这一步中,你将学习如何授予用户 sudo 访问权限。
sudo usermod -aG sudo cipher
groups cipher
现在输出中应该包含 "sudo" 组:
cipher : cipher crypto sudo
sudo su - cipher
sudo ls /root
系统会提示你输入为 cipher 用户设置的密码。正确输入密码后,命令应该会成功执行,显示 /root 目录的内容。
退出 cipher 用户会话,返回 labex 用户:
exit
在本次实验中,你学习了 Linux 用户管理的基本概念。你已成功创建了一个新用户、设置了密码、查看了用户信息、将用户添加到组中,并授予了 sudo 访问权限。这些技能对于系统管理员维护 Linux 系统的安全性和控制资源访问至关重要。
用户管理是系统管理的一个关键方面,你在这里学到的命令和概念为更高级的用户和权限管理任务奠定了基础。掌握这些基础知识后,你就踏上了精通 Linux 系统管理的道路。