隨著Linux的日益普及,越來越多的管理員開始進入到系統中為任務創建網絡連接或服務器,這也使得Linux成為許多攻擊者的選擇。由于缺乏有關安全相關技術,系統管理員現在面臨許多安全問題。學習Linux安全知識將有助于創建一個更安全的Linux系統。本書循序漸進地介紹Linux系統面臨的各種安全威脅,介紹如何通過定制Linux內核保護本地文件,如何在本地和遠程管理用戶身份驗證,并阻止網絡攻擊等。本書實例豐富、圖示清晰,無論你是新手還是經驗豐富的Linux管理員,你都能從本書中學到Linux系統安全技術。
Preface?前 言在建立Linux系統時,安全性在各個階段都被認為是重要部分。通曉Linux的基本知識對在機器上實現良好的安全策略至關重要。
Linux系統的安全性不是天生就完美的,因而,管理員有責任以使其變得更安全的方式來配置它。
本書是幫助管理員配置更安全的機器的實用指南。
如果你想了解Linux的內核配置、文件系統安全、安全認證、網絡安全以及Linux上的各種安全工具,那么本書就能滿足你的需求。
Linux安全是一個龐大的主題,僅用一本書不足以涵蓋所有的內容。不過,本書仍將提供很多方法來幫助你加固機器。
本書主要內容第1章 涵蓋Linux有關的各種漏洞及利用,還討論了應對這些漏洞的安全方法。內容包括制定安全策略并進行安全控制以用于口令保護和服務器安全,對Linux系統進行脆弱性評估。本章還將討論sudo訪問的配置方法。
第2章 重點介紹Linux內核的配置和構建過程以及它的測試。內容包括構建內核的要求、配置內核、安裝內核、定制內核以及內核的調試等。本章還將討論如何使用Netconsole配置一個控制臺。
第3章 著眼于Linux系統的文件結構和訪問權限。內容包括查看文件和目錄的詳細信息、使用chmod處理文件和文件訪問權限、實現訪問控制列表等。本章還將向讀者介紹LDAP的配置。
第4章 探討安全的本地系統用戶認證。內容包括用戶認證的日志記錄、限制用戶的登錄能力、監視用戶行為、定義授權控制以及如何使用PAM。
第5章 討論Linux系統的遠程用戶認證。內容包括使用SSH遠程訪問服務器、禁用和啟用root用戶登錄、限制使用SSH時的遠程訪問、通過SSH遠程復制文件以及設置Kerberos。
第6章 討論關于網絡攻擊和網絡安全的問題。內容包括管理TCP/IP網絡、使用iptables配置防火墻、阻止偽造地址和不需要的入站流量等。本章還將介紹TCP Wrapper的配置和使用。
第7章 介紹可用于Linux系統的各種安全工具或軟件。涉及的工具包括sXid、PortSentry、Squid 代理服務器、OpenSSL服務器、Tripwire和Shorewall。
第8章 介紹與安全和滲透測試有關的幾個著名的Linux/UNIX發行版本,包括Kali Linux、pfSense、DEFT、NST以及Helix。
第9章 探討著名的bash shell漏洞——Shellshock。本章將介紹什么是Shellshock漏洞以及該漏洞可能引起的安全問題,同時告訴讀者如何使用Linux補丁管理系統來加固自己的機器,以及在Linux系統中補丁是如何應用的。
第10章 介紹Linux的本地系統及網絡的監控問題。內容包括使用Logcheck監控日志、使用Nmap監控網絡、使用Glances監控系統以及使用MultiTail監控日志。本章還將討論一些其他的工具,包括Whowatch、stat、lsof、strace和Lynis等。
學習本書的要求為了充分發揮本書的作用,讀者應該對Linux的文件系統和管理有基本的了解,應該知道Linux的基本命令,如果有一些信息安全的知識則更佳。
本書包括基于Linux系統內置工具以及其他一些開源工具進行安全管理的例子。對每一種方法,如果所用的工具在Linux上還沒有安裝,那么請讀者務必要安裝它們。
本書的目標讀者本書面向所有已經了解Linux文件系統及管理的Linux用戶。讀者應該熟悉Linux的基本命令,理解信息安全知識以及Linux系統的安全風險也有助于理解書中的方法。
然而,即使你對信息安全不熟悉,也能夠很容易地遵照執行和理解書中討論的方法。因為本書遵循了實用性原則,按照步驟進行操作非常容易。
內容分節本書中,你會發現一些標題出現的頻率很高,如準備工作、操作指南、原理解析、拓展學習、延伸閱讀等。
為了更清楚地說明如何實現一種方法,我們使用了如下幾個標題。
準備工作該部分告訴讀者本方法的目標,描述如何設置軟件以及本方法要求哪些預先設置。
操作指南該部分包括實現本方法所需的步驟。
原理解析該部分通常包括對操作指南部分所發生情況的詳細解釋。
拓展學習該部分是為使讀者對本方法有更多了解而提供的附加信息。
延伸閱讀該部分為其他有用信息提供幫助鏈接。
下載彩圖我們還為你提供了一個PDF文件,里面有書中用到的屏幕截圖和圖表的彩色圖像。彩色的圖像將幫助你更好地理解輸出中的變化。
你可以從下述地址下載此文件:http://www.packtpub.com/sites/default/files/downloads/PracticalLinuxSecurityCookbook_ColoredImages.pdf。
目 錄?Contents
譯者序
前言
第1章 Linux的安全問題 1
1.1 引言 1
1.2 Linux的安全策略 1
1.3 配置口令保護 2
1.4 配置服務器安全 3
1.5 安全控制 4
1.6 使用校驗和檢測安裝介質的完整性 4
1.7 使用LUKS加密磁盤 6
1.8 配置sudo訪問 8
1.9 使用Nmap掃描主機 10
1.10 獲取脆弱Linux系統的root權限 13
第2章 配置安全且優化的內核 18
2.1 引言 18
2.2 構建并使用內核的要求 19
2.3 創建USB啟動盤 19
2.4 獲取內核源代碼 20
2.5 配置并構建內核 22
2.6 安裝和啟動內核 27
2.7 測試和調試內核 29
2.8 使用Netconsole配置調試用控制臺 29
2.9 啟動時調試內核 35
第3章 本地文件系統安全 37
3.1 使用ls命令查看文件和目錄詳情 37
3.2 使用chmod命令改變文件訪問權限 39
3.3 使用訪問控制列表 43
3.4 使用mv命令處理文件(移動和重命名) 46
3.5 在Ubuntu上安裝并配置一個基本的LDAP服務器 51
第4章 Linux的本地認證 59
4.1 用戶認證和日志記錄 59
4.2 限制用戶的登錄能力 62
4.3 使用acct監視用戶行為 64
4.4 使用USB設備和PAM的登錄認證 68
4.5 定義用戶授權控制 72
第5章 Linux中的遠程認證 76
5.1 使用SSH遠程訪問服務器/主機 76
5.2 禁止或允許root賬號的SSH登錄 80
5.3 基于密鑰加強SSH遠程訪問的安全性 83
5.4 遠程復制文件 85
5.5 在Ubuntu上建立Kerberos服務器 90
第6章 網絡安全 98
6.1 管理TCP/IP網絡 98
6.2 使用iptables配置防火墻 102
6.3 阻止地址偽裝 107
6.4 攔截入站流量 109
6.5 配置使用TCP Wrapper 113
第7章 安全工具 118
7.1 Linux的sXid工具 118
7.2 PortSentry 120
7.3 使用Squid代理服務器 125
7.4 OpenSSL服務器 129
7.5 Tripwire 134
7.6 Shorewall 139
第8章 Linux的安全發行版 143
8.1 Kali Linux 143
8.2 pfSense 148
8.3 DEFT:數字證據及取證工具包 153
8.4 NST:網絡安全工具包 157
8.5 Helix 161
第9章 修補bash漏洞 166
9.1 通過Shellshock了解bash漏洞 166
9.2 Shellshock的安全性問題 169
9.3 補丁管理系統 174
9.4 在Linux系統上應用補丁 179
第10章 安全監控和日志 182
10.1 使用Logcheck查看和管理日志文件 182
10.2 使用Nmap監控網絡 185
10.3 使用Glances監控系統 189
10.4 使用MultiTail監控日志 192
10.5 使用系統工具Whowatch 194
10.6 使用系統工具stat 198
10.7 使用系統工具lsof 200
10.8 使用系統工具strace 203
10.9 使用Lynis 206