Linux系統與網路管理教程(第2版)

《Linux系統與網路管理教程(第2版)》是2010年12月電子工業出版社出版的圖書,作者是閻映炳,劉雪潔。

基本信息

內容簡介

本書以目前國際上使用最為流行、功能最為完善和成熟的Red Hat Enterprise Linux 5為藍本,對Linux的系統管理以及網路服務進行了詳細的介紹。本書分為四篇共20章,由淺入深、循序漸進地介紹了Linux的系統管理、網路服務以及開發的相關知識,內容涉及Linux的基礎知識、檔案和磁碟管理、常見軟體和硬體配置、用戶和組管理、軟體包管理、GRUB引導器、進程管理、遠程登錄管理、 TCP/IP網路基礎知識、Samba伺服器、Proxy伺服器、資料庫伺服器、Apache伺服器、FTP伺服器、NFS伺服器、郵件伺服器、網路信息安全,以及Linux下的C編程和網路編程等內容。

本書講解透徹、例子豐富,適用於初、中級Linux用戶,並配有一張多媒體視頻教學光碟,可以用作各類院校相關專業的教材以及Linux培訓班的教材;同時,本書也是面向廣大Linux愛好者的一本Linux實用參考書。

作者簡介

閻映炳,中國科學院博士,軟體工程師,長期從事Linux系統下的軟體開發、伺服器配置與維護工作,曾經參加上海光源國家重大科學工程測量與控制的設計與建造。工作之餘,他致力於網路伺服器最佳化和嵌入式Linux開發。

前言

Linux是目前非常流行的一款作業系統,由於其穩定、高效、安全,已被越來越多的用戶了解和使用。它支持多用戶、多進程和多執行緒,實時性好,穩定性高。同時,又具有良好的兼容性和可移植性。Linux最大的優點在於其強大的伺服器功能,正因為如此,在網路技術蓬勃發展的今天,憑藉其在安全性、穩定性等方面的巨大優勢,正受到越來越多的青睞,一些大型的網路及網站伺服器,都是建立在Linux平台之上的。

Red Hat Linux,俗稱紅帽子Linux,是套用最廣、功能最為完善和成熟的Linux發行版本,Red Hat Enterprise Linux 5是目前其企業版的最高版本。它是鍾愛Linux系統的程式設計師們進行系統級和套用級開發的最佳選擇,同時也是初學者步入Linux這個自由而神聖的殿堂的最好工具。本書以Red Hat Enterprise Linux 5為藍本,對Linux系統進行全面、系統的介紹。無論是把Linux作為伺服器還是桌面系統,本書都提供了安裝、配置與管理最新作業系統的實用信息。

為了滿足眾多Linux愛好者、初學者、以及從業者的使用需求,作者根據多年從事Linux研究及開發工作的經驗,精心編寫了本書,奉獻給廣大讀者。本書依照Linux初學者的學習規律,同時兼顧中級Linux讀者,首先介紹Linux系統管理方面的一些基本概念和操作,在讀者掌握了這些知識的基礎上,再對網路服務等內容進行深入地講解。

本書在內容的編排和章節的組織上都十分考究,力爭讓讀者能夠在短時間內掌握Linux系統的一些實用的概念和技能,從而能夠快速入門。同時,本書還通過講解一些高級的內容,使得中級Linux讀者也能夠迅速得到提高。在講解具體知識的時候,本書儘量避免冗長的知識講解,直接切入主題,告訴讀者如何實現特定功能,讓讀者在實際操作中熟悉和體會該系統的使用。再者,本書在理論的講解方面,譬如信息安全、垃圾郵件防護等方面具有一定的理論深度,能夠滿足大專院校讀者的需求。

作品特點

1.結構嚴謹,內容豐富

作者對Linux內容的選取非常嚴謹,一環扣一環,從一個知識點過渡到另一個知識點非常順暢和自然。而且,本書內容豐富,從Linux的系統管理、桌面使用到網路服務的構建和套用,甚至到比較實用的Linux下的編程方面的知識,都進行了相應的介紹。

