本书主要包括二十三个模块,分别包括 linux特点、Linux系统安装、Linux系统基本配置、Linux系统远程连接、Linux文件管理、Linux用户管理、Linux权限管理、Linux资源管理、Linux资源包管理、Apache服务器配置、mysql服务器配置、FTP服务器配置、DNS服务器配置、DHCP服务器配置、Samba服务器配置、NFS服务器配置、邮件服务器配置、NAT服务器配置、VPN服务器配置、防火墙、LAMP部署、Docker容器部署等内容。
李志杰,工程硕士,讲师、网络工程师,局域网管理高级技师。1999年至今从事高职计算机网络技术专业教科研工作,主要研究方向为计算机网络技术、信息安全等。近年来,主编了《精通Linux网络服务器配置.管理.检测.应用》《VPN及安全验证技术》和《网络工程》等教材;主持了《信息安全攻击与防护课程视频开发》《操作系统安全课程视频开发》《信息安全技术基础课程视频开发》等三个横向课题;指导学生参加"云计算技术及应用”获得国家二等奖,"信息安全管理与评估”获得国家三等奖;参加高等职业教育教师信息化教学大赛课程教学获广东省三等奖
目 录
第1章 Linux简介 1
1.1 Linux历史 1
1.2 Linux家族 2
1.2.1 Linux常见特性 2
1.2.2 Linux结构组成 3
1.2.3 Linux版本 6
1.3 Linux服务器 8
1.3.1 Linux服务器为何受到青睐 8
1.3.2 云计算 9
1.3.3 Linux与云计算的关系 10
第2章 Linux桌面系统 11
2.1 Linux桌面系统介绍 11
2.1.1 GNOME 3 11
2.1.2 KDE 12
2.1.3 Xfce 13
2.1.4 LXDE 13
2.2 Linux桌面系统的安装 14
2.2.1 在CentOS 7上安装GNOME 3桌面 14
2.2.2 在CentOS 7上安装KDE桌面 16
2.3 任务实战 17
2.3.1 任务描述 17
2.3.2 任务实施 17
第3章 Linux系统安装 19
3.1 VMware Workstation的安装 19
3.2 镜像文件的下载 20
3.3 创建新的虚拟机 20
3.4 CentOS的安装 24
3.5 任务实战 29
3.5.1 任务描述 29
3.5.2 任务实施 29
第4章 Linux系统基本配置 32
4.1 系统安装后的基本配置 32
4.1.1 配置主机名 32
4.1.2 配置IP地址和网卡 33
4.1.3 配置防火墙和SELinux 34
4.1.4 更换国内Yum源 34
4.1.5 配置系统时间同步 35
4.2 远程连接 36
4.2.1 下载PuTTY 36
4.2.2 使用PuTTY连接服务器 37
4.3 关机和重启 38
4.4 重置root密码 39
4.4.1 重新启动系统 39
4.4.2 进入emergency模式 39
4.4.3 修改root密码 40
4.5 任务实战 40
4.5.1 任务描述 40
4.5.2 任务实施 40
第5章 Linux目录和文件管理 43
5.1 Linux目录结构 43
5.1.1 重要目录 43
5.1.2 文件类型 45
5.1.3 文件信息 47
5.1.4 目录路径 49
5.1.5 通配符 50
5.1.6 Shell中特殊符号 51
5.2 文件和目录管理 52
5.2.1 使用pwd命令显示工作目录路径 52
5.2.2 使用cd命令改变工作目录路径 52
5.2.3 使用ls命令列出目录和文件信息 53
5.2.4 使用touch命令创建空文件 54
5.2.5 使用mkdir命令创建目录 55
5.2.6 使用rmdir命令删除空目录 55
5.2.7 使用cp命令复制文件和目录 55
5.2.8 使用mv命令移动文件和目录 56
5.2.9 使用rm命令删除文件和目录 56
5.2.10 使用file命令查询文件类型 57
5.3 链接文件 57
5.3.1 链接文件简介 57
5.3.2 硬链接的使用 58
5.3.3 软链接的使用 59
5.4 任务实战 60
5.4.1 任务描述 60
5.4.2 任务实施 60
第6章 Linux信息查看和处理 63
6.1 文本内容显示 63
6.1.1 使用cat命令显示文本 63
6.1.2 使用head命令显示文件内容 65
6.1.3 使用tail命令显示文件内容 65
6.1.4 使用more命令显示文件内容 66
6.1.5 使用less命令显示文件内容 67
6.1.6 使用nl命令显示文件内容 68
6.1.7 使用wc命令统计文件内容 69
6.2 输入/输出和应用 69
6.2.1 文件描述符 69
6.2.2 find命令的使用 70
6.2.3 grep命令的使用 72
6.2.4 tr命令的使用 73
6.2.5 cut命令的使用 74
6.2.6 paste命令的使用 74
6.2.7 sort命令的使用 75
6.2.8 uniq命令的使用 76
6.2.9 diff命令的使用 77
6.2.10 sed命令的使用 77
6.2.11 awk命令的使用 79
6.3 其他命令 80
6.3.1 使用uname命令查看系统信息 80
6.3.2 使用hostname命令显示或修改主机名称 80
6.3.3 使用cal命令显示日历 80
6.3.4 使用date命令显示或设置日期时间 81
6.3.5 使用history命令查看历史命令 81
6.4 任务实战 82
6.4.1 任务描述 82
6.4.2 任务实施 82
第7章 Linux用户、用户组及权限管理 86
7.1 Linux系统安全模型 86
7.1.1 用户账号 86
7.1.2 用户账号配置文件 86
7.1.3 用户组账号 87
7.1.4 用户组账号配置文件 87
7.2 用户和用户组的管理 88
7.2.1 用户的管理 88
7.2.2 用户组的管理 89
7.2.3 账号信息显示 89
7.3 文件权限的管理 90
7.3.1 文件和目录权限 90
7.3.2 用户和用户组所有者 90
7.3.3 文件和目录权限的控制 91
7.3.4 sudo配置 93
7.4 任务实战 94
7.4.1 任务描述 94
7.4.2 任务实施 94
第8章 Linux资源管理 96
8.1 磁盘分区 96
8.1.1 磁盘分区简介 96
8.1.2 使用fdisk命令建立分区 96
8.1.3 使用parted命令建立分区 99
8.2 文件系统管理 100
8.2.1 Linux文件系统简介 100
8.2.2 文件系统的建立和挂载 101
8.3 磁盘配额 103
8.3.1 磁盘配额简介 103
8.3.2 使用quota命令进行磁盘配额 103
8.4 逻辑卷管理 104
8.4.1 LVM概念及相关术语 104
8.4.2 LVM 配置和使用 105
8.5 进程管理 109
8.5.1 进程简介 109
8.5.2 进程的查看和搜索 110
8.5.3 进程的管理 110
8.5.4 守护进程 113
8.5.5 Linux定时任务crontab命令和crond服务 117
8.5.6 管理服务 120
8.6 日志管理 121
8.6.1 日志文件的相关知识 122
8.6.2 配置Linux日志 122
8.6.3 Linux日志分析 123
8.7 任务实战 126
8.7.1 任务描述 126
8.7.2 任务实施 127
第9章 Linux资源包管理 132
9.1 RPM软件包 132
9.1.1 RPM简介 132
9.1.2 RPM的安装与卸载 132
9.1.3 rpm命令的主要参数 133
9.2 Yum软件包管理器 133
9.2.1 Yum命令的用法 133
9.2.2 如何使用光盘作为本地Yum源 135
9.3 归档和压缩 136
9.3.1 归档 136
9.3.2 压缩 136
9.4 备份与恢复 137
9.4.1 备份系统 137
9.4.2 恢复系统 138
9.5 任务实战 139
9.5.1 任务描述 139
9.5.2 任务实施 139
第10章 Apache服务器配置 141
10.1 Apache简介 141
10.2 Apache的安装与运行 142
10.2.1 源码编译安装与运行 142
10.2.2 使用Yum安装与运行软件 144
10.3 Apache的配置与管理 146
10.3.1 Apache主配置文件 146
10.3.2 基本配置 148
10.3.3 身份认证 150
10.3.4 虚拟主机配置 151
10.3.5 配置支持PHP 154
10.3.6 配置SSL加密传输 155
10.3.7 日志文件详解 158
10.4 任务实战 161
10.4.1 任务描述 161
10.4.2 任务实施 162
第11章 MySQL服务器配置 166
11.1 MySQL简介 166
11.2 MySQL的安装与运行 167
11.3 MySQL的配置与优化 169
11.3.1 MySQL安装后的初始化配置 169
11.3.2 MySQL配置调优 171
11.4 MySQL客户端 173
11.4.1 图形界面客户端 173
11.4.2 命令行客户端 178
11.5 MySQL的基本使用 179
11.6 数据库的备份与恢复 184
11.6.1 备份类型 185
11.6.2 备份数据 185
11.6.3 恢复数据 186
11.6.4 备份策略 186
11.7 任务实战 187
11.7.1 任务描述 187
11.7.2 任务实施 187
第12章 FTP服务器配置 191
12.1 FTP服务器的安装 191
12.1.1 前期准备 191
12.1.2 安装vsftp 192
12.1.3 配置服务及防火墙 192
12.2 FTP服务器的配置文件 193
12.2.1 vsftpd.conf配置文件 193
12.2.2 匿名FTP的配置 194
12.2.3 FTP客户端的安装及测试 195
12.2.4 本地用户FTP配置 196
12.2.5 虚拟用户FTP配置 198
12.3 任务实战 201
12.3.1 任务描述 201
12.3.2 任务实施 201
第13章 DNS服务器配置 203
13.1 DNS简介 203
13.2 Bind的安装与运行 203
13.2.1 源码编译安装与运行Bind 203
13.2.2 使用Yum安装与运行Bind 204
13.3 Bind服务的配置 205
13.3.1 Bind主配置文件 205
13.3.2 正向解析 206
13.3.3 反向解析 207
13.4 任务实战 208
13.4.1 任务描述 208
13.4.2 任务实施 208
第14章 DHCP服务器配置 215
14.1 DHCP简介 215
14.1.1 DHCP服务器的工作过程 215
14.1.2 DHCP协议用途 216
14.2 DHCP服务器的安装与配置 217
14.2.1 源码编译安装 217
14.2.2 使用Yum安装 220
14.2.3 详细参数配置 223
14.3 任务实战 225
14.3.1 任务描述 225
14.3.2 任务实施 225
第15章 Samba服务器配置 228
15.1 Samba服务器的安装 228
15.1.1 Samba简介 228
15.1.2 Samba的安装与启动 229
15.2 Samba服务器的配置与管理 230
15.2.1 smb.conf配置文件 230
15.2.2 配置选项 230
15.2.3 用户管理 235
15.2.4 安全设置 235
15.3 Samba客户端的配置 238
15.3.1 Linux客户端 238
15.3.2 Windows客户端 239
15.4 任务实战 239
15.4.1 任务描述 239
15.4.2 任务实施 240
第16章 NFS服务器配置 243
16.1 NFS服务器的安装 243
16.1.1 NFS简介 243
16.1.2 NFS的安装和启动 244
16.2 NFS服务器的配置与管理 245
16.2.1 exports 配置文件 245
16.2.2 NFS共享目录 245
16.2.3 NFS权限控制 246
16.2.4 exports命令 246
16.3 NFS客户端的配置 247
16.3.1 客户端安装 247
16.3.2 共享目录挂载 248
16.3.3 NFS系统挂载 248
16.4 任务实战 249
16.4.1 任务描述 249
16.4.2 任务实施 249
第17章 邮件服务器配置 251
17.1 邮件服务器简介 251
17.2 邮件服务器的安装 251
17.2.1 源码编译安装与运行Postfix 251
17.2.2 使用Yum安装并运行Postfix 253
17.2.3 邮件服务器的配置和管理 254
17.3 任务实战 255
17.3.1 任务描述 255
17.3.2 任务实施 255
第18章 NAT服务器配置 266
18.1 NAT简介 266
18.2 NAT服务器的配置及应用 267
18.2.1 iptables简介 267
18.2.2 使用iptables实现NAT网络地址转换 268
18.3 任务实战 269
18.3.1 任务描述 269
18.3.2 任务实施 270
第19章 VPN服务器配置 275
19.1 VPN概述 275
19.1.1 VPN简介 275
19.1.2 功能与特点 276
19.1.3 分类及实现方式 276
19.1.4 隧道协议 277
19.2 VPN服务器的配置与管理 278
19.2.1 PPTP VPN服务器配置 278
19.2.2 OpenVPN服务器配置 280
19.3 任务实战 286
19.3.1 任务描述 286
19.3.2 任务实施 286
第20章 防火墙 291
20.1 项目背景分析 291
20.2 防火墙相关知识 292
20.2.1 防火墙介绍 292
20.2.2 防火墙的组网方式 292
20.2.3 防火墙的工作过程 294
20.3 防火墙的配置及实践 294
20.3.1 Linux防火墙——iptables 294
20.3.2 Linux防火墙——firewalld 299
20.4 任务实战 302
第21章 LAMP部署 303
21.1 LAMP简介 303
21.2 LAMP动态网站部署 304
21.2.1 Apache的安装与配置 304
21.2.2 PHP的安装与配置 306
21.2.3 数据库的安装与运行 307
21.2.4 安装LAMP管理工具——phpMyAdmin 308
21.3 任务实战 310
21.3.1 任务描述 310
21.3.2 任务实施 310
第22章 Docker容器部署 315
22.1 Docker简介 315
22.1.1 Docker的特性 315
22.1.2 Docker组件组成 316
22.1.3 容器与虚拟机的区别 316
22.2 Docker的安装与运行 317
22.2.1 安装前环境准备 317
22.2.2 安装Docker CE 318
22.2.3 设置Docker阿里云加速器 320
22.2.4 启动Docker服务并配置开机自启动 321
22.3 Docker服务管理 321
22.3.1 镜像管理 321
22.3.2 容器操作 324
22.3.3 数据卷操作 326
22.4 任务实战 327