圖書信息
作 者:李洋 編著
出 版 社: 電子工業出版社
出版時間: 2009-3-1
頁 數:584 頁
開 本: 16開
ISBN 9787121080777
分類: 圖書>> 計算機/作業系統>>Linux 9
定價:¥69.00元(含光碟1張)
宣傳語
以經驗講解原理,以實務指導套用
本書提供了69個常用的Linux實務,這些實務實用、基礎、典型,易學易用,涵蓋了Linux幾乎所有的技術內容,每個實務都給出了詳細的操作步驟,便於讀者迅速上手,很快掌握。
光碟中包括本書重要實務的視頻操作實錄,並配有文字說明,使讀者在操作過程中能參照進行,從而有效地縮短學習周期、輕鬆進階。
內 容 簡 介
在寫作風格上,本書對每一個知識點的實務都一一給出了詳細的操作步驟,並在隨書附帶的光碟中對重要的實務進行了視頻操作實錄,便於讀者進行參照和迅速掌握。
本書適合國中級Linux用戶,也適合中、高級Linux用戶,並可作為大、中院校計算機專業學生和廣大Linux愛好者的參考用書。
作者簡介
李洋,博士畢業於中科院計算所,現任中國移動通信研究院研究員、項目經理。自2001年以來一直從事計算機網路信息安全領域的研發工作,曾主持和參與多項國家重點項目以及信息安全系統和企業信息安全系統的研發工作。具有豐富的Linux系統套用、管理、安全及核心的研發經驗,擅長網路安全技術、網路協定分析、Linux系統安全技術、Linux系統及網路管理、Linux核心開發等。曾在《計算機世界》、《網管員世界》等國內知名媒體上發表各類技術文章百餘篇,並出版《RedHatLinux9系統與網路管理教程》一書。
前 言
Linux作業系統誕生於1991年10月。隨後,藉助於網際網路,並在世界各地計算機愛好者的共同努力下,它已成為當今世界使用最多的一種UNIX類作業系統,並且使用人數還在迅猛增長。Linux是一個優秀的、日益成熟的作業系統,它支持多用戶、多進程及多執行緒,實時性好,功能強大而穩定。同時,它又具有良好的兼容性和可移植性,在網路技術日益發展的今天,憑藉其在安全性、穩定性等方面的巨大優勢,正受到越來越多的用戶的青睞,連一些大型的網路及網站伺服器,都建立在了Linux平台之上。並且,它目前還被廣大企業、政府部門和大專院校、研究機構廣泛接受,已經逐漸成為作業系統研究、教學、系統和網路套用的最佳藍本和選擇。另外,它也是我國開發自主創新的作業系統、打破外國壟斷的最佳工具。
目前Linux有很多套用版本,其中最著名和最具影響力的莫過於Red Hat linux。Red Hat Linux,俗稱紅帽子Linux,是套用最廣、最為成熟的Linux發行版本,red hat linux 9是其目前的最新版本,是一個高效的商用版本,是喜愛Linux的高手們進行套用級和核心級開發的最合適的選擇,同時也是初學者步入Linux這個自由而神聖的殿堂的最佳工具。基於此,本書以Red Hat Linux 9為例,對Linux從系統管理與套用、網路管理與套用、管理工具及套用三個層面進行全面、系統、詳細的介紹。並且,在講述過程中,作者注重講述的實用性和可操作性,提供了安裝、配置、管理及套用最新作業系統和相關工具的實用信息。
本書面向眾多Linux愛好者,初、中級Linux用戶以及從業者,並依照Linux初學者的學習規律,同時兼顧中、高級Linux讀者,首先介紹Linux系統管理與套用方面的一些基本概念和基本操作,然後再對網路管理與套用進行深入的講解。最後,本書還給出了在Linux系統管理及套用中常用的管理工具,以方便讀者在實際的Linux套用中選擇使用。
本書的筆者有多年從事Linux研究及開發的工作經驗,在精心編寫本書的同時還十分講究內容的編排、章節的組織以及講解的方式,爭取讓讀者能夠在短時間內掌握Linux系統的一些實用的概念和操作,從而能夠快速入門。因此,區別於市場上眾多同類書,本書有兩個非常顯著的特點:一是本書通過實務講解的方式,一步一步地按照實務目標向讀者介紹相關原理及翔實的操作步驟;二是本書還配備了實務操作視頻光碟,它包括了本書講解的重點和難點,以方便讀者在實務操作中進行對照學習,提高學習效率。
本書特色
1.結構嚴謹,內容豐富
筆者對Linux內容的選取十分嚴謹,一環扣一環,從一個知識點過渡到另一個知識點非常順暢和自然。而且,本書內容非常豐富,從Linux的系統管理和套用、網路管理和套用,甚至到比較實用的管理工具的介紹和使用,都進行了相應的介紹。
2.實務講解,步驟詳細,易於操作和掌握
本書避免了對Linux中知識點的簡單的理論知識的平鋪直敘,重點介紹了每個知識點的實務,對每個實務都一步一步地給出詳細的操作步驟,並添加了相應的注釋。讀者只要按照步驟操作,就可以很快地上手,迅速掌握,並能夠在實際的操作中舉一反三。
3.覆蓋面廣,適用的讀者群廣泛
本書在選材上,從適用人群、學習曲線等各個方面進行了細緻的分析和考慮,主要針對初、中級Linux用戶,同時兼顧中、高級Linux用戶以及各類院校學生自學的需求,在講解的難度和深度上都恰到好處,所以覆蓋面廣,適用的讀者群也比較廣泛,特別適合具有一定Linux基礎的讀者自學。
4.理論完善,具有很高的參考和學術價值
本書不同於一般市面上常見的Linux工具書籍,而是在講解基本操作的前提下,從理論上對每個知識點的原理和套用背景都進行了詳細闡述,從而可以讓讀者在實踐中舉一反三,以解決實際中遇到的問題。
5.隨書光碟,輔助讀者學習
為了輔助讀者學習,儘快掌握書中所述的知識點。本書的隨書光碟,對書中絕大多數重要的實務講解實例進行了視頻操作實錄,使讀者在操作過程中能夠參照進行,從而有效地縮短學習周期,輕鬆進階。
本書內容
本書從Linux系統管理、Linux網路管理、Linux管理工具套用三個層面系統、全面地向讀者介紹了Linux的管理及套用技術。具體來說,本書包括三篇共23章:
第一篇(第1章至第7章):Linux系統管理及套用,具體內容包括檔案系統管理、進程管理等,力圖向讀者介紹Linux系統管理的方方面面。
第二篇(第8章至第20章):Linux網路管理及套用,具體針對Linux這一網路作業系統網路套用的方方面面,進行管理知識的介紹,包括Linux網路基礎、HTTP服務管理、FTP服務管理、郵件服務管理、網路檔案系統管理等。
第三篇(第21章至第23章):Linux管理工具及套用,介紹了在Linux管理領域一些常見的用於構建具體服務的管理套用工具,包括系統管理工具、網路管理工具等。
致謝
作者由衷地感謝電子工業出版社的高級策劃編輯胡辛征和責任編輯顧慧芳,他們在我寫書的過程中給了我許多的幫助,對於本書的質量和體系的把握起到了重要作用。另外,還要感謝電子工業出版社博文視點公司總經理郭立,她對本書的大力支持也是本書得以順利完成的巨大動力。最後,作者還要感謝家人的大力支持和無私奉獻,正因為有他們的關心和照顧,我才有足夠的時間和精力來完成本書的撰寫工作。
由於作者水平有限,書中難免存在疏漏與不當之處,敬請專家和廣大讀者批評指正。
作者2009年2月於北京
目 錄 Linux系統管理及套用
第1章 Linux簡介本章向讀者介紹什麼是Linux,Linux的發展歷史,優勢及其套用領域;並詳細介紹Linux的核心和發行版本的相關知識,以及Linux的主要組成部分。
1.1 Linux的發展歷史 2
1.2 Linux的特性 3
1.3 Linux的套用領域 4
1.4 Linux的核心及發行版本 4
1.5 Linux的主要組成部分 5
1.5.1 核心 5
1.5.2 Shell 6
1.5.3 檔案結構 6
1.5.4 實用工具 7
本章詳細介紹Linux的安裝步驟和運行的相關知識,並介紹如何使用GRUB引導器來引導Linux。
2.1 自己動手安裝Linux(實務1) 8
2.1.1 了解Linux安裝的硬體需求 8
2.1.2 熟悉安裝方式 8
2.1.3 動手安裝 9
2.2 使用GRUB引導Linux(實務2) 17
2.2.1 了解GRUB 17
2.2.2 熟練掌握GRUB 18
2.2.3 使用GRUB引導Linux 22
2.3 運行Linux(實務3) 24
2.3.1 了解Linux系統啟動過程 24
2.3.2 設定Linux系統運行級別 25
2.3.3 登錄Linux 26
2.3.4 退出Linux 27
本章介紹軟體包管理的知識,重點介紹RPM包的管理;同時也介紹TAR包管理和Linux下常用的壓縮工具。
3.1 管理RPM包(實務4) 28
3.1.1 查詢RPM軟體包 28
3.1.2 安裝RPM軟體包 31
3.1.3 RPM軟體包安裝可能出現的問題 32
3.1.4 卸載RPM軟體包 33
3.1.5 升級RPM軟體包 33
3.1.6 驗證RPM軟體包 34
3.1.7 使用添加/刪除應用程式管理RPM軟體包 35
3.2 RPM軟體包的密鑰管理(實務5) 37
3.2.1 下載與安裝PGP 37
3.2.2 RPM使用PGP產生簽名所需的配置 38
3.2.3 配置RPM宏 39
3.2.4 使用RPM的PGP簽名選項 39
3.2.5 添加數字簽名 39
3.3 管理TAR包(實務6) 40
3.3.1 TAR命令語法及參數選項 40
3.3.2 創建tar檔案 42
3.3.3 顯示tar檔案內容 43
3.3.4 向tar檔案中添加一個檔案 43
3.3.5 從tar檔案中取出檔案 44
3.4 管理壓縮檔(實務7) 45
3.4.1 gzip壓縮 45
3.4.2 zip/unzip壓縮 48
3.4.3 bzip2壓縮 52
本章向讀者介紹Linux系統中常見的軟體和硬體設定方法,主要包括用戶界面的設定、安裝與卸載軟體、硬體監測、硬體配置等。
4.1 設定用戶界面 55
4.1.1 KDE桌面系統組成 55
4.1.2 GNOME桌面系統 56
4.1.3 設定檔案瀏覽界面 57
4.1.4 控制中心 60
4.2 檢測硬體(實務8) 62
4.2.1 檢測CPU 62
4.2.2 檢測硬碟 63
4.2.3 檢測記憶體 65
4.3 配置硬體(實務9) 66
4.3.1 配置音效卡 66
4.3.2 配置X Window及顯示卡 70
4.3.3 配置網卡 71
4.3.4 配置印表機 72
4.4 管理磁碟存儲器(實務10) 75
4.4.1 掌握存儲設備的命名 75
4.4.2 管理磁碟空間 76
4.4.3 使用Fdisk工具進行磁碟分區 80
4.4.4 最佳化Linux系統硬碟 82
本章詳細介紹Linux使用方面有關檔案和磁碟管理的基礎知識,並且通過實例重點講述如何使用Linux的檔案/目錄操作命令。
5.1 了解Linux檔案系統(實務11) 84
5.1.1 了解Linux常用的檔案系統 84
5.1.2 了解Linux檔案 85
5.1.3 了解Linux目錄 86
5.1.4 Linux系統的目錄層次結構 88
5.2 管理檔案與目錄(實務12) 90
5.2.1 顯示檔案內容 90
5.2.2 檔案內容查詢 94
5.2.3 檔案查找 95
5.2.4 檔案處理 97
5.2.5 檔案內容統計 99
5.2.6 檔案比較 100
5.2.7 檔案的複製、移動和刪除 103
5.2.8 檔案連結 105
5.2.9 目錄的創建與刪除 106
5.2.10 改變工作目錄、顯示路徑以及顯示目錄內容 107
5.3 檔案/目錄訪問許可權管理(實務13) 109
5.3.1 了解檔案/目錄訪問許可權 110
5.3.2 使用chmod命令改變檔案/目錄的訪問許可權 110
5.3.3 使用chown命令更改檔案/目錄的所有權 112
5.3.4 使用setuid/setgid改變執行許可權 113
本章講述如何對Linux系統中的用戶和組進行管理,並配合實例進行介紹,以幫助讀者儘快通過使用相關的檔案、命令和圖形化工具有效地對用戶和組進行管理。
6.1 了解用戶和組檔案(實務14) 115
6.1.1 了解用戶賬號檔案——passwd 115
6.1.2 了解用戶賬號影子檔案——shadow 117
6.1.3 了解用戶組賬號檔案——group 119
6.1.4 了解用戶組賬號影子檔案——gshadow 120
6.1.5 掌握使用pwck和grpck命令驗證用戶和組檔案 121
6.2 使用命令行方式管理用戶和組(實務15) 124
6.2.1 使用useradd命令添加用戶 124
6.2.2 使用usermod命令修改用戶信息 125
6.2.3 使用userdel命令刪除用戶 126
6.2.4 使用groupadd命令創建用戶組 126
6.2.5 使用groupmod命令修改用戶組屬性 127
6.2.6 使用groupdel命令刪除用戶組 127
6.3 使用Red Hat用戶管理器管理用戶和組(實務16) 128
6.3.1 啟動Red Hat用戶管理器 128
6.3.2 創建用戶 128
6.3.3 修改用戶屬性 130
6.3.4 創建用戶組 131
6.3.5 修改用戶組屬性 132
本章著重介紹Linux系統中最重要的運行實體——進程的工作原理以及如何對系統中的進程進行管理,並且介紹在實際中經常用到的PROC檔案系統的使用方法。
7.1 了解Linux進程(實務17) 134
7.1.1 了解進程類型 134
7.1.2 了解進程的狀態 134
7.1.3 了解進程的工作模式 135
7.2 Linux守護進程介紹(實務18) 136
7.2.1 了解守護進程 136
7.2.2 掌握Linux下的重要守護進程 136
7.3 管理Linux進程(實務19) 137
7.3.1 手工啟動Linux進程 137
7.3.2 自動執行進程 138
7.3.3 資源空閒時執行進程 141
7.3.4 周期性執行進程 142
7.3.5 操作cron後台進程 142
7.3.6 掛起及恢復進程 145
7.4 查看及終止進程(實務20) 146
7.4.1 使用ps命令查看進程狀態 146
7.4.2 使用top命令查看進程狀態 148
7.4.3 使用kill命令終止進程 150
7.4.4 使用sleep命令暫停進程 151
7.5 進程檔案系統PROC 151
目錄 Linux網路管理及套用
第8章 Linux網路管理與套用基礎本章介紹Linux網路管理與套用的基礎知識,包括TCP/IP協定棧、配置TCP/IP網路和使用xinetd管理網路服務。
8.1 網路簡介及模型 156
8.2 TCP/IP網路原理 158
8.2.1 IP協定 159
8.2.2 TCP協定 162
8.2.3 UDP協定 164
8.2.4 ARP和RARP協定 165
8.2.5 ICMP協定 167
8.2.6 IPv6 168
8.3 配置TCP/IP網路(實務21) 170
8.3.1 了解配置檔案 170
8.3.2 使用命令配置網路 171
8.4 使用xinetd啟動Linux網路服務(實務22) 173
8.4.1 了解xinetd 173
8.4.2 使用/etc/xinetd.d目錄下的檔案進行配置 175
8.4.3 使用圖形用戶界面進行配置 176
本章對DHCP伺服器管理進行詳細介紹,它能夠高效、自動地對網路中的IP位址進行分配。
9.1 DHCP服務簡介 177
9.1.1 DHCP簡介 177
9.1.2 DHCP工作過程 177
9.2 安裝和啟動DHCP伺服器(實務23) 178
9.2.1 安裝DHCP伺服器 178
9.2.2 啟動和關閉DHCP伺服器 179
9.3 配置DHCP伺服器(實務24) 180
9.3.1 了解DHCP伺服器配置檔案 180
9.3.2 DHCP伺服器配置實例 181
9.3.3 配置DHCP客戶端 182
本章重點介紹網際網路中的重要基礎設施——DNS伺服器的管理和套用問題。主要包括該伺服器的安裝、啟動和配置。
10.1 DNS服務原理簡介 185
10.1.1 DNS簡介 185
10.1.2 dns系統組成及基本概念 186
10.1.3 DNS伺服器的類型 187
10.1.4 DNS的工作原理 187
10.2 安裝和啟動DNS伺服器(實務25) 188
10.2.1 安裝DNS伺服器 188
10.2.2 啟動和關閉DNS伺服器 189
10.3 配置DNS伺服器(實務26) 190
10.3.1 了解DNS伺服器配置檔案類型 190
10.3.2 掌握named.conf主配置檔案 190
10.3.3 掌握區檔案 191
10.3.4 DNS伺服器配置實例 193
10.3.5 配置DNS客戶端 195
10.4 使用DNS伺服器的高級技巧(實務27) 196
10.4.1 配置輔助域名伺服器 196
10.4.2 配置高速快取伺服器 198
10.4.3 配置DNS負載均衡 199
10.4.4 配置智慧型DNS 200
本章介紹Linux網路管理中的遠程登錄管理問題:傳統的Telnet方式和最新的SSH遠程登錄管理模式。
11.1 使用Telnet進行遠程登錄(實務28) 203
11.1.1 了解Telnet登錄 203
11.1.2 掌握Telnet原理 204
11.1.3 安裝和啟動Telnet 205
11.1.4 詳細配置Telnet服務 206
11.1.5 一個具體的Telnet會話示例 207
11.2 使用SSH進行遠程登錄(實務29) 208
11.2.1 了解SSH服務 208
11.2.2 安裝與啟動SSH 209
11.2.3 配置“/etc/ssh/ssh_config”檔案 211
11.2.4 配置“/etc/ssh/sshd_config”檔案 213
11.2.5 掌握SSH的密鑰管理 214
11.2.6 使用scp命令遠程複製檔案 216
11.2.7 使用SSH設定“加密通道” 216
11.2.8 配置SSH的客戶端 218
11.2.9 配置SSH自動登錄 222
本章介紹網際網路中另一項重要的基礎設施——路由器的管理和套用問題,並通過路由協定、靜態路由配置、動態路由配置等實例向讀者進行詳細的介紹。
12.1 路由技術簡介 225
12.1.1 網路互連的基本方式 225
12.1.2 路由基本原理 226
12.1.3 路由協定 227
12.1.4 路由算法 229
12.1.5 新一代路由器 230
12.2 配置Linux靜態路由(實務30) 230
12.2.1 靜態路由原理 230
12.2.2 Linux靜態路由配置實例 231
12.3 使用Zebra配置路由(實務31) 232
12.3.1 了解Zebra 232
12.3.2 安裝和啟動Zebra 232
12.3.3 使用Zebra配置動態路由 233
本章通過具體的實例介紹如何通過配置Samba伺服器,來達到Windows系統和Linux系統信息共享的目的。
13.1 Samba伺服器簡介 236
13.1.1 Samba的工作原理 236
13.1.2 Samba伺服器的功能 237
13.1.3 SMB協定 237
13.2 安裝和啟動Samba伺服器(實務32) 237
13.2.1 安裝Samba 237
13.2.2 啟動及關閉Samba伺服器 238
13.2.3 簡單測試Samba伺服器 240
13.3 配置Samba伺服器的用戶信息(實務33) 242
13.3.1 創建伺服器待認證用戶 242
13.3.2 將用戶信息轉換為Samba用戶信息 243
13.3.3 用戶轉換 243
13.3.4 設定Samba伺服器和主瀏覽器 244
13.4 smb.conf配置檔案詳解(實務34) 244
13.4.1 設定工作組 245
13.4.2 設定共享Linux賬戶主目錄 245
13.4.3 設定公用已分享資料夾 247
13.4.4 設定一般已分享資料夾 247
13.4.5 設定共享印表機 248
13.4.6 解決印表機配置的相關問題 249
13.5 一個完整的smb.conf檔案實例 251
13.5.1 global段 251
13.5.2 home段 254
13.5.3 printers段 255
13.5.4 public段 256
13.5.5 一般共享段 256
13.5.6 smb.conf檔案的更多例子 257
13.5.7 該配置在Windows系統下的顯示結果 258
13.6 smb.conf中的選項和特殊約定 259
13.6.1 特殊約定 259
13.6.2 read only、writeable、writable和write ok(S) 259
13.6.3 valid users(S) 260
13.6.4 invalid users(S) 260
13.6.5 read list(S) 260
13.6.6 write list(S) 261
13.6.7 path(S) 261
13.6.8 create mask和create mode(S) 261
13.6.9 browseable(S) 261
13.6.10 printable(S) 262
13.6.11 hosts allow、hosts deny、allow hosts和deny hosts(S) 262
13.6.12 public和guest ok(S) 262
13.6.13 comment(S)和server string(G) 262
13.6.14 domain logons(G) 262
13.6.15 Encrypt passwords和smbpasswd file(G) 263
13.6.16 hosts equiv(G) 263
13.6.17 interfaces(G) 263
13.6.18 load printers(G) 263
13.6.19 null passwords(G) 263
13.6.20 password level和username level(G) 263
13.6.21 security(G) 264
13.6.22 workgroup(G) 264
13.7 測試Samba伺服器 264
13.8 實現Linux和Windows檔案互訪(實務35) 265
13.8.1 Windows客戶使用Linux系統已分享檔案 265
13.8.2 用smbclient訪問區域網路上的Windows系統 265
13.8.3 用smbclient訪問區域網路上的其他系統 266
13.8.4 用LinNeighborhood訪問其他系統的已分享檔案 267
本章以Apache伺服器為背景,介紹如何在Linux中搭建Web伺服器以及該伺服器的功能配置,包括虛擬主機的設定、SSI和SSL的使用。
14.1 Web伺服器簡介 269
14.1.1 HTTP基本原理 269
14.1.2 Apache伺服器簡介 270
14.2 安裝和啟動Apache(實務36) 272
14.2.1 獲取Apache及其最新信息 272
14.2.2 使用httpd-2.2.11.tar gz軟體包安裝Apache 272
14.2.3 使用httpd-2.2.11.tar BZ2軟體包安裝Apache 273
14.2.4 使用RPM軟體包安裝Apache 274
14.2.5 啟動和停止Apache伺服器 275
14.3 配置Apache伺服器(實務37) 278
14.3.1 掌握httpd.conf檔案中的全局配置選項 279
14.3.2 使用.htaccess檔案進行訪問限制 282
14.3.3 使用httpd.conf檔案中的CGI設定 284
14.3.4 httpd.conf檔案中的URL路徑名設定 286
14.3.5 了解httpd.conf檔案中的MIME類型 289
14.4 虛擬主機的設定(實務38) 290
14.4.1 設定IP型虛擬主機 290
14.4.2 設定名字型虛擬主機 292
14.5 日誌記錄 293
14.6 SSI設定(實務39) 294
14.6.1 了解SSI 295
14.6.2 啟用SSI 295
14.6.3 掌握SSI指令 295
14.7 使用SSL(實務40) 299
14.7.1 了解SSL原理 299
14.7.2 掌握Apache中運用SSL的基本原理 300
14.7.3 安裝和啟動SSL 301
14.8 一個完整的httpd.conf檔案(實務41) 303
14.8.1 設定全局環境 304
14.8.2 設定動態共享對象支持(DSO) 306
14.8.3 設定主伺服器 307
14.8.4 設定日誌管理 310
14.8.5 設定虛擬目錄 311
14.8.6 設定MIME類型 313
14.8.7 文檔管理和語言管理 314
14.8.8 設定虛擬主機 319
本章介紹FTP伺服器在Linux中的使用,FTP標準協定和vsftpd伺服器的使用。
15.1 FTP簡介 321
15.1.1 FTP協定介紹 321
15.1.2 FTP檔案類型 323
15.1.3 FTP檔案結構 323
15.1.4 FTP傳輸模式 323
15.1.5 FTP常用命令 324
15.1.6 FTP典型訊息 325
15.2 安裝和啟動vsftpd伺服器(實務42) 325
15.2.1 安裝vsftpd 326
15.2.2 啟動和關閉vsftpd 327
15.2.3 配置vsftpd.ftpusers檔案 329
15.2.4 配置vsftpd.user_list檔案 329
15.2.5 配置vsftpd.conf檔案 330
15.3 深入使用vsftpd伺服器(實務43) 332
15.3.1 匿名用戶使用vsftpd伺服器 332
15.3.2 本地用戶使用vsftpd伺服器 334
15.3.3 虛擬用戶使用vsftpd伺服器 337
15.3.4 配置vsftpd伺服器中chroot 339
15.3.5 配置vsftpd伺服器在非標準連線埠工作 339
15.3.6 配置虛擬FTP伺服器 340
本章介紹目前套用較為廣泛的代理伺服器技術,通過本章的學習,讀者可以在Linux環境下輕鬆搭建一個安全、高效的代理伺服器。
16.1 Proxy伺服器原理簡介 343
16.2 Squid簡介 344
16.3 安裝和啟動Squid Server(實務44) 345
16.3.1 安裝Squid Server 345
16.3.2 啟動和關閉Squid Server 346
16.4 在客戶端使用Squid Server(實務45) 347
16.4.1 在Windows下的IE瀏覽器設定 347
16.4.2 在Linux瀏覽器中設定Proxy伺服器 348
16.5 基本配置Squid Server(實務46) 349
16.5.1 了解配置Squid Server的基本參數 349
16.5.2 配置Squid Server的訪問控制 351
16.5.3 一個配置Squid Server的簡單實例 356
16.6 配置基於Squid的透明代理(實務47) 357
16.6.1 配置Linux核心 357
16.6.2 掌握Squid的相關配置選項 358
16.6.3 配置IPTABLES 358
16.7 配置多級快取改善Proxy伺服器的性能(實務48) 359
16.7.1 多級快取(Cache)簡介 359
16.7.2 配置多級快取 360
16.8 Squid日誌管理(實務49) 362
16.8.1 了解配置檔案中有關日誌的選項 362
16.8.2 掌握日誌管理主檔案——accesss.conf 363
16.9 使用Webalizer對Squid進行流量分析(實務50) 365
16.9.1 了解Webalizer的特點 365
16.9.2 安裝Webalizer 366
16.9.3 配置Webalizer 366
16.9.4 使用Webalizer 367
本章介紹Linux中Sendmail Server以及pop和IMAP伺服器的使用,垃圾郵件的流行趨勢,並使用Sendmail防範垃圾郵件。
17.1 郵件系統簡介 370
17.1.1 郵件傳遞代理(MTA) 370
17.1.2 郵件存儲和獲取代理(MSA) 371
17.1.3 郵件客戶代理(MUA) 371
17.2 SMTP介紹 371
17.2.1 SMTP的模型 372
17.2.2 SMTP的基本命令 373
17.2.3 電子郵件介紹 374
17.2.4 Open Relay的原理 377
17.3 使用Sendmail Server(實務51) 378
17.3.1 安裝與啟動Sendmail Server 378
17.3.2 配置sendmail cf檔案 380
17.3.3 使用sendmail mc檔案 383
17.3.4 創建新的郵件賬號 384
17.3.5 設定賬號別名 385
17.3.6 設定群發郵件 385
17.3.7 使用access資料庫 386
17.3.8 配置帶SMTP認證的Sendmail伺服器 387
17.4 使用POP郵件服務(實務52) 388
17.4.1 安裝POP伺服器 389
17.4.2 啟動POP和IMAP服務 389
17.4.3 一個實際的傳送/接收郵件的例子 390
17.5 配置SMTP/POP郵件客戶端 392
17.6 防範垃圾郵件 394
17.6.1 常用技術 394
17.6.2 使用Sendmail防範垃圾郵件 395
本章介紹Linux環境下常用的兩種資料庫——MySQL和Oracle,它們的安裝、啟動,以及在程式中的簡單使用。
18.1 資料庫系統簡介 397
18.1.1 資料庫基本原理 397
18.1.2 常用的資料庫 398
18.2 安裝MySQL資料庫伺服器(實務53) 399
18.2.1 基於原始碼包的MySQL安裝 399
18.2.2 基於RPM包的MySQL安裝 402
18.2.3 在Red Hat Linux 9添加/刪除程式中安裝MySQL 403
18.3 啟動MySQL資料庫(實務54) 405
18.3.1 建立MySQL的用戶組和用戶名 405
18.3.2 建立MySQL的軟連結 405
18.3.3 設定用戶訪問許可權 406
18.3.4 啟動MySQL 407
18.4 使用MySQL(實務55) 407
18.4.1 連線MySQL伺服器 407
18.4.2 退出MySQL伺服器 408
18.4.3 密碼管理 408
18.4.4 增加新用戶 409
18.4.5 命令使用 409
18.4.6 顯示資料庫列表 410
18.4.7 顯示資料庫中的數據表 410
18.4.8 顯示數據表的表結構 410
18.4.9 新建資料庫 410
18.4.10 新建資料庫表 411
18.4.11 刪除資料庫和刪除表 411
18.4.12 將表中記錄清空 412
18.4.13 顯示錶的記錄 412
18.4.14 向表中插入記錄 412
18.4.15 MySQL數據導入和備份 412
18.5 在程式中操作MySQL資料庫 413
18.6 安裝Oracle10g資料庫系統(實務56) 414
18.6.1 安裝Oracle10g的硬體條件 415
18.6.2 下載Oracle10g的安裝檔案 415
18.6.3 做好安裝前的準備工作 415
18.6.4 Oracle10g的安裝 416
18.7 測試Oracle資料庫系統(實務57) 417
18.7.1 使用svrmgrl測試安裝是否成功 417
18.7.2 使用sql*plus測試安裝是否成功 418
18.8 設定Oracle服務自動啟動 418
18.9 操作Oracle資料庫(實務58) 419
18.9.1 創建表空間和創建用戶 419
18.9.2 刪除用戶 419
18.9.3 修改用戶密碼 419
18.9.4 數據導出 420
18.9.5 數據導入 420
18.9.6 其他數據操作 420
18.10 在程式中操作Oracle資料庫 420
18.10.1 用C語言操作Oracle資料庫 421
本章介紹Linux網路檔案系統(NFS)的管理和套用,包括它的安裝、啟動和安全配置。
19.1 NFS服務概述(實務59) 426
19.1.1 了解NFS基本原理 426
19.1.2 掌握NFS服務的進程 428
19.2 安裝和啟動NFS(實務60) 428
19.2.1 安裝NFS 428
19.2.2 啟動NFS 429
19.3 NFS配置和使用(實務61) 429
19.3.1 配置NFS伺服器 429
19.3.2 配置NFS客戶機 430
19.3.3 安全使用NFS服務 430
19.4 使用NFS需要注意的安全問題 431
本章介紹有關網路信息安全的原理和軟體,網路安全防禦的工具,以及在Linux中如何使用iptables、Snort、Tripwire等工具進行網路防護。
20.1 網路安全簡介 433
20.1.1 網路信息安全的要素 433
20.1.2 網路中存在的威脅 434
20.1.3 網路信息安全領域的研究重點 434
20.2 Linux網路面臨的常見威脅 436
20.2.1 連線埠掃描 436
20.2.2 特洛伊木馬 437
20.2.3 DoS攻擊 440
20.2.4 Linux下的病毒 441
20.2.5 ip地址欺騙 444
20.2.6 網路釣魚 444
20.2.7 殭屍網路 446
20.3 防火牆(FireWall)技術 447
20.3.1 防火牆簡介 448
20.3.2 防火牆的分類 448
20.3.3 傳統防火牆技術及其特點 450
20.3.4 新一代防火牆的主要技術特點 451
20.3.5 新一代分散式防火牆概述 451
20.3.6 新一代嵌入式防火牆技術 452
20.3.7 新一代智慧型防火牆技術 452
20.3.8 防火牆技術的發展趨勢 453
20.3.9 使用netfilter/iptables防火牆框架 455
20.4 入侵檢測系統(IDS) 459
20.4.1 入侵檢測系統簡介 459
20.4.2 Snort介紹 460
20.4.3 安裝Snort 461
20.4.4 使用Snort 462
20.4.5 配置Snort規則 465
20.4.6 編寫Snort規則 468
20.4.7 Snort規則套用舉例 470
20.5 使用Tripwire保護網路系統的數據安全 472
20.5.1 Tripwire簡介 472
20.5.2 Tripwire工作原理 472
20.5.3 使用Tripwire 474
20.5.4 使用Tripwire的技巧 476
20.6 備份及恢復技術 476
20.7 UTM(統一威脅管理) 479
目錄 Linux管理工具及套用
第21章 Linux下的開發和編輯工具本章介紹Linux下的編輯和開發工具,以及Vi編輯器、GCC編譯器和gdb調試器的使用。
21.1 Linux下常用的開發工具 482
21.1.1 Emacs編輯器 482
21.1.2 CVS版本管理工具 483
21.1.3 Perl程式語言 483
21.1.4 Linux上的Delphi——Kylix 483
21.1.5 gdb調試工具 484
21.2 Linux下的Vi文本編輯器 484
21.2.1 Vi編輯器介紹 485
21.2.2 啟動Vi編輯器 486
21.2.3 顯示Vi中的行號 487
21.2.4 游標移動操作 487
21.2.5 螢幕命令 488
21.2.6 文本插入命令 489
21.2.7 附加(append)命令 489
21.2.8 打開(open)命令 490
21.2.9 文本修改命令 490
21.2.10 退出Vi 493
21.3 Linux的C編譯器——GCC 494
21.3.1 GCC的編譯過程 495
21.3.2 GCC的基本用法和常用選項 495
21.3.3 使用gdb調試C程式 498
21.3.4 編寫Makefile檔案 503
21.4 Linux下的PHP編程 509
21.4.1 PHP簡介 510
21.4.2 配置運行環境 510
21.4.3 一個簡單的PHP例子 511
本章介紹在Linux系統管理及套用中常見的工具集,包括日誌管理工具、硬體狀態監控工具和辦公工具。
22.1 Linux日誌管理工具(實務62) 513
22.1.1 Linux日誌管理簡介 513
22.1.2 使用Linux下的日誌 514
22.1.3 Linux日誌使用注意事項 517
22.2 硬體狀態監控工具:dmidecode(實務63) 518
22.2.1 了解dmidecode工具 518
22.2.2 獲取和安裝dmidecode工具 518
22.2.3 使用硬體狀態監控工具 518
22.3 賬戶口令檢查工具:John the ripper(實務64) 520
22.3.1 了解John the Ripper 520
22.3.2 安裝和使用John the Ripper 521
22.3.3 賬戶口令設定的基本原則 522
22.4 Linux下的辦公工具:OpenOffice(實務65) 523
22.4.1 OpenOffice簡介 523
22.4.2 獲取和安裝OpenOffice 524
22.4.3 使用OpenOffice org Writer 525
22.4.4 使用OpenOffice org Calc 526
22.4.5 使用OpenOffice org Impress 527
22.4.6 使用OpenOffice org Draw 528
本章介紹在Linux網路管理及套用中常見的工具集,包括協定分析工具、連線埠掃描工具、遠程控制和管理工具以及集群服務和負載均衡工具。
23.1 網路協定分析工具:WIRESHARK(實務66) 529
23.1.1 了解Wireshark 529
23.1.2 安裝網路協定分析工具 530
23.1.3 使用網路協定分析工具 531
23.2 網路連線埠掃描工具:nmap(實務67) 533
23.2.1 了解nmap 533
23.2.2 獲取和安裝nmap 534
23.2.3 使用nmap 534
23.3 遠程控制和管理工具:XManager(實務68) 537
23.3.1 了解Xmanager 537
23.3.2 使用Xmanager 538
23.4 集群服務和負載均衡工具:LVS(實務69) 540
23.4.1 了解LVS(Linux Virtual Server) 540
23.4.2 安裝LVS 543
23.4.3 配置和使用LVS 544
參考文獻 547
實務目錄
了解Linux安裝的硬體需求 8
熟悉安裝方式 8
動手安裝 9
了解GRUB 17
熟練掌握GRUB 18
使用GRUB引導Linux 22
了解Linux系統啟動過程 24
設定Linux系統運行級別 25
登錄Linux 26
退出Linux 27
查詢RPM軟體包 28
安裝RPM軟體包 31
RPM軟體包安裝可能出現的問題 32
卸載RPM軟體包 33
升級RPM軟體包 33
驗證RPM軟體包 34
使用添加/刪除應用程式管理RPM軟體包 35
下載與安裝PGP 37
RPM使用PGP產生簽名所需的配置 38
配置RPM宏 39
使用RPM的PGP簽名選項 39
添加數字簽名 39
TAR命令語法及參數選項 40
創建tar檔案 42
顯示tar檔案內容 43
向tar檔案中添加一個檔案 43
從tar檔案中取出檔案 44
gzip壓縮 45
zip/unzip壓縮 48
bzip2壓縮 52
檢測CPU 62
檢測硬碟 63
檢測記憶體 65
配置音效卡 66
配置X Window及顯示卡 70
配置網卡 71
配置印表機 72
掌握存儲設備的命名 75
管理磁碟空間 76
使用Fdisk工具進行磁碟分區 80
最佳化Linux系統硬碟 82
了解Linux常用的檔案系統 84
了解Linux檔案 85
了解Linux目錄 86
Linux系統的目錄層次結構 88
顯示檔案內容 90
檔案內容查詢 94
檔案查找 95
檔案處理 97
檔案內容統計 99
檔案比較 100
檔案的複製、移動和刪除 103
檔案連結 105
目錄的創建與刪除 106
改變工作目錄、顯示路徑以及
顯示目錄內容 107
了解檔案/目錄訪問許可權 110
使用chmod命令改變檔案/目錄的訪問許可權 110
使用chown命令更改檔案/目錄的所有權 112
使用setuid/setgid改變執行許可權 113
了解用戶賬號檔案——passwd 115
了解用戶賬號影子檔案——shadow 117
了解用戶組賬號檔案——group 119
了解用戶組賬號影子檔案——gshadow 120
掌握使用pwck和grpck命令驗證用戶和組檔案 121
使用useradd命令添加用戶 124
使用usermod命令修改用戶信息 125
使用userdel命令刪除用戶 126
使用groupadd命令創建用戶組 126
使用groupmod命令修改用戶組屬性 127
使用groupdel命令刪除用戶組 127
啟動Red Hat用戶管理器 128
創建用戶 128
修改用戶屬性 130
創建用戶組 131
修改用戶組屬性 132
了解進程類型 134
了解進程的狀態 134
了解進程的工作模式 135
了解守護進程 136
掌握Linux下的重要守護進程 136
手工啟動Linux進程 137
自動執行進程 138
資源空閒時執行進程 141
周期性執行進程 142
操作cron後台進程 142
掛起及恢復進程 145
使用ps命令查看進程狀態 146
使用top命令查看進程狀態 148
使用kill命令終止進程 150
使用sleep命令暫停進程 151
了解配置檔案 170
使用命令配置網路 171
了解xinetd 173
使用/etc/xinetd.d目錄下的檔案進行配置 175
使用圖形用戶界面進行配置 176
安裝DHCP伺服器 178
啟動和關閉DHCP伺服器 179
了解DHCP伺服器配置檔案 180
DHCP伺服器配置實例 181
配置DHCP客戶端 182
安裝DNS伺服器 188
啟動和關閉DNS伺服器 189
了解DNS伺服器配置檔案類型 190
掌握named.conf主配置檔案 190
掌握區檔案 191
DNS伺服器配置實例 193
配置DNS客戶端 195
配置輔助域名伺服器 196
配置高速快取伺服器 198
配置DNS負載均衡 199
配置智慧型DNS 200
了解Telnet登錄 203
掌握Telnet原理 204
安裝和啟動Telnet 205
詳細配置Telnet服務 206
一個具體的Telnet會話示例 207
了解SSH服務 208
安裝與啟動SSH 209
配置“/etc/ssh/ssh_config”檔案 211
配置“/etc/ssh/sshd_config”檔案 213
掌握SSH的密鑰管理 214
使用scp命令遠程複製檔案 216
使用SSH設定“加密通道” 216
配置SSH的客戶端 218
配置SSH自動登錄 222
靜態路由原理 230
Linux靜態路由配置實例 231
了解Zebra 232
安裝和啟動Zebra 232
使用Zebra配置動態路由 233
安裝Samba 237
啟動及關閉Samba伺服器 238
簡單測試Samba伺服器 240
創建伺服器待認證用戶 242
將用戶信息轉換為Samba用戶信息 243
用戶轉換 243
設定Samba伺服器和主瀏覽器 244
設定工作組 245
設定共享Linux賬戶主目錄 245
設定公用已分享資料夾 247
設定一般已分享資料夾 247
設定共享印表機 248
解決印表機配置的相關問題 249
Windows客戶使用Linux系統已分享檔案 265
用smbclient訪問區域網路上的Windows系統 265
用smbclient訪問區域網路上的其他系統 266
用LinNeighborhood訪問其他系統的已分享檔案 267
獲取Apache及其最新信息 272
使用httpd-2.2.9.tar.gz軟體包安裝Apache 272
使用httpd-2.2.9.tar bz2軟體包安裝Apache 273
使用RPM軟體包安裝Apache 274
啟動和停止Apache伺服器 275
掌握httpd.conf檔案中的全局配置選項 279
使用.htaccess檔案進行訪問限制 282
使用httpd.conf檔案中的CGI設定 284
httpd.conf檔案中的URL路徑名設定 286
了解httpd.conf檔案中的MIME類型 289
設定IP型虛擬主機 290
設定名字型虛擬主機 292
了解SSI 295
啟用SSI 295
掌握SSI指令 295
了解SSL原理 299
掌握Apache中運用SSL的基本原理 300
安裝和啟動SSL 301
設定全局環境 304
設定動態共享對象支持(DSO) 306
設定主伺服器 307
設定日誌管理 310
設定虛擬目錄 311
設定MIME類型 313
文檔管理和語言管理 314
設定虛擬主機 319
安裝vsftpd 326
啟動和關閉vsftpd 327
配置vsftpd.ftpusers檔案 329
配置vsftpd.user_list檔案 329
配置vsftpd.conf檔案 330
匿名用戶使用vsftpd伺服器 332
本地用戶使用vsftpd伺服器 334
虛擬用戶使用vsftpd伺服器 337
配置vsftpd伺服器中chroot 339
配置vsftpd伺服器在非標準連線埠工作 339
配置虛擬FTP伺服器 340
安裝Squid Server 345
啟動和關閉Squid Server 346
在Windows下的IE瀏覽器設定 347
在Linux瀏覽器中設定Proxy伺服器 348
了解配置Squid Server的基本參數 349
配置Squid Server的訪問控制 351
一個配置Squid Server的簡單實例 356
配置Linux核心 357
掌握Squid的相關配置選項 358
配置iptables 358
多級快取(Cache)簡介 359
配置多級快取 360
了解配置檔案中有關日誌的選項 362
掌握日誌管理主檔案——accesss.conf 363
了解Webalizer的特點 365
安裝Webalizer 366
配置Webalizer 366
使用Webalizer 367
安裝與啟動Sendmail Server 378
配置sendmail cf檔案 380
使用sendmail mc檔案 383
創建新的郵件賬號 384
設定賬號別名 385
設定群發郵件 385
使用access資料庫 386
配置帶SMTP認證的Sendmail伺服器 387
安裝POP伺服器 389
啟動POP和IMAP服務 389
一個實際的傳送/接收郵件的例子 390
基於原始碼包的MySQL安裝 399
基於RPM包的MySQL安裝 402
在Red Hat Linux 9添加/刪除程式中安裝MySQL 403
建立MySQL的用戶組和用戶名 405
建立MySQL的軟連結 405
設定用戶訪問許可權 406
啟動MySQL 407
連線MySQL伺服器 407
退出MySQL伺服器 408
密碼管理 408
增加新用戶 409
命令使用 409
顯示資料庫列表 410
顯示資料庫中的數據表 410
顯示數據表的表結構 410
新建資料庫 410
新建資料庫表 411
刪除資料庫和刪除表 411
將表中記錄清空 412
顯示錶的記錄 412
向表中插入記錄 412
MySQL數據導入和備份 412
安裝Oracle10g的硬體條件 415
下載Oracle10g的安裝檔案 415
做好安裝前的準備工作 415
Oracle10g的安裝 416
使用svrmgrl測試安裝是否成功 417
使用sql*plus測試安裝是否成功 418
創建表空間和創建用戶 419
刪除用戶 419
修改用戶密碼 419
數據導出 420
數據導入 420
其他數據操作 420
了解NFS基本原理 426
掌握NFS服務的進程 428
安裝NFS 428
啟動NFS 429
配置NFS伺服器 429
配置NFS客戶機 430
安全使用NFS服務 430
Linux日誌管理簡介 513
使用Linux下的日誌 514
Linux日誌使用注意事項 517
了解dmidecode工具 518
獲取和安裝dmidecode工具 518
使用硬體狀態監控工具 518
了解John the Ripper 520
安裝和使用John the Ripper 521
賬戶口令設定的基本原則 522
OpenOffice簡介 523
獲取和安裝OpenOffice 524
使用OpenOffice org Writer 525
使用OpenOffice org Calc 526
使用OpenOffice org Impress 527
使用OpenOffice org Draw 528
了解Wireshark 529
安裝網路協定分析工具 530
使用網路協定分析工具 531
了解nmap 533
獲取和安裝nmap 534
使用nmap 534
了解Xmanager 537
使用Xmanager 538
了解LVS(Linux Virtual Server) 540
安裝LVS 543
配置和使用LVS 544