2.講解通俗,步驟詳細

本書對每個知識點以及實例的講解都注重通俗易懂、步驟詳細,並添加了相應的注釋,讀者只要按照步驟操作,就可以很快地上手,迅速掌握。

3.高屋建瓴,適用面廣泛

本書在選材上,從適用人群、學習曲線等各方面進行了細緻的分析和考慮,主要針對初級Linux用戶,同時兼顧中級Linux用戶以及各類院校的學生自學的需求,在講解的難度和深度上都恰到好處,所以適用範圍比較廣泛。

4.具有一定的理論價值

本書不是一般的Linux工具書籍,而是在講解基本操作的前提下,從理論上對每個知識點的原理和套用背景都進行了詳細闡述,從而可以讓讀者在實踐中舉一反三,能夠解決實際中遇到的問題。

本書的內容安排

第1章向讀者介紹什麼是Linux,Linux的發展歷史、優勢以及套用領域,並詳細介紹了Red Hat Enterprise Linux 5的安裝過程,以及登錄和退出方法。

第2章詳細講述如何對Linux的檔案系統以及磁碟進行管理,包括檔案系統基本原理、常用的檔案與目錄操作、磁碟管理的方法等,本章是使用Linux的基礎。

第3章向讀者介紹Linux系統中常見軟體和硬體設定的方法,主要包括用戶界面的設定、安裝與卸載軟體、硬體監測、硬體配置等。

第4章講述如何對Linux系統中的用戶和組進行管理。本章配合實例進行介紹,幫助讀者儘快通過使用相關的檔案、命令和圖形化工具有效地對用戶和組進行管理。

第5章介紹軟體包管理的知識。重點介紹RPM包的管理,同時也對TAR包管理和Linux下常用的壓縮工具進行了介紹。

第6章介紹Red Hat Enterprise Linux 5中使用的GRUB引導器。該引導器可以用來在機器中啟動多個作業系統。

第7章著重介紹Linux系統中最重要的運行實體——進程的工作原理以及如何對系統中的進程進行管理,並且介紹了在實際中經常用到的PROC檔案系統的使用方法。

第8章介紹Linux系統管理的高級話題——遠程登錄管理,講述了三種遠程登錄方式:Telnet、SSH和VNC。

第9章是對本書後面部分所要介紹的網路服務的有關基礎知識的介紹。具體介紹TCP/IP網路基礎,包括網路體系結構、TCP/IP協定棧等。

第10章介紹如何通過配置Samba伺服器,來達到Windows系統和Linux系統信息共享的目的。本章通過具體的實例來進行講解,以便讀者更好地理解和操作。

第11章介紹目前套用較為廣泛的代理伺服器技術。通過本章的學習,讀者可以在Linux環境下輕鬆搭建一個安全、高效的代理伺服器。

第12章介紹Linux環境下最受歡迎的兩種資料庫——MySQL和Oracle,主要包括兩種資料庫的安裝、啟動,以及在程式中的簡單使用。

第13章以Apache伺服器為背景,介紹如何在Linux中搭建自己的Web伺服器以及該伺服器的功能配置,包括虛擬主機的設定、SSI的使用等。

第14章介紹Linux系統下FTP伺服器的安裝、配置以及使用方法,包括Vsftp伺服器和Wu-ftp伺服器。

第15章介紹NFS伺服器的相關內容,包括NFS的基本原理、安裝和啟動方法、伺服器端的配置,以及客戶端查看、掛載已分享資料夾等。

第16章介紹Linux中Sendmail和Dovecot伺服器的使用。通過本章的學習,讀者可以使用這些伺服器輕鬆地收發郵件。此外,本章還介紹了垃圾郵件的流行趨勢,並結合Sendmail給出了在Linux中防治垃圾郵件的策略。

第17章介紹有關網路信息安全的原理和軟體,這是本書中最有特色、理論性最強的一章。它從多個方面闡述了網路信息安全的原理,介紹了網路安全防禦的工具,並詳細介紹了在Linux中如何使用iptables、Snort、Tripwire等工具來進行網路防護。

