在 Kali 中管理用户和系统

Kali LinuxKali LinuxBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

在这个实验中,你将学习如何在 Kali Linux 中管理用户和系统。Kali Linux 是一个流行的网络安全和渗透测试平台。通过动手实践,你将探索一些基本命令,例如检查当前用户、切换到 root 权限、创建新用户、监控系统进程以及查看系统日志。这些技能对于在 LabEx VM 环境中进行有效的系统管理和故障排除至关重要。当你打开终端时,你将自动连接到 Kali Linux 容器的 shell,准备开始练习。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL kali(("Kali")) -.-> kali/KaliGroup(["Kali"]) kali/KaliGroup -.-> kali/term_ops("Kali Terminal") kali/KaliGroup -.-> kali/user_ctrl("User Accounts") kali/KaliGroup -.-> kali/sys_obs("System Monitoring") kali/KaliGroup -.-> kali/proc_ctrl("Process Management") kali/KaliGroup -.-> kali/bash_code("Bash Scripting") kali/KaliGroup -.-> kali/log_ops("Log Analysis") subgraph Lab Skills kali/term_ops -.-> lab-552193{{"在 Kali 中管理用户和系统"}} kali/user_ctrl -.-> lab-552193{{"在 Kali 中管理用户和系统"}} kali/sys_obs -.-> lab-552193{{"在 Kali 中管理用户和系统"}} kali/proc_ctrl -.-> lab-552193{{"在 Kali 中管理用户和系统"}} kali/bash_code -.-> lab-552193{{"在 Kali 中管理用户和系统"}} kali/log_ops -.-> lab-552193{{"在 Kali 中管理用户和系统"}} end

使用 whoami 检查当前用户

在第一步中,你将学习如何使用 whoami 命令来识别当前登录到系统的用户。这是像 Kali Linux 这样的 Linux 系统中的一项基本但重要的技能,因为它可以帮助你了解你正在哪个用户帐户下操作,这会影响权限和命令执行。

当你在 LabEx VM 环境中打开终端时,你将自动连接到 Kali Linux 容器的 shell。无需手动启动容器或进入 shell;环境已经为你设置好了。

在终端中键入以下命令,然后按 Enter 键:

whoami

此命令显示当前用户的用户名。你应该看到类似于以下的输出:

root

此输出表明你当前以 root 用户身份登录到 Kali Linux 容器中。在此环境中,作为 root 意味着你默认拥有完整的管理权限。在执行需要特定权限的任务之前,了解你的用户身份至关重要。

这个简单的命令为用户管理奠定了基础。当我们进入下一步时,你将在此基础上探索如何管理权限和创建其他用户。在继续之前,请确保你看到了预期的输出。

更新软件包列表以便安装工具

在继续进行用户管理和系统监控任务之前,你需要确保 Kali Linux 容器中的软件包列表是最新的。这一步对于在后续步骤中顺利安装工具和软件至关重要。

在 Kali Linux 容器的终端中,键入以下命令并按 Enter 键:

apt update

此命令从配置的软件仓库(repository)刷新软件包列表,确保你可以访问最新版本的软件包。你应该看到类似于以下的输出(确切的内容可能会有所不同):

