目 錄
譯者序
前言
第1章 基礎入門 1
1.1 術語和概念介紹 1
1.2 Kali系統(tǒng)概覽 2
1.2.1 終端 3
1.2.2 Linux文件系統(tǒng) 4
1.3 Linux系統(tǒng)基本命令 5
1.3.1 利用pwd命令查看當前位置 5
1.3.2 利用whoami命令查看當前登錄
用戶 5
1.3.3 在Linux文件系統(tǒng)中進行定位
導覽 6
1.3.4 獲取幫助 7
1.3.5 利用man命令查閱參考手冊頁面 8
1.4 查找 9
1.4.1 利用locate命令進行搜索 9
1.4.2 利用whereis命令查找二進制
程序 9
1.4.3 利用which命令在PATH變量中
查找二進制程序 9
1.4.4 利用find命令執(zhí)行更強大的
搜索 10
1.4.5 利用grep命令進行過濾 11
1.5 文件與目錄修改 12
1.5.1 創(chuàng)建文件 12
1.5.2 創(chuàng)建目錄 14
1.5.3 復制文件 14
1.5.4 重命名文件 14
1.5.5 刪除文件 15
1.5.6 刪除目錄 15
1.6 總結 15
第2章 文本操作 17
2.1 查看文件 17
2.1.1 獲取文件頭部內容 18
2.1.2 抓取文件尾部信息 18
2.1.3 標注行號 19
2.2 利用grep命令進行文本過濾 20
2.3 利用sed命令進行查找和替換 21
2.4 利用more和less命令查看文件 22
2.4.1 利用more命令控制顯示 22
2.4.2 利用less命令顯示和過濾 23
2.5 總結 24
第3章 網絡分析與管理 25
3.1 利用ifconfig命令分析網絡 25
3.2 利用iwconfig命令檢查無線網絡
設備 26
3.3 更改網絡信息 27
3.3.1 改變IP地址 27
3.3.2 改變網絡掩碼和廣播地址 27
3.3.3 偽造MAC地址 28
3.3.4 從DHCP服務器分配新IP地址 28
3.4 操控域名系統(tǒng) 29
3.4.1 利用dig命令測試DNS 29
3.4.2 改變DNS服務器 30
3.4.3 映射自身IP地址 31
3.5 總結 32
第4章 軟件添加與刪除 34
4.1 利用apt處理軟件 34
4.1.1 搜索軟件包 34
4.1.2 添加軟件 35
4.1.3 刪除軟件 35
4.1.4 更新軟件包 37
4.1.5 升級軟件包 37
4.2 向sources.list文件中添加軟件倉庫 38
4.3 使用基于GUI的安裝器 39
4.4 利用git安裝軟件 41
4.5 總結 41
第5章 文件與目錄權限控制 43
5.1 不同用戶類型 43
5.2 賦予權限 43
5.2.1 賦予單獨一個用戶所有權 44
5.2.2 賦予一個群組所有權 44
5.3 查看權限 45
5.4 更改權限 46
5.4.1 利用八進制記數法更改權限 46
5.4.2 利用UGO方法更改權限 48
5.4.3 為一個新工具賦予根執(zhí)行權限 48
5.5 利用掩碼方法設置更為安全的默認
權限 49
5.6 特殊權限 50
5.6.1 利用SUID賦予臨時根權限 50
5.6.2 利用SGID賦予根用戶群組權限 51
5.6.3 過時的黏滯位 51
5.6.4 特殊權限和權限提升 51
5.7 總結 53
第6章 進程管理 54
6.1 查看進程 54
6.1.1 通過進程名稱進行過濾 55
6.1.2 利用top命令找到占用資源最多的
進程 56
6.2 管理進程 57
6.2.1 利用nice命令修改進程優(yōu)先級 57
6.2.2 “殺死”進程 59
6.2.3 后臺運行進程 60
6.2.4 將進程移至前臺運行 60
6.3 調度進程 61
6.4 總結 62
第7章 用戶環(huán)境變量管理 63
7.1 查看和修改環(huán)境變量 63
7.1.1 查看所有環(huán)境變量 64
7.1.2 查找特定變量 64
7.1.3 修改一個會話的變量值 65
7.1.4 永久修改變量值 65
7.2 修改shell提示符 66
7.3 修改PATH變量 67
7.3.1 向PATH變量中添加路徑 67
7.3.2 替換PATH變量的方式 68
7.4 創(chuàng)建一個用戶定義的變量 69
7.5 總結 69
第8章 bash腳本編程 71
8.1 bash速成 71
8.2 第一個腳本程序:"Hello,
Hackers-Arise!" 72
8.2.1 設置執(zhí)行權限 73
8.2.2 運行HelloHackersArise 73
8.2.3 利用變量和用戶輸入來添加功能 74
8.3 你的第一個腳本:掃描開放端口 75
8.3.1 任務目標 76
8.3.2 一個簡單的掃描器 76
8.3.3 改進MySQL掃描器 77
8.4 常見的內建bash命令 79
8.5 總結 80
第9章 壓縮存檔 81
9.1 什么是壓縮 81
9.2 歸檔文件 82
9.3 壓縮文件 83
9.3.1 利用gzip進行壓縮 84
9.3.2 利用bzip2進行壓縮 84
9.3.3 利用compress命令進行壓縮 85
9.4 創(chuàng)建存儲設備的逐位或物理副本 85
9.5 總結 86
第10章 文件系統(tǒng)與存儲設備管理 88
10.1 設備目錄/dev 88
10.1.1 Linux系統(tǒng)如何表示存儲設備 89
10.1.2 驅動器分區(qū) 90
10.1.3 字符設備和塊設備 91