第18章介紹Linux下的編程,主要介紹在Linux下可使用哪些常用的工具來進行軟體的開發工作。

第19章介紹Linux系統下使用C語言進行程式設計的基礎知識,包括C語言概述、基本套用、檔案操作以及進程操作等。

第20章介紹Linux系統下網路編程的基礎知識,包括套接字編程、伺服器模型以及域名系統等。通過本章的學習,讀者可以掌握基於客戶-伺服器模型的應用程式設計方法。

書中的注釋說明

為了更好地為讀者服務,本書遵循如下的注釋原則。

(1)如果例子比較複雜,則在各個例子的開始加一段功能性說明,該說明注釋的位置獨立成行,以“//”開始;其他簡單的例子則在需要注釋的部分進行說明。

(2)對於例子當中需要說明部分的注釋位於該行的右部,以“//”開始。

關於作者

本書主要由閻映炳、劉雪潔編寫,同時參與編寫的還有昊燃、方振宇、陳冠佐、傅奎、陳勤、梁洋洋、畢夢飛、陳慶、柴相花、陳非凡、陳華、陳嵩、承卓。在此一併表示感謝。

編著者

2010年10月於北京

目錄

第一篇Linux基礎篇

第1章Linux入門 2

1.1什麼是Linux 2

1.2Linux的發展歷史 2

1.3Linux的優勢 3

1.4Linux的套用領域 4

1.5Linux的安裝 4

1.5.1硬體需求 5

1.5.2安裝方式 5

1.5.3安裝過程 6

1.6Linux的啟動過程 14

1.7圖形界面登錄和退出Linux 14

1.8字元界面登錄和退出Linux 15

1.9本章小結 16

1.10習題 16

第2章檔案和磁碟管理 17

2.1Linux檔案系統入門 17

2.1.1Linux常用檔案系統介紹 17

2.1.2Linux檔案介紹 18

2.1.3Linux目錄介紹 19

2.1.4Linux目錄結構 20

2.2檔案與目錄基本操作 22

2.2.1顯示檔案內容命令:cat、more、less、head、tail 22

2.2.2檔案內容查詢命令:grep、egrep、fgrep 25

2.2.3檔案查找命令:find、locate 26

2.2.4文本處理命令:sort、uniq 28

2.2.5檔案內容統計命令:wc 30

2.2.6檔案比較命令:comm、diff 31

2.2.7檔案的複製、移動和刪除命令:cp、mv、rm 33

2.2.8檔案連結命令:ln 35

2.2.9目錄的創建與刪除命令:mkdir、rmdir 36

2.2.10改變工作目錄、顯示路徑以及顯示目錄內容命令:cd、pwd、ls 36

2.3檔案/目錄訪問許可權管理 39

2.3.1檔案/目錄訪問許可權簡介 39

2.3.2使用chmod改變檔案/目錄的訪問許可權 40

2.3.3使用命令chown更改檔案/目錄的所有權 41

2.4管理磁碟存儲器 42

2.4.1存儲設備的命名 42

2.4.2磁碟空間管理 42

2.4.3使用Fdisk工具進行磁碟分區 45

2.4.4最佳化Linux系統硬碟 46

2.5本章小結 48

2.6習題 48

第3章常見軟體設定和硬體配置 49

3.1設定用戶界面 49

3.1.1GNOME桌面系統 50

3.1.2KDE桌面系統 52

3.1.3設定檔案瀏覽界面 53

3.1.4首選項 56

3.2安裝軟體 59

3.2.1基於原始碼的軟體安裝 59

3.2.2基於執行檔的軟體安裝 62

3.2.3RPM執行檔的軟體安裝 62

3.3卸載軟體 63

3.4常見硬體的檢測 63

3.4.1中央處理器狀態的檢測 63

3.4.2硬碟物理壞道的檢測 65

3.4.3記憶體的檢測 67

