本章重點內容:
1、Kali Linux中的文件系統
2、Kali Linux 常用命令
2.1 與文件目錄相關的命令(pwd、cd、ls)
2.2 文件查看命令(cat、head、tail、nl、grep)
2.3 網絡相關命令(ifconfig、ip addr show等)
2.4 進程控制命令(ps)
2.5 Kali中的服務管理(service)
2.6 Kali中的shell腳本
接下來針對本章內容展開詳細說明:
本篇文章內容及后續章節內容中涉及到的kali Linux系統展示,都是采用截止現在2021年5月的最新版本2021.1版本,是通過虛擬機安裝kali Linux來展示,桌面如下:

1、Kali Linux中的文件系統
通過系統界面可以看到一個“file system”,這個就是文件系統,雙擊點開,會看到如下界面:
右側就是該文件下的文件系統目錄

重點文件的說明,從上到下,從左到右:
bin:二進制可執行文件的目錄
boot:用來存放Linux操作系統的內核和在引導過程中使用的文件
dev:dev是設備(device)的英文縮寫,在這個目錄中包含Linux操作系統中使用的所有外部設備。
etc:配置文件存放的目錄,如人員的用戶名/密碼文件、各種服務的起始文件等。
home:系統默認的用戶home目錄,當新增賬戶時,用戶的home目錄都存放在該目錄下
lib:系統使用函數庫的目錄,程序在執行過程中,調用的一些額外參數時就需要函數庫的協助,后面32或者64是根據不同系統調用來區分的
media:掛載的媒體設備目錄,一般講外部設備掛載到這里,例如插入的U盤
mnt:用於存放掛載存儲設備的掛載目錄,如磁盤等
opt:該目錄用來安裝附加軟件包,是用戶級的程序目錄
proc:這是一種特殊的、由軟件創建的文件系統,內核使用它向外界導出信息,只存在內存中,而不占用外存空間。
root:root用戶的目錄
run:是臨時文件系統,存儲系統啟動以來的信息。當系統重啟時,這個目錄下的文件被刪掉或清除
sbin:該目錄用於存放root用戶使用的可執行命令
srv:服務啟動之后需要訪問的數據目錄
sys:該目錄下是系統及內核重要的操作內容
tmp:一般用戶或正在執行的程序臨時存放文件的目錄,任何用戶都可以訪問,重要數據不可存放在該目錄下
usr:應用程序存放的目錄,usr/bin用於存放應用程序;usr/share用於存放共享數據;usr/lib用於存放不能直接運行的,卻是許多應用程序運行所必需的一些函數庫文件。
var:該目錄用於存放系統執行過程中經常變化的文件。
2、Kali Linux 常用命令
2.1與文件目錄相關的命令
PWD:是Print Working Directory(打印工作目錄)的縮寫,用於現實當前工作目錄
通過點擊終端命令行來操作:點擊紅框圖標:

點擊后,就會看到命令行操作界面,和之前kali版本有所不同,這是最新的格式:
直接輸入pwd,回車就會現實當前目錄

cd是change directory(更改目錄)的縮寫,如果需要切換目錄,可以使用cd命令
例如,我們切換到sys目錄,如下:

如果直接輸入cd不加任何目錄,則是返回到主目錄,如下:

如果想返回到上一層目錄,使用cd+“..",即可,如下:

ls命令:查看目錄中的內容,如下

上面實例是查看來兩個文件的目錄內容,可以對比查看一下
2.2 文件查看命令
cat:可以在屏幕上顯示文件,可以合並文件,可以建立文本文件,例如:
通過cd切換到文件所在的地址,然后使用cat命令即可,切記不要添加文件類型后綴

head:可用於查看文件開頭部分的內容,有一個常用的參數-n用於顯示行數,默認為10,實例如下:

test文件中只有一行,所以顯示來一行,我們調整文件內容,調整為11行,顯示如下:

顯示11行,通過-n參數來實現:

tail:將文件的胃部內容顯示出來,如下:

nl:帶行號顯示內容,如下:

grep:用於查找文件里符合條件的字符串,如下:

其他的還有more、less命令,和cat類似,只是查看的方式不一樣,可以自己親自試一下
2.3 網絡相關命令
ifconfig:可以查看整個網絡信息,例如IP地址,子網掩碼等等
ip addr show:也是顯示網絡信息,和上面命令顯示的內容有所不同,可以自己嘗試對比一下
ip route show:顯示路由,如果直接用route命令,也可以查看到路由信息
ip neigh show:顯示arp表,地址解析協議,即ARP(Address Resolution Protocol),是根據IP地址獲取物理地址的一個TCP/IP協議
2.4 進程控制命令
ps命令用於顯示當前進程的狀態,ps命令的參數非常多,以下是常用的幾個:
-A:列出所有的進程,如下:

-w:顯示加寬可以顯示較多的信息,如下:

-au:顯示較詳細的信息,如下:

-aux:顯示所有(包括其他使用者)的進程,如下:

一般情況下,我們查看進程不是希望所有進程都顯示在屏幕是,大多數情況下是想通過篩選,選擇我們想看的進程,可以通過過濾命令grep來實現,如下:
我們先啟用一個程序進程,例如啟動msfconsole,如下:單獨打開一個命令行編輯器,啟動

在另一個終端上,使用進程查看該程序進程,如下:

kill命令可以用於刪除執行中的程序或工作,例如緊接着上面的程序,刪除1309進程,如下:

2.5 Kali中的服務管理
service命令用於對系統服務進行管理,例如啟動(start)、停止(stop)、重啟(restart)、查看狀態(status)等,如下:
啟動Apache2服務為例:啟動后在停止,中間會跳出彈窗讓輸入密碼,就是使用的kali賬戶和密碼

2.6 Kali中的shell腳本
首先在Kali當前目錄下,創建一個文本文件,名稱為“HelloKali”,其內容如下:

通過ls -l命令,查看該文件的權限,只有讀和寫,如下:

通過chmod命令,給該文件增加可被執行的權限,如下:

然后運行該文件,如下:通過【./文件名】的方式直接運行程序即可,

以上,就是一個很簡單的shell腳本運行,當然隨着學習的越多,shell腳本的內容會更復雜