Get:1 http://mirrors.cloud.aliyuncs.com/kali kali-rolling InRelease [41.2 kB]
Get:2 http://mirrors.cloud.aliyuncs.com/kali kali-rolling/main amd64 Packages [19.1 MB]
...
Fetched 19.5 MB in 5s (3,912 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.

此输出表明系统正在下载最新的软件包信息。命令完成后,你的系统就可以安装任何所需的工具,而不会出现与过时的软件包数据相关的问题。此步骤是在即将到来的任务中安装软件的先决条件,确保你在进行过程中获得无缝体验。

使用 adduser 添加新用户

现在你的软件包列表已更新,你将学习如何使用 adduser 命令在 Kali Linux 容器中创建一个新用户。创建新用户是一项关键的管理任务,它允许你管理系统上不同个人或角色的访问权限。

adduser 命令是 Linux 中一个用户友好的工具,用于设置新的用户帐户。它会引导你完成一个交互式过程,以配置用户的密码和其他详细信息,非常适合初学者。由于你已经以 root 用户身份登录到此容器中,因此你拥有执行此任务所需的权限。

如果尚未安装 adduser,请安装它。

apt install -y adduser

在终端中键入以下命令,然后按 Enter 键以开始添加名为 testuser 的新用户的过程:

adduser testuser

按照以下描述的交互式提示操作。为简单起见,使用最少的输入,但请确保完成每个步骤:

  • Enter new UNIX password(输入新的 UNIX 密码): 键入一个简单的密码,例如 test123,然后按 Enter 键。出于安全原因,字符将不可见。
  • Retype new UNIX password(重新输入新的 UNIX 密码): 重新键入相同的密码 test123,然后按 Enter 键。
  • Full Name(全名), Room Number(房间号), Work Phone(工作电话), Home Phone(家庭电话), Other(其他): 按 Enter 键跳过这些选项。
  • Is the information correct? [Y/n](信息是否正确?[Y/n]): 键入 Y,然后按 Enter 键确认。

你应该看到类似于以下的输出(详细信息可能略有不同):

Adding user 'testuser' ...
Adding new group 'testuser' (1000) ...
Adding new user 'testuser' (1000) with group 'testuser' ...
Creating home directory '/home/testuser' ...
Copying files from '/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for testuser
Enter the new value, or press ENTER for the default
    Full Name []:
    Room Number []:
    Work Phone []:
    Home Phone []:
    Other []:
Is the information correct? [Y/n] Y

此输出确认已创建用户 testuser,以及主目录和必要的配置。要验证用户是否存在,请键入以下命令,然后按 Enter 键:

id testuser

你应该看到如下输出:

uid=1000(testuser) gid=1000(testuser) groups=1000(testuser)

这确认用户 testuser 已设置了唯一的用户 ID(user ID)和组 ID(group ID)。添加用户对于管理访问权限至关重要,而无需完全依赖 root 帐户,从而增强了系统安全性。创建此用户后,你就可以在后续步骤中探索更多管理任务。

使用 top 监控系统进程

创建新用户后,下一步是学习如何使用 top 命令在 Kali Linux 容器中监控正在运行的进程。此工具对于了解系统性能和识别资源使用情况至关重要。

top 命令提供了一个实时、交互式的系统运行进程视图。它显示了诸如 CPU 使用率、内存使用率和进程状态等详细信息,这些信息有助于解决性能问题。作为 root 用户,你可以直接运行此命令,而无需额外的权限。

如果尚未安装 top,请安装它。

apt install -y procps

在终端中键入以下命令,然后按 Enter 键以开始监控进程:

top

执行此命令后,终端将显示一个不断更新的信息表。输出将如下所示(具体进程和值会有所不同):

%Cpu(s):  1.0 us,  0.5 sy,  0.0 ni, 98.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   2048.0 total,    512.3 used,   1535.7 free,     10.2 shared,    200.1 buff/cache
MiB Swap:    512.0 total,      0.0 used,    512.0 free

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
    1 root      20   0   12345   2345   1234 S   0.0   0.1   0:01.23 init
  123 root      20   0   54321   9876   4321 S   0.0   0.5   0:00.45 bash

top 输出中的关键部分包括:%Cpu(s)(CPU 使用率细分)、MiB Mem(内存使用率)、PID(进程 ID)、%CPU%MEM(资源使用百分比)以及 COMMAND(进程名称)。此信息可帮助你了解系统上正在运行的内容,并识别任何资源密集型进程。

要退出 top 显示并返回到终端提示符,请按键盘上的 q 键。监控进程是系统管理的一项重要技能,可让你维护系统健康。有了这些知识,你就可以准备好在下一步中探索系统日志。

使用 dmesg 和 tail 查看系统日志

在最后一步中,你将学习如何使用 dmesgtail 命令在 Kali Linux 容器中查看系统日志。日志提供了有关系统事件的详细信息,这对于故障排除和了解系统行为非常有价值。

由于我们正在 Docker 容器中工作,而 systemd 不可用,因此我们将使用替代方法来查看系统日志。dmesg 命令显示与内核相关的消息,而 tail 可用于直接查看各种日志文件。

首先,让我们安装所需的工具:

apt install -y util-linux

要查看内核消息,请在终端中键入以下命令,然后按 Enter 键:

dmesg

你将看到类似于以下的输出(确切内容会有所不同):

[    0.000000] Linux version 5.10.0-18-amd64 ...
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-5.10.0-18-amd64 ...
[    0.000000] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'

要查看来自系统日志(syslog)的最新系统消息,你可以使用:

tail -f /var/log/syslog

如果 syslog 文件不存在,你还可以检查其他常见的日志文件:

ls -l /var/log/

这将显示系统中可用的日志文件。然后,你可以使用 tail 命令查看任何特定的日志文件:

tail -n 20 /var/log/messages

-n 20 选项显示日志文件的最后 20 行。要从 tail -f 命令退出,请按 Ctrl+C

这些命令提供了对系统活动的不同视图:

  • dmesg 侧重于内核消息和启动时信息
  • tail 与日志文件一起显示正在进行的系统事件和应用程序日志

虽然不如 systemd 的 journalctl 那么全面,但这些工具仍然提供了对系统行为的宝贵见解,并且非常适合容器环境。

总结

在这个实验中,你学习了在 Kali Linux 中管理用户和系统的基本技能。你首先使用 whoami 识别当前用户,使用 apt update 更新软件包列表以准备安装,并使用 adduser 创建新用户以管理访问权限。此外,你还使用 top 监控系统进程以了解资源使用情况,并使用 dmesgtail 查看系统日志以分析系统事件。这些基础技能使你能够在 Linux 环境中进行有效的系统管理和故障排除。