3.5硬體驅動和配置 69

3.5.1音效卡驅動與配置 69

3.5.2顯示卡的配置 72

3.5.3網卡的配置 73

3.5.4印表機的配置、管理和使用 75

3.6本章小結 77

3.7習題 78

第二篇Linux系統管理與維護篇

第4章用戶和組管理 80

4.1用戶和組檔案 80

4.1.1用戶賬號檔案——passwd 80

4.1.2用戶影子檔案——shadow 82

4.1.3用戶組賬號檔案——group 83

4.1.4組賬號檔案——gshadow 84

4.1.5使用pwck和grpck命令驗證用戶和組檔案 85

4.2使用命令行方式管理用戶和組 87

4.2.1使用useradd命令添加用戶 87

4.2.2使用usermod命令修改用戶信息 88

4.2.3使用userdel命令刪除用戶 89

4.2.4使用groupadd命令創建用戶組 89

4.2.5使用groupmod命令修改用戶組屬性 90

4.2.6使用groupdel命令刪除用戶組 90

4.3使用Red Hat用戶管理器管理用戶和組 91

4.3.1啟動Red Hat用戶管理器 91

4.3.2創建用戶 91

4.3.3修改用戶屬性 92

4.3.4創建用戶組 93

4.3.5修改用戶組屬性 94

4.4本章小結 95

4.5習題 95

第5章軟體包管理 96

5.1RPM包管理 96

5.1.1RPM軟體包的查詢 96

5.1.2RPM軟體包的安裝 98

5.1.3RPM軟體包安裝可能出現的問題 99

5.1.4RPM軟體包的卸載 100

5.1.5RPM軟體包的升級 100

5.1.6RPM軟體包的驗證 101

5.1.7添加/刪除應用程式 102

5.2RPM軟體包的密鑰管理 104

5.2.1下載與安裝PGP 104

5.2.2RPM使用PGP產生簽名所需的配置 105

5.2.3配置RPM宏 106

5.2.4RPM的PGP簽名選項 106

5.2.5 添加數字簽名 106

5.3TAR包管理 106

5.3.1TAR命令語法及參數選項 106

5.3.2創建tar檔案 108

5.3.3顯示tar檔案內容 109

5.3.4向tar檔案中添加一個檔案 109

5.3.5從tar檔案中取出檔案 110

5.4Linux下常用的壓縮工具 111

5.4.1gzip壓縮工具 111

5.4.2zip/unzip命令 113

5.4.3bzip2/bunzip2命令 118

5.5本章小結 120

5.6習題 120

第6章GRUB引導器 121

6.1GRUB概述 121

6.2GRUB的特點 121

6.3GRUB運行原理 122

6.4使用GRUB 122

6.4.1GRUB的選擇安裝 122

6.4.2GRUB的設備名稱 123

6.4.3GRUB的檔案名稱稱 124

6.4.4GRUB的基本接口 124

6.4.5GRUB的基本命令 126

6.4.6GRUB配置檔案介紹 127

6.5GRUB的套用舉例 128

6.6本章小結 130

6.7習題 131

第7章Linux中的進程管理 132

7.1Linux進程概述 132

7.2Linux進程原理 132

7.2.1Linux進程的狀態 132

7.2.2Linux進程工作模式 133

7.3Linux守護進程介紹 134

7.3.1守護進程簡介 134

7.3.2重要守護進程介紹 134

7.4啟動Linux進程 135

7.4.1手工啟動 135

7.4.2在指定時刻執行命令序列——at命令 136

7.4.3在資源比較空閒的時候執行

5.2.2命令——batch命令 139

7.4.4不斷重複執行某些命令——cron命令 139

7.4.5操作cron後台進程的表格——crontab命令 139

7.5進程的掛起及恢復 142

7.6Linux進程管理 142

7.6.1使用ps命令查看進程狀態 142

7.6.2使用top命令查看進程狀態 144

7.6.3使用kill命令終止進程 145

7.6.4使用sleep命令暫停進程 146

