本書主要介紹了Linux基礎知識、網(wǎng)絡安全以及網(wǎng)絡服務方面的內容,共10章。內容包括Linux基礎、vi文本編輯器、Linux系統(tǒng)啟動過程和Systemd進程管理、用戶和組的管理命令、網(wǎng)絡調試命令、軟件包的安裝及配置命令、Shell腳本編程、SELinux技術、FTP和Samba服務器、Web和DNS服務器、E-mail服務器的搭建和管理、集群服務等。本書設計了大量操作性較強的應用案例,以增強應用性和工程實踐性。本書以主流的RHEL 7.4操作系統(tǒng)為藍本講解Linux操作系統(tǒng),內容豐富全面,實踐性強,并對重點內容給出了詳細的案例,讀者可以在Linux真機系統(tǒng)或者Linux虛擬機上進行實驗仿真。
本書可以作為網(wǎng)絡工程專業(yè)、計算機科學與技術專業(yè)“Linux服務與應用”課程的教材,也可以作為其他相關專業(yè)“計算機網(wǎng)絡”和“操作系統(tǒng)”課程的后續(xù)教材,同時可以作為從事網(wǎng)絡建設、管理和運維工作的工程技術人員的參考書。
目 錄
前言
第1章 Linux系統(tǒng)概述1
1.1 自由軟件簡介1
1.1.1 自由軟件與GPL協(xié)議1
1.1.2 GNU工程2
1.2 Linux概述2
1.2.1 什么是Linux2
1.2.2 Linux版本3
1.2.3 Linux系統(tǒng)的特點6
1.2.4 Linux系統(tǒng)的應用6
1.3 Red Hat Enterprise Linux 7.x版本簡介7
1.4 Red Hat Enterprise Linux 7.4安裝8
1.4.1 可選擇的安裝方式8
1.4.2 使用VMware Workstation安裝Red Hat Enterprise Linux 7.4虛擬機9
1.5 Linux的啟動與關機20
1.5.1 RHEL 7.4的啟動20
1.5.2 系統(tǒng)啟動配置文件21
1.5.3 登錄與關機22
習題124
第2章 Linux文件系統(tǒng)及終端操作25
2.1 Linux文件系統(tǒng)25
2.1.1 Linux文件系統(tǒng)類型25
2.1.2 Linux系統(tǒng)目錄結構26
2.1.3 Linux系統(tǒng)文件類型及屬性27
2.2 Shell命令基礎30
2.2.1 Shell簡介30
2.2.2 Linux命令的語法規(guī)范31
2.2.3 Shell相關的配置文件33
2.3 Linux常用命令33
2.3.1 基本操作命令33
2.3.2 文件操作命令34
2.3.3 目錄操作命令40
2.4 文件權限管理41
2.4.1 修改文件的屬性41
2.4.2 更改文件的權限42
2.4.3 權限掩碼umask43
2.4.4 特殊權限44
2.5 vi文本編輯器45
2.5.1 啟動與退出vi編輯器45
2.5.2 vi的三種模式45
2.5.3 移動光標46
2.5.4 復制、剪切和粘貼46
2.5.5 輸入、編輯和刪除47
2.5.6 查找和替換47
習題248
第3章 多用戶與多任務管理50
3.1 賬號管理機制50
3.1.1 賬號管理概述50
3.1.2 用戶賬號和組50
3.1.3 用戶類型52
3.2 Linux用戶賬號及密碼管理53
3.2.1 用戶賬號管理53
3.2.2 用戶密碼管理55
3.3 用戶組管理56
3.4 用戶身份切換59
3.5 Linux系統(tǒng)啟動過程與Systemd60
3.5.1 Linux啟動過程詳解60
3.5.2 Systemd特性及組件60
3.5.3 Linux運行級別及目標管理62
3.6 Linux服務管理64
3.6.1 守護進程與初始化系統(tǒng)64
3.6.2 使用systemctl管理服務65
3.7 Linux的進程管理67
3.7.1 進程概述67
3.7.2 Linux進程管理命令69
3.7.3 進程的前臺與后臺控制73
習題374
第4章 網(wǎng)絡管理76
4.1 Linux網(wǎng)絡配置76
4.1.1 Linux網(wǎng)絡基礎76
4.1.2 RHEL 7.x的配置文件77
4.1.3 常見的網(wǎng)絡調試命令81
4.1.4 網(wǎng)絡故障排除84
4.2 RPM軟件包管理86
4.2.1 RPM包概述86
4.2.2 RPM命令87
4.3 TAR包管理89
4.3.1 TAR包命令89
4.3.2 壓縮命令90
4.4 YUM軟件包管理91
4.4.1 YUM概述91
4.4.2 YUM常用命令92
4.4.3 YUM配置文件94
習題496
第5章 Shell腳本編程97
5.1 Shell編程基礎97
5.1.1 Shell簡介97
5.1.2 管道和重定向97
5.1.3 變量98
5.1.4 執(zhí)行Shell腳本程序99
5.2 控制流程100
5.2.1 if語句100
5.2.2 case語句102
5.3 循環(huán)103
5.3.1 for循環(huán)103
5.3.2 while循環(huán)105
5.3.3 until循環(huán)106
5.4 函數(shù)及數(shù)組107
5.4.1 函數(shù)107
5.4.2 數(shù)值計算108
5.4.3 數(shù)組108
習題5109
第6章 SELinux與防火墻110
6.1 SELinux110
6.1.1 SELinux概述110
6.1.2 SELinux的模式管理111
6.1.3 文件的SELinux配置112
6.1.4 進程的SELinux配置114
6.2 防火墻115
6.2.1 防火墻簡介115
6.2.2 Linux防火墻116
6.3 firewalld服務116
6.3.1 firewalld網(wǎng)絡區(qū)域117
6.3.2 規(guī)則的生命周期117
6.4 firewall-cmd命令行配置參數(shù)介紹118
6.4.1 區(qū)域的查詢和修改118
6.4.2 區(qū)域interface 相關命令118
6.4.3 source的配置119
6.4.4 services和port的配置119
6.4.5 富規(guī)則的配置120
習題6122
第7章 FTP服務與Samba服務123
7.1 FTP相關概念123
7.2 RHEL 7下的vsftpd服務125
7.2.1 安裝及管理vsftpd服務125
7.2.2 vsftpd的配置文件126
7.3 配置vsftpd服務器127
7.3.1 匿名用戶上傳及刪除文件127
7.3.2 基于用戶名和密碼訪問FTP服務器129
7.4 其他FTP工具130
7.5 Samba相關概念133
7.6 RHEL 7下的Samba服務134
7.6.1 安裝及管理Samba服務134
7.6.2 Samba配置文件134
7.6.3 Samba賬戶數(shù)據(jù)庫136
7.7 配置Samba服務器137
7.7.1 匿名方式訪問Samba服務器137
7.7.2 基于用戶名和密碼驗證方式訪問Samba服務器139
習題7141
第8章 Web服務與DNS服務142
8.1 Web相關概念142
8.2 RHEL 7下的Web服務144
8.2.1 安裝及管理Web服務144
8.2.2 Web服務配置文件145
8.3 Web服務器配置實例147
8.3.1 基于IP地址的虛擬主機網(wǎng)站147
8.3.2 基于端口的虛擬主機網(wǎng)站150
8.3.3 基于域名的虛擬主機網(wǎng)站151
8.3.4 搭建LAMP架構的Web網(wǎng)站153
8.4 DNS相關概念156
8.5 RHEL 7下的DNS服務158
8.5.1 安裝及管理DNS服務158
8.5.2 DNS服務配置文件159
8.6 DNS服務器配置實例162
習題8165
第9章 E-mail服務166
9.1 E-mail簡介166
9.1.1 電子郵件概述166
9.1.2 郵件系統(tǒng)組成166
9.1.3 電子郵件協(xié)議167
9.1.4 Postfix郵件系統(tǒng)170
9.2 RHEL 7下安裝Postfix170
9.2.1 安裝及管理Postfix服務171
9.2.2 Postfix服務的配置文件171
9.3 E-mail服務器配置實例173
9.3.1 RHEL 7下搭建Postfix服務器173
9.3.2 采用SquirrelMail構建Web頁面的郵件客戶端180
習題9181
第10章 集群服務182
10.1 集群技術簡介182
10.2 LVS集群系統(tǒng)182
10.2.1 LVS集群體系結構182
10.2.2 負載均衡技術183
10.2.3 負載均衡算法184
10.3 其他集群系統(tǒng)及高可用軟件185
10.3.1 Nginx集群185
10.3.2 Haproxy集群186
10.3.3 Keepalived高可用軟件186
10.4 RHEL 7下的LVS集群服務186
10.4.1 安裝LVS服務管理工具186
10.4.2 安裝及管理Keepalived服務188
10.5 LVS負載均衡配置實例190
10.5.1 基于VS/DR模式的Web集群負載均衡系統(tǒng)190
10.5.2 基于VS/NAT模式的Web集群負載均衡系統(tǒng)195
習題10200
參考文獻201