标题：RedHatLinux9实务自学手册
图书信息
作　者：李洋 编著 
出 版 社： 电子工业出版社
出版时间： 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第2章 Linux安装及运行本章详细介绍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
第3章 软件包管理本章介绍软件包管理的知识，重点介绍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
第4章 用户界面和硬件管理本章向读者介绍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
第5章 文件系统管理本章详细介绍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
第6章 系统的用户和组管理本章讲述如何对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
第7章 进程管理本章着重介绍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
第9章 DHCP服务器管理本章对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
第10章 DNS服务器管理本章重点介绍因特网中的重要基础设施——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
第11章 远程登录管理本章介绍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章 路由器管理本章介绍因特网中另一项重要的基础设施——路由器的管理和应用问题，并通过路由协议、静态路由配置、动态路由配置等实例向读者进行详细的介绍。
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
第13章 Samba服务器管理本章通过具体的实例介绍如何通过配置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
第14章 Web服务器管理本章以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
第15章 FTP服务器管理本章介绍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
第16章 Proxy服务器管理本章介绍目前应用较为广泛的代理服务器技术，通过本章的学习，读者可以在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
第17章 邮件服务器配置本章介绍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
第18章 数据库服务器管理本章介绍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
第19章 NFS服务器管理本章介绍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
第20章 Linux网络安全本章介绍有关网络信息安全的原理和软件，网络安全防御的工具，以及在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
第22章 系统管理及应用工具本章介绍在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
第23章 网络管理及应用工具本章介绍在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