7.7進程檔案系統PROC 147

7.8本章小結 149

7.9習題 149

第8章遠程登錄管理 150

8.1使用Telnet 150

8.1.1Telnet簡介 150

8.1.2Telnet原理 150

8.1.3安裝和啟動Telnet 151

8.1.4配置Telnet 152

8.1.5Telnet會話示例 153

8.2使用SSH 154

8.2.1SSH介紹 154

8.2.2安裝與啟動SSH 155

8.2.3簡單測試和使用SSH 155

8.2.4配置/etc/ssh/sshd_config檔案 157

8.2.5配置/etc/ssh/ssh_config檔案 160

8.2.6SSH的密匙管理 161

8.2.7使用scp遠程複製檔案 162

8.2.8使用SSH設定加密通道 163

8.2.9配置SSH的客戶端 164

8.2.10配置SSH自動登錄 165

8.3使用VNC 167

8.3.1VNC簡介 167

8.3.2安裝和啟動VNC 168

8.3.3配置VNC 168

8.3.4VNC會話示例 170

8.4本章小結 171

8.5習題 171

第9章TCP/IP網路基礎 172

9.1網路簡介 172

9.2網路的體系結構 172

9.3TCP/IP簡介 174

9.3.1IP協定介紹 175

9.3.2TCP協定介紹 178

9.3.3UDP協定介紹 180

9.4使用xinetd啟動Linux網路服務 181

9.5本章小結 184

9.6習題 184

第三篇Linux伺服器配置篇

第10章Samba伺服器配置 186

10.1Samba伺服器簡介及安裝 186

10.1.1Samba工作原理 186

10.1.2Samba伺服器的功能 186

10.1.3SMB協定 187

10.1.4安裝Samba 187

10.2啟動及關閉Samba伺服器 188

10.2.1在命令行中啟動和關閉Samba服務 188

10.2.2在System Services中啟動和關閉Samba服務 189

10.2.3簡單測試Samba伺服器 190

10.3配置Samba伺服器的用戶信息 192

10.3.1創建伺服器待認證用戶 193

10.3.2將系統用戶轉換為Samba用戶 193

10.3.3Samba伺服器和主瀏覽器 194

10.4smb.conf配置檔案實例詳解 195

10.4.1設定工作組 195

10.4.2設定共享Linux賬戶主目錄 196

10.4.3設定公用已分享資料夾 197

10.4.4設定一般已分享資料夾 197

10.4.5設定共享印表機 198

10.4.6印表機配置相關問題 199

10.5一個完整的smb.conf檔案實例 200

10.5.1global段 201

10.5.2home段 205

10.5.3printers段 205

10.5.4netlogon段 206

10.5.5Profiles段 206

10.5.6public段 206

10.5.7一般共享段 207

10.5.8測試smb.conf檔案 207

10.5.9該配置在Windows系統下的

10.2.1顯示結果 208

10.6smb.conf中的其他選項 209

10.7Linux和Windows檔案互訪 211

10.7.1Windows客戶使用Linux系統已分享檔案 211

10.7.2用smbclient命令訪問區域網路上的Windows系統 211

10.7.3用smbmount命令訪問區域網路上的其他系統 213

10.7.4使用LinNeighborhood訪問區域網路上的已分享檔案 213

10.8本章小結 215

10.9習題 215

第11章Proxy伺服器配置 216

11.1Proxy伺服器原理簡介 216

11.2Squid簡介 217

11.3安裝和啟動Squid伺服器 218

11.3.1安裝Squid伺服器 218

11.3.2啟動和關閉Squid伺服器 220

11.4在客戶端使用Squid伺服器 220

11.4.1在IE瀏覽器中設定 221

11.4.2在Linux瀏覽器中設定 222

11.5配置Squid伺服器 223

11.5.1配置Squid伺服器的基本參數 223

11.5.2配置Squid伺服器的訪問控制 225

11.5.3配置Squid伺服器的簡單實例 229

11.6配置基於Squid的透明代理 229

