图书简介:
第1章 背景知识 1
1.1 GNU计划概貌 2
1.1.1 GNU计划 2
1.1.2 GNU GPL—通用公共许可证 3
1.2 Linux发展简史 3
1.2.1 Linux和Linus Torvalds 3
1.2.2 GNU/Linux的诞生 4
1.3 Linux的特色和应用领域 4
1.3.1 Linux的主要特色 5
1.3.2 Linux的主要应用领域 6
1.4 Linux发行版 7
1.4.1 Mandriva 7
1.4.2 Red Hat 7
1.4.3 SUSE 8
1.4.4 Debian GNU/Linux 8
1.4.5 Ubuntu 9
1.4.6 Gentoo 9
1.4.7 Slackware 10
1.4.8 FreeBSD 10
第2章 RHEL 6系统安装 11
2.1 准备知识 12
2.1.1 硬件要求 12
2.1.2 准备安装文件及选择安装方式 12
2.1.3 硬盘分区 12
2.1.4 登录方式 13
2.1.5 系统安全始于安装 13
2.2 光盘安装 14
2.2.1 新建虚拟机 14
2.2.2 修改BIOS中的引导顺序 16
2.2.3 文本界面下的安装 16
第3章 用户的基本操作 28
3.1 用户的登录、注销和切换 29
3.1.1 用户的登录 29
3.1.2 用户的注销 29
3.1.3 用户的切换 29
3.2 RPM软件包管理 30
3.2.1 RPM软件包管理概述 30
3.2.2 使用rpm命令管理软件包 31
3.2.3 使用yum命令管理软件包 37
3.3 VI/VIM编辑器 42
3.3.1 VI/VIM编辑器简介 42
3.3.2 VI/VIM的工作模式 42
3.3.3 VI/VIM编辑器的使用 43
3.4 用户的语言环境 47
3.5 本课程的学习环境 47
第4章 服务和进程的管理 49
4.1 管理系统服务 50
4.1.1 使用chkconfig命令 50
4.1.2 使用setup/ntsysv工具 51
4.1.3 使用服务启动脚本 52
4.1.4 使用service命令 53
4.2 管理系统进程 53
4.2.1 进程与程序 53
4.2.2 进程的启动 54
4.2.3 管理系统进程 56
4.2.4 管理后台任务 59
4.3 开机与关机 61
4.3.1 解析配置文件/etc/inittab 61
4.3.2 设置GRUB选项 62
4.3.3 正确的关机方式 65
第5章 用户和组的管理 68
5.1 与用户和组有关的配置文件 69
5.1.1 用户账户文件/etc/passwd 69
5.1.2 用户密码文件/etc/shadow 69
5.1.3 用户组账户文件/etc/group 69
5.1.4 用户组密码文件/etc/gshadow 70
5.1.5 新建用户的配置文件/etc/login.defs 70
5.2 私有组和有效组 71
5.3 与用户和组有关的命令 72
5.3.1 用户账户管理 72
5.3.2 用户密码管理 73
5.3.3 管理用户组 75
5.4 有关的安全问题 76
5.4.1 密码及账户安全 76
5.4.2 PAM认证模块 78
5.4.3 设置严格的权限 82
5.4.4 关于sudo 82
第6章 管理磁盘文件系统 86
6.1 目录和文件 87
6.1.1 目录结构 87
6.1.2 文件属性 88
6.1.3 检查文件系统 92
6.2 分区与格式化 93
6.2.1 基本原理 93
6.2.2 分区 96
6.2.3 建立文件系统 99
6.3 使用外部存储设备 100
6.3.1 挂载硬盘分区 102
6.3.2 挂载光盘驱动器 104
6.3.3 挂载U盘 104
6.3.4 设置文件系统类型 105
6.3.5 挂载选项 105
第7章 网络的设置与测试 109
7.1 静态网络参数设置 110
7.1.1 设置主机名 110
7.1.2 设置网络接口参数 110
7.1.3 测试网络连通性 113
7.2 动态网络参数设置 114
7.2.1 DHCP服务概述 114
7.2.2 DHCP工作原理 115
7.2.3 DHCP软件包的安装 116
7.2.4 DHCP服务器的配置 117
7.2.5 DHCP客户端的设置 119
7.2.6 课堂练习—实现单子网的DHCP服务 121
7.3 网络监测工具 124
7.3.1 使用扫描器netstat 124
7.3.2 使用嗅探器tcpdump 124
7.3.3 使用日志服务器syslog 125
7.4 安全的远程管理 125
7.4.1 Telnet服务的配置与管理 125
7.4.2 SSH服务的配置与管理 130
第8章 Samba服务器配置与安全管理 141
8.1 Samba服务概述 142
8.1.1 Samba简介 142
8.1.2 Samba的工作原理 143
8.2 案例导学—实现默认的文件和打印共享 143
8.2.1 安装 143
8.2.2 使用默认配置的Samba服务器 146
8.2.3 应用测试 150
8.3 课堂练习—架设基本的文件服务器 157
8.3.1 任务及分析 157
8.3.2 配置方案和过程 157
8.3.3 应用测试 159
8.4 拓展练习—Samba服务的安全管理 161
8.4.1 设置用户账号映射 161
8.4.2 设置主机访问控制 163
8.4.3 用PAM实现用户和主机访问控制 165
8.4.4 为用户建立独立的配置文件 166
第9章 FTP服务器配置与安全管理 170
9.1 FTP服务概述 171
9.1.1 FTP协议简介 171
9.1.2 FTP的连接模式 171
9.1.3 FTP的常用命令 172
9.1.4 FTP服务器软件 173
9.2 案例导学—实现匿名和本地访问的FTP服务器 174
9.2.1 安装 174
9.2.2 配置匿名用户访问FTP服务器 177
9.2.3 配置本地用户访问FTP服务器 181
9.3 课堂练习—配置FTP虚拟主机 185
9.3.1 任务及分析 185
9.3.2 配置方案和过程 185
9.3.3 应用测试 186
9.4 拓展练习—vsftpd服务的安全管理 187
9.4.1 设置虚拟用户 188
9.4.2 主机访问控制 191
9.4.3 用户访问控制 193
9.4.4 配置FTP服务器的资源限制 195
第10章 DNS服务器配置与安全管理 196
10.1 DNS服务概述 197
10.1.1 DNS服务的起源 197
10.1.2 DNS系统的结构 197
10.1.3 DNS区域传输 199
10.1.4 DNS查询原理 200
10.2 案例导学—实现主要DNS服务器 202
10.2.1 安装 202
10.2.2 配置主要域名服务器 204
10.2.3 应用测试 210
10.3 课堂练习—配置辅助服务器实现区域传输 213
10.3.1 任务及分析 213
10.3.2 参考方案及配置过程 213
10.3.3 应用测试 215
10.4 拓展练习—DNS的安全配置和使用 216
10.4.1 合理配置DNS的查询方式 216
10.4.2 限制区域传输 216
10.4.3 限制查询者 217
10.4.4 分离DNS 217
10.4.5 配置域名转发 218
第11章 Web服务器配置与安全管理 222
11.1 Web服务概述 223
11.1.1 HTTP基本原理 223
11.1.2 Apache服务器简介 223
11.1.3 Apache服务器面临的网络威胁 224
11.2 案例导学—实现默认的Web网站 225
11.2.1 安装 225
11.2.2 使用默认配置的Apache服务器 226
11.2.3 测试默认网站 230
11.3 课堂练习—Web网站常规应用配置 232
11.3.1 任务及分析 232
11.3.2 配置方案和过程 233
11.3.3 应用测试 236
11.4 拓展练习—Apache的安全策略 236
11.4.1 使用特定的用户运行Apache服务器 237
11.4.2 设置主机访问控制 237
11.4.3 使用HTTP用户认证 240
11.4.4 设置虚拟目录和目录权限 242
第12章 Iptables防火墙策略 244
12.1 网络层防火墙概述 245
12.1.1 网络层防火墙的主要功能 245
12.1.2 网络层防火墙的应用原理 246
12.2 Linux中防火墙的实现 246
12.2.1 Iptables介绍 247
12.2.2 Iptables的检查点 247
12.2.3 防火墙规则 248
12.2.4 Iptables的表与链 249
12.2.5 Netfilter/Iptables的典型应用 252
12.3 案例导学—设计Iptables防火墙策略 252
12.3.1 安装和管理Iptables 252
12.3.2 初识Iptables语法 252
12.3.3 使用TUI工具配置防火墙 263
12.4 课堂练习—架设单机防火墙 264
12.4.1 任务及分析 264
12.4.2 配置方案和过程 265
12.5 拓展练习—架设网络防火墙 266
12.5.1 任务及分析 266
12.5.2 配置方案和过程 267
附录A 项目实战 270
展开
由于开源系统Linux具有稳定、安全、网络负载力强、占用资源少等特点,自问世以来便得到了迅速推广和应用,已发展为当今世界的主流操作系统之一。目前对Linux感兴趣的用户主要集中在一些垂直行业当中,例如,零售、家电等行业的POS终端和数据中心利用Linux的可靠性和成本优势来提升利润率;电信、医疗等行业利用Linux的成本控制以提高企业的竞争优势;能源行业、计算密集型应用企业则通常利用上千个结点的Linux集群来承担大量的运算工作;电子政务的“崛起”使得政府行业已占据了Linux市场的大量份额。
据统计,目前Linux最擅长的应用领域包括:单一应用的基础架构和应用服务器(如DNS和DHCP服务器、文件服务器、Web服务器、邮件服务器、防火墙和互联网代理服务器)、高性能计算及计算密集型应用(如风险分析、数据分析、数据建模等)、中小型数据库。
由于Linux内核是由众多具有黑客背景的程序员逐步完善而来的,因此,与Windows系列相比,企业购买Linux系统不但节约了资金,而且其出色的安全性可使企业免于在为服务器打补丁的事情上耗费大量时间和精力,降低了管理成本,这已成为越来越多的企业选择或转向Linux平台的一个非常重要的原因。
Linux真正的优势和发展方向是作为服务器平台,尽管它相对安全,但是安全意识和策略的缺失仍可能使其遭受攻击。因此,提升Linux服务器的安全性是用户十分关心的问题。目前,关于Linux方面的高职高专教材虽然较多,大多数都是侧重介绍如何安装、配置,以及如何在图形界面下完成各项任务的,对于Linux作为服务器的配置及其安全策略(系统安全、网络服务安全)应用的介绍相对较为薄弱。事实上,随着Red Hat Linux企业版的不断升级,其对服务器自身的系统安全加固和对网络安全防护的要求越来越高,而本教材正是围绕着服务器及其安全管理这个重点展开的,其目的是要说明Linux服务器通过加固配置后是更安全的。
本书针对Red Hat Enterprise Linux Server 6编写,全书由系统管理、应用服务配置与管理、网络安全管理三大部分组成,共分为12章和一个附录,建议学时数为96学时。第一部分介绍了相关背景知识、系统的安装、基本操作和系统管理;第二部分介绍了网络的设置与测试、网络基础架构的搭建和应用服务的管理,分析了Linux服务器的系统安全策略,是专业人员必须掌握的部分,包括DHCP、Samba、FTP、DNS、Apache;第三部分着重介绍了防火墙策略的设计和部署。每一章节的内容都通过四个环节串联起来:知识准备模块负责提供必要的基础理论;案例导学模块通过引入典型案例供学生了解服务器运维的基本流程,以激发学生兴趣和对知识的渴望;课堂练习模块通过实施服务器的进阶配置任务来培养学生的单项故障排查能力,形成服务器运维的一般思路;拓展训练模块通过设计和部署安全策略来培养学生的可持续发展能力。附录中的项目实战通过引入中小型企业服务器运维的真实案例,让学生自行设计解决方案,以促进学生综合应用能力、职业素养和迁移能力的形成。
本书采用的案例均来自中小企业服务器运维管理的真实任务,实用性非常强。除防火墙案例建议使用真实环境进行实训和教学之外,其余任务均可在VMware Workstation虚拟环境(最小化安装Linux系统并进行复制,可得到多套Linux系统)中完成。
本书的作者具有多年从事Linux服务和安全研究的经验,由张迎春、戴伟成、胡国胜主持编写,由张迎春、戴伟成统稿并审校。参与编写的人员还有张月红、邱洋、计大威、蔡军英。在编写过程中,行业专家李伟斌、徐婷婷提供了大量真实案例和宝贵的建议,在此,一并致以衷心的感谢!
为了方便教师教学,本书配有电子教学课件,请有此需要的教师登录华信教育资源网(www.hxedu.com.cn)免费注册后进行下载,如有问题可在网站留言板留言或发邮件到hxedu@phei.com.cn。
由于水平和时间有限,疏漏和错误之处在所难免,敬请广大读者批评指正。
编 者
展开