在开始我们的探索旅程之前,我想要介绍一些术语,以便对本章稍后要讨论的一些概念进行分类。
二进制程序 这个术语与Windows系统中的可执行文件类似,指的是可以执行的文件。二进制程序通常存放于/usr/bin或usr/sbin目录中,包括ps、cat、ls和cd(我们将在本章接触这4个命令)等工具,以及无线攻击工具aircrack-ng和入侵检测系统(IDS)Snort等应用。
大小写敏感 与Windows系统不同,Linux系统是大小写敏感的。这就意味着Desktop、desktop以及DeskTop互不相同,它们每一个都代表不同的文件或目录名称。很多之前习惯于Windows系统环境的人会对此感到十分困惑。如果你收到错误信息“未找到文件或目录”,而又十分确定该文件或目录是存在的,那么你可能需要检查一下大小写拼写。
目录 这个术语和Windows系统中的文件夹概念相同。目录提供了一种组织文件的方式,这种方式通常是按照层次结构进行划分的。
主目录 每个用户都拥有自己的/home目录,这个目录通常是你所创建的文件默认保存的位置。
Kali Kali Linux系统是一款专门针对渗透测试而设计的Linux发行版系统。它预安装了上百种工具,为你节省了自己下载及安装所耗费的时间。我将使用在编写本书时的最新版本Kali系统:Kali 2018.2,该系统发布于2018年4月。
root 与几乎每一种操作系统相同,Linux系统拥有一个由受信任人员设计的管理员或超级用户账号,他可以利用该账号在系统中进行几乎任何操作,包括系统重新配置、用户添加和口令更改等。在Linux系统中,这个账号被称为root。作为一名渗透测试人员,你会经常用到root账号,以便对系统进行控制。事实上,很多渗透测试工具都需要使用root账号。
脚本 指的是一系列运行于解释环境中的命令,该环境可以将每一行命令转换为源代码。很多渗透测试工具都仅是脚本程序。脚本程序可以通过bash解释器或任何其他脚本语言解释器(比如Python、Perl或Ruby)来运行。目前,Python是在渗透测试人员中最为流行的解释器。
shell 指的是Linux系统中一个用来执行命令的环境和解释器。最广泛使用的shell程序是bash,即Bourne-again shell,而其他流行的shell程序包括C shell和Z shell。在本书中,我将全部使用bash shell。
终端 即命令行接口(CLI)。
在掌握这些基本内容之后,我们将尝试系统性地学习成为一名渗透测试人员所需的必要Linux系统技能。在本章中,我将带领你从Kali Linux系统开始学习。