11.6.1Linux核心的相關配置 229

11.6.2Squid的相關配置選項 230

11.6.3iptables的相關配置 231

11.7配置多級快取改善Proxy伺服器的性能 231

11.7.1多級快取(cache)簡介 231

11.7.2配置多級快取 232

11.8Squid日誌管理 233

11.8.1配置檔案中有關日誌的選項 233

11.8.2日誌管理主檔案——accesss.conf 234

11.9使用Webalizer對Squid進行流量分析 236

11.9.1Webalizer的特點 236

11.9.2安裝Webalizer 237

11.9.3配置Webalizer 238

11.9.4使用Webalizer 238

11.10本章小結 241

11.11習題 241

第12章資料庫伺服器配置 242

12.1Linux下資料庫系統簡介 242

12.2MySQL資料庫系統簡介 242

12.3MySQL資料庫系統的安裝 242

12.3.1基於原始碼包的MySQL安裝 242

12.3.2基於RPM包的MySQL安裝 246

12.4設定用戶訪問許可權 247

12.4.1建立MySQL的用戶和用戶組 247

12.4.2設定用戶訪問許可權 247

12.4.3啟動MySQL 248

12.6MySQL常用操作 250

12.5.1連線MySQL伺服器 250

12.5.2退出MySQL伺服器 251

12.5.3密碼管理 251

12.5.4增加新用戶 251

12.5.5命令分行 252

12.5.6命令歷史記錄 252

12.5.7顯示資料庫列表 252

12.5.8顯示資料庫中的數據表 253

12.5.9顯示資料庫的表結構 254

12.5.10新建資料庫 254

12.5.11新建資料庫表 255

12.5.12刪庫和刪表 255

12.5.13將表中記錄清空 256

12.5.14顯示錶的記錄 256

12.5.15向表中插入記錄 256

12.5.16MySQL數據導入和備份 256

12.6在程式中操作MySQL資料庫 257

12.7安裝Oracle資料庫系統 258

12.7.1安裝Oracle 11g的硬體條件 258

12.7.2下載Oracle 11g的安裝檔案 258

12.7.3安裝前的準備工作 259

12.7.4安裝Oracle 260

12.8測試Oracle資料庫系統 261

12.8.1使用svrmgrl測試安裝是否成功 262

12.8.2使用sql*plus測試安裝是否成功 262

12.9設定Oracle服務自動啟動 262

12.10操作Oracle資料庫 262

12.10.1創建表空間和創建用戶 263

12.10.2刪除用戶 263

12.10.3修改用戶密碼 263

12.10.4數據導出 263

12.10.5數據導入 264

12.10.6其他數據操作 264

12.11在程式中操作Oracle資料庫 264

12.11.1用C語言操作Oracle資料庫 264

12.11.2用PHP語言訪問Oracle資料庫 268

12.12本章小結 271

12.13習題 272

第13章Apache伺服器配置 273

13.1Apache簡介 273

13.1.1Apache的誕生 273

13.1.2Apache的特性 274

13.2Apache的獲取和安裝 274

13.2.1Apache獲取及其最新信息 274

13.2.2基於原始碼的Apache安裝 275

13.2.3基於RPM軟體包的Apache安裝 281

13.3啟動和停止Apache伺服器 281

13.3.1手動啟動和停止Apache伺服器 281

13.3.2在/etc/rc.d目錄下httpd檔案中用腳本啟動 282

13.3.3測試Apache 284

13.4配置Apache伺服器 284

13.4.1httpd.conf檔案中的全局配置選項 284

13.4.2.htaccess檔案和訪問限制 287

13.4.3httpd.conf檔案中的CGI設定 288

13.4.4httpd.conf檔案中的URL路徑名設定 289

13.4.5httpd.conf檔案中的MIME類型 292

13.5虛擬主機的設定 293

13.5.1基於域名的虛擬主機 293

13.5.2基於IP的虛擬主機 294

13.6日誌記錄 294

13.7SSI設定 295

13.7.1SSI簡介 295

