第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 RedHat 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
第1 2章 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