13.7.2啟用SSI 295

13.7.3SSI指令 296

13.8一個完整的配置檔案 299

13.8.1全局環境的設定 300

13.8.2動態共享對象支持DSO的設定 302

13.8.3主伺服器設定 303

13.8.4設定日誌管理 305

13.8.5設定虛擬目錄 306

13.8.6設定虛擬主機 307

13.8.7設定MIME類型 307

13.8.8錯誤顯示 309

13.8.9語言管理 310

13.9本章小結 311

13.10習題 312

第14章FTP伺服器配置 313

14.1FTP簡介 313

14.1.1FTP協定介紹 313

14.1.2FTP檔案類型 314

14.1.3FTP檔案結構 315

14.1.4FTP傳輸模式 315

14.1.5FTP常用命令 315

14.1.6FTP典型訊息 316

14.2使用Vsftp伺服器 317

14.2.1Vsftp簡介 317

14.2.2安裝Vsftp伺服器 317

14.2.3啟動和關閉Vsftp伺服器 319

14.2.4配置vsftpd.conf檔案 320

14.2.5配置ftpusers檔案 322

14.2.6配置user_list檔案 323

14.3深入使用Vsftp伺服器 323

14.3.1匿名用戶使用Vsftp伺服器 324

14.3.2本地用戶使用Vsftp伺服器 325

14.3.3虛擬用戶使用Vsftp伺服器 327

14.3.4配置Vsftp伺服器中chroot 329

14.3.5配置Vsftp伺服器在非標準連線埠工作 329

14.3.6配置虛擬FTP伺服器 330

14.4使用Wu-ftp伺服器 332

14.4.1安裝Wu-ftp伺服器 332

14.4.2啟動和使用Wu-ftp伺服器 333

14.4.3配置Wu-ftpd伺服器 334

14.5本章小結 335

14.6習題 335

第15章NFS伺服器配置 337

15.1NFS簡介 337

15.2安裝和啟動NFS伺服器 338

15.2.1安裝NFS伺服器 338

15.2.2啟動NFS伺服器 341

15.3配置NFS伺服器 341

15.4使用NFS伺服器 343

15.4.1查看NFS已分享資料夾 343

15.4.2掛載NFS已分享資料夾 344

15.4.3自動掛載已分享資料夾 346

15.5本章小結 347

15.6習題 347

第16章Mail伺服器配置 348

16.1郵件系統簡介 348

16.1.1郵件傳遞代理(MTA) 348

16.1.2郵件存儲和獲取代理(MSA) 348

16.1.3郵件客戶代理(MUA) 349

16.2SMTP介紹 349

16.2.1SMTP的模型 349

16.2.2SMTP的基本命令 350

16.2.3電子郵件介紹 352

16.2.4Open Relay的原理 354

16.3建立Sendmail伺服器 354

16.3.1安裝與啟動Sendmail 354

16.3.2設定16.3.3使用檔案 359

16.3.4創建新的郵件賬號 361

16.3.5設定賬號別名 361

16.3.6使用access資料庫 361

16.3.7配置帶SMTP認證的Sendmail伺服器 362

16.4建立Dovecot郵件伺服器 363

16.4.1安裝Dovecot伺服器 364

16.4.2配置Dovecot伺服器 365

16.4.3啟動Dovecot伺服器 366

16.4.4傳送/接收郵件實例 366

16.5配置郵件客戶端 367

16.6防範垃圾郵件 371

16.6.1常用技術 372

16.6.2使用Sendmail防範垃圾郵件 373

16.7本章小結 374

16.8習題 374

第17章網路信息安全 375

17.1網路信息安全簡介 375

17.1.1網路信息安全的要素 375

17.1.2網路中存在的威脅 376

17.1.3網路信息安全領域的研究重點 376

17.2常見的攻擊類型 378

17.2.1連線埠掃描 378

17.2.2特洛伊木馬 379

17.2.3DoS攻擊 381

17.2.4Linux下的病毒 382

17.3防火牆(FireWall)技術 384

17.3.1防火牆簡介 385

17.3.2防火牆的分類 385

17.3.3傳統防火牆技術及其特點 387

17.3.4新一代防火牆的主要技術特點 388

17.3.5新一代分散式防火牆概述 388

17.3.6新一代嵌入式防火牆技術 388

17.3.7新一代智慧型防火牆技術 389

17.3.8防火牆技術的發展趨勢 389

17.3.9使用netfilter/iptables防火牆框架 391

17.4入侵檢測系統(IDS) 395

17.4.1入侵檢測系統簡介 395

17.4.2Snort介紹 396

17.4.3安裝Snort 396

17.4.4使用Snort 398

17.4.5配置Snort規則 401

17.4.6編寫Snort規則 403

17.4.7Snort規則套用舉例 404

17.5使用Tripwire保護網路系統的數據安全 406

17.5.1Tripwire簡介 406

17.5.2Tripwire工作原理 406

17.5.3使用Tripwire 408

17.5.4使用Tripwire的技巧 412

17.6本章小結 413

17.7習題 413

第四篇Linux編程篇

第18章Linux下的編程 416

18.1Linux下常用的開發工具 416

18.1.1GCC 416

18.1.2CVS 416

18.1.3Perl 416

18.1.4Linux上的Delphi——Kylix 417

18.2Linux下的Vi文本編輯器 417

18.2.1Vi編輯器介紹 418

18.2.2啟動Vi編輯器 419

18.2.3顯示Vi中的行號 420

18.2.4游標移動操作 420

18.2.5螢幕命令 421

18.2.6文本插入(insert)命令 422

18.2.7附加(append)命令 422

18.2.8新行(open)命令 423

18.2.9文本修改命令 423

18.2.10退出Vi編輯器 426

18.3Linux的C編譯器——GCC 426

18.3.1GCC的編譯過程 427

18.3.2GCC的基本用法和常用選項 427

18.3.3使用GDB調試C程式 429

18.3.4編寫Makefile檔案 434

18.4Linux下的PHP編程 438

18.4.1PHP簡介 439

18.4.2配置運行環境 439

18.4.3一個簡單的PHP例子 441

18.5本章小結 442

18.6習題 442

第19章Linux下的C編程 443

19.1C語言概述 443

19.1.1發展歷史與特點 443

19.1.2程式的基本結構 444

19.1.3基本組成元素 444

19.1.4語句 447

19.1.5數組 451

19.1.6指針 452

19.1.7結構體 453

19.1.8函式 455

19.2基本套用 456

19.2.1字元串操作 456

19.2.2數據轉換 459

19.2.3記憶體分配與釋放 461

19.3檔案操作 462

19.3.1創建/打開檔案 462

19.3.2關閉檔案 463

19.3.3讀寫檔案 463

19.4進程操作 465

19.4.1進程的概念 465

19.4.2進程的創建 466

19.4.3進程的終止 467

19.4.4進程信息的獲取 469

19.5本章小結 470

19.6習題 471

第20章Linux下的網路編程 472

20.1套接字編程概述 472

20.2套接字數據結構 474

20.2.1套接字地址結構 474

20.2.2通用套接字地址結構 475

20.2.3主機名結構 476

20.2.4服務名結構 476

20.3套接字函式 477

20.3.1創建套接字 477

20.3.2綁定套接字 478

20.3.3監聽網路連線埠 478

20.3.4接受連線請求 479

20.3.5建立連線 479

20.3.6面向連線的數據傳輸 479

20.3.7無連線的數據傳輸 480

20.3.8關閉套接字 481

20.3.9套用實例 481

20.4伺服器模型 487

20.4.1循環伺服器 487

20.4.2並發伺服器 488

20.5域名系統 490

20.5.1通過域名獲取主機信息 490

20.5.2通過地址獲取主機信息 491

20.5.3獲取本地主機信息 491

20.6本章小結 492

20.7習題 493

相關詞條

相關搜尋

熱門詞條

聯絡我們