第1章 Linux系统简介 1
第一篇 Linux入门 1
1.1 Linux简介 2
1.2 Linux的特点 2
1.3 Linux的版本类别 4
1.4 Red Hat Linux发展趋势 4
1.5 Red Hat Linux 9安装程序的获取途径 5
第2章 系统安装与配置 7
2.1 硬件需求 8
2.2 安装方式及安装类型 9
2.2.1 安装方式选择 9
2.3.1 安装程序启动 10
2.2.2 安装类型选择 10
2.3 系统安装过程中的重要步骤 10
2.3.2 开始安装Red Hat Linux 9 11
2.3.3 安装类型 13
2.3.4 磁盘分区设置 13
2.3.5 引导装载程序配置 14
2.3.6 网络配置 15
2.3.7 选择软件包 16
2.3.8 安装软件包 17
2.3.9 视频卡的配置 18
2.3.10 X配置——显示器的配置和定制 19
2.4 系统升级 20
2.3.11 安装完成 20
2.5 系统删除 22
第二篇 系统配置 25
第3章 启动系统 25
3.1 开启系统 26
3.2 登录、注销和关机 28
3.2.1 文本模式下登录系统的login命令 29
3.2.2 用logout命令注销系统 29
3.2.3 图形化注销 30
3.2.4 用shutdown命令关机或进入单人维护模式 30
3.2.5 用reboot命令重新启动计算机 32
3.2.6 用rlogin命令远程登录 32
3.3 文本模式和图形化模式的切换 33
第4章 系统硬件配置 34
4.1 X WindoW System配置 35
4.1.1 文本配置方法 35
4.1.2 /etc/X11/XF86Config文件说明 36
4.1.3 XF86config各个区段说明 39
4.1.4 图形化配置方法 41
4.2 配置声卡 43
4.3 配置网卡 44
4.3.1 图形化配置方式 44
4.3.2 手工配置网卡 47
4.3.3 安装双网卡 48
4.4.1 打印机的配置 49
4.4 打印机的配置和管理 49
4.4.2 打印机的管理 52
第三篇 系统应用 55
第5章 GNOME桌面管理 55
5.1 桌面简介 56
5.1.1 通用桌面环境(CDE) 56
5.1.2 K桌面环境(KDE) 56
5.1.3 GNU网络对象模型环境(GNOME) 56
5.2 面板和桌面 57
5.3 日期和时间设置 59
5.4 挂载软盘、光盘和U盘 60
5.4.1 挂载软盘 60
5.4.3 挂载U盘 61
5.4.2 挂载光盘 61
5.5 控制中心 62
5.6 添加删除应用程序 63
5.7 KDE简介 64
第6章 文件系统管理 66
6.1 文件管理器 67
6.2 文件系统 69
6.2.1 文件系统的类型 69
6.2.2 系统目录简介 71
6.2.3 文件系统的结构 72
6.3 文件及目录访问权限的设置 73
6.3.1 一般权限 74
6.3.3 使用文件管理器来改变文/目录的权限 75
6.3.2 特殊权限 75
6.3.4 使用chmod和数字改变文件/目录的访问特权 77
6.3.5 使用命令chown改变文件/目录的所有权 78
第7章 Linux常用命令 80
7.1 终端窗口简介 81
7.2 文件目录操作命令 82
7.3 信息显示命令 88
7.4 备份压缩的命令 91
7.4.1 zip、gzip和gunzip 91
7.4.2 tar 92
7.5 系统管理命令 94
7.6 DOS和Linux常用命令对比 98
第8章 系统帐号管理 99
第四篇 系统管理 99
8.1 root帐号管理 100
8.2 管理普通帐号 102
8.2.1 创建用户帐号 103
8.2.2 停用帐号 105
8.2.3 删除帐号 105
8.3 管理组群 106
8.4 用户管理器 106
8.4.1 增加新的用户帐号 107
8.4.2 修改已存在的用户帐号 107
8.4.3 删除或者禁止已存在的用户帐号 109
8.4.4 添加、修改以及删除组 109
第9章 存储及磁盘空间管理 110
9.1 数据存储简介 111
9.1.1 数据存储的方式 111
9.1.2 存储发展趋势 111
9.2 数据管理 112
9.2.1 高可用集群 112
9.2.2 备份 112
9.2.3 复制 113
9.2.4 容灾 113
9.2.5 迁移 113
9.2.6 内容管理 113
9.3 RAID 114
9.3.1 RAID的优点 114
9.3.2 RAID的级别 115
9.4 Linux逻辑卷管理 116
9.4.1 Linux逻辑卷简介 116
9.4.2 逻辑卷基本原理 117
9.4.3 逻辑卷使用举例 117
9.4.4 实际空间问题及解决方法 119
9.5 Linux磁盘空间管理的命令 120
9.5.1 df命令 120
9.5.2 du命令 121
9.6 磁盘挂载 122
第10章 系统安全管理 123
10.1 查看用户行为 124
10.1.2 查看曾经登录系统的用户 125
10.1.1 查看系统当前的在线用户 125
10.2 系统性能监控 126
10.2.1 使用top命令 126
10.2.2 使用系统监视器 127
10.3 系统进程管理 129
10.3.1 捕获进程状态 129
10.3.2 删除进程 131
10.3.3 控制进程优先级 132
10.4 系统日志管理 133
10.4.1 日志文件介绍 134
10.4.2 图形化管理系统日志 137
10.5.1 运行、重启和停止某个服务 138
10.5 系统服务管理 138
10.5.2 使某个服务在系统启动时自动运行或停止 139
第11章 基本网络管理 140
11.1 Linux常用网络命令 141
11.1.1 ping命令 141
11.1.2 netstat命令 141
11.1.3 ifconfig命令 143
11.2 接入Internet 145
11.2.1 通过局域网直接接入Internet 146
11.2.2 建立xDSL连接 148
11.3 使用Mozilla浏览器 148
11.4 邮件客户端软件设置 150
11.4.1 Evolution的初始设置 150
11.4.2 使用Evolution 152
第12章 DNS服务器配置 155
第五篇 服务器配置 155
12.1 DNS简介 156
12.1.1 DNS特征及组成 156
12.1.2 DNS的层次结构与域名分配 157
12.1.3 DNS查询过程 158
12.1.4 DNS类别 159
12.2 BIND的安装与启动 160
12.2.1 BIND的安装 160
12.2.3 BIND常用测试命令 161
12.3 配置主域名服务器 161
12.2.2 DNS的启动 161
12.3.1 配置主文件/etc/named.conf 162
12.3.2 配置正向解析文件/var/named/localhost.zone 163
12.3.3 配置反向解析文件/var/named/named.local 163
12.4 测试主DNS服务器配置情况 164
12.4.1 用ping命令测试 164
12.4.2 用nslookup命令测试 165
12.5 配置辅助域名服务器 168
12.6 配置区域委派及子域DNS服务器 169
12.7 配置域名服务器的负载均衡 173
12.8 配置直接域名解析 174
12.9 配置DNS泛域名解析功能 175
12.10.1 配置正向主区块 176
12.10 图形化配置DNS服务器 176
12.10.2 配置逆向主区块 178
12.10.3 重新启动DNS服务器 180
第13章 DHCP服务器配置 181
13.1 DHCP简介 182
13.1.1 何时使用DHCP服务器 182
13.1.2 DHCP地址租约方式 183
13.2 安装启动DHCP服务 183
13.3 配置DHCP服务器 184
13.3.1 DHCP配置文件详解 184
13.3.2 配置DHCP服务器 185
13.4.1 配置子网A中的DHCP服务器 187
13.4 配置DHCP中继代理 187
13.4.2 配置DHCP中继代理 188
13.5 配置DHCP客户端 189
13.5.1 Windows 2000下的DHCP客户端配置 189
13.5.2 Linux下的DHCP客户端配置 191
第14章 Samba服务器配置 193
14.1 Samba简介 194
14.2 配置Samba共享服务 194
14.2.1 配置share级共享 195
14.2.2 配置user级共享 198
14.2.3 配置server级服务器 200
14.2.4 配置domain级服务器 201
14.3 同机Linux分区和Windows分区资源共享设置 202
14.3.1 从Linux分区访问Windows分区 202
14.4 图形化配置Samba服务器 203
14.3.2 从Windows分区访问Linux分区 203
14.5 Samba相关命令及程序 207
14.5.1 smbd 208
14.5.2 nmbd 208
14.5.3 smbclient(查看资源共享情况) 208
14.5.4 smbstatus(列出共享资源使用情况) 209
14.5.5 testparm 209
14.5.6 smbmount(挂载和卸除共享的目录) 209
14.5.7 testprns(检查打印机配置文件的正确性) 209
14.6 配置Samba打印共享 210
第15章 代理服务器配置 212
15.1 Squid简介 213
15.2 Squid.conf文件详解 214
15.3 配置Squid Server 218
15.3.1 Squid Server配置实例 218
15.3.2 建立置换目录 218
15.3.3 开启Squid Server 219
15.4 代理服务器客户端配置 219
15.4.1 在IE浏览器中设置 220
15.4.2 在Mozilla中设置 220
15.5 Squid Server的安全访问设置 221
15.5.1 限制内网某些IP通过代理服务器上网 222
15.5.2 限制内网某些MAC地址使用代理服务器 223
15.5.3 限制内网用户访问某些网站 223
15.5.4 限制内网用户下载某些格式的文件 224
15.5.6 控制内网用户使用代理服务器的并发连接数 225
15.5.7 禁止内网使用QQ聊天 225
15.5.5 限制内网用户使用代理服务器的时间 225
15.6 Squid透明代理设置 226
15.6.1 /etc/squid/squid.conf文件相关配置 226
15.6.2 设置iptables 227
15.7 提高代理服务器的性能 227
15.8 设置代理服务器自动取回数据 228
15.8.1 高速取回网站中的数据 229
15.8.2 定时从网站中取回数据 230
15.9 Squid Server日志管理 230
第16章 WWW服务器配置 232
16.2 Apache的安装与启动 233
16.1 Apache简介 233
16.3 WWW服务器相关配置 235
16.3.1 配置Web目录 235
16.3.2 设置路径别名 236
16.3.3 访问控制设置 237
16.3.4 用户认证设置 239
16.4 用户的个人站点配置和管理 242
16.5 虚拟主机的配置与使用 244
16.5.1 基于IP地址的虚拟主机配置 244
16.5.2 基于名称的虚拟主机配置 248
16.5.3 动态虚拟主机配置 250
16.6 Apache日志管理 252
16.6.1 日志滚动的实现 254
16.6.2 日志统计分析工具webalizer 256
第17章 FTP服务器配置 259
17.1 FTP概述 260
17.2 安装与启动vsftpd 261
17.3 vsftpd.conf文件说明 261
17.4 匿名帐号服务器配置 265
17.4.1 简单的匿名帐号服务器配置 265
17.4.2 配置匿名帐号上传功能 269
17.4.3 设置连接服务器的最大并发连接数和用户的最大线程数 272
17.4.4 设置匿名用户的最大传输速率 272
17.4.5 禁止某些IP段的匿名用户访问FTP服务器 272
17.4.6 只允许匿名用户访问 273
17.4.7 设置用ASCII方式传送数据 274
17.4.8 设置各种欢迎信息 275
17.4.9 设置数据传输中断的时间间隔 276
17.5 真实帐号服务器配置 277
17.5.1 限制用户列表内的用户访问FTP服务器 277
17.5.2 更改FTP服务器默认的端口号 279
17.5.3 限制用户访问特定的目录 280
17.6 客户端访问FTP服务器方式 282
17.6.1 通过Windows客户端访问FTP服务器 282
17.6.2 通过Linux客户端访问FTP服务器 286
第18章 VPN服务器配置 290
18.2.1 VPDN(Virtual Private Dial Network) 291
18.2 VPN的分类 291
18.1 VPN简介 291
18.2.2 Intranet VPN 292
18.2.3 Extranet VPN 292
18.3 VPN的优点 292
18.4 VPN的隧道协议 293
18.4.1 PPTP/L2TP 293
18.4.2 IPSec 294
18.4.3 SOCKS v5 295
18.5 VPN安装与启动 295
18.5.1 安装PPP 295
18.6.1 启动Linux内核的路由功能 296
18.6 配置VPN服务器 296
18.5.4 启动VPN服务 296
18.5.3 相关配置文件 296
18.5.2 安装pptpd 296
18.6.2 配置/etc/pptpd.conf文件 297
18.6.3 配置/etc/ppp/chap-secrets文件 297
18.7 配置VPN客户端 297
18.7.1 客户端基本配置 297
18.7.2 连接VPN服务器 299
第六篇 Linux编程 301
第19章 shell编程 301
19.1 shell简介 302
19.2 bash基本命令 303
19.3 shell变量类型 304
19.3.2 环境变量 305
19.3.1 预定义变量 305
19.3.3 用户变量 306
19.3.4 参数变量 307
19.4 控制程序执行流程的命令 307
19.4.1 字符串比较 308
19.4.2 数值的比较 308
19.4.3 逻辑操作 308
19.4.4 文件操作 308
19.5 shell结构控制语句类型 309
19.5.1 if条件语句 309
19.5.2 for循环 309
19.5.4 case条件选择 310
19.5.3 while和until循环 310
19.5.5 无条件控制语句break和continue 311
19.6 函数 311
19.7 运行shell程序的方法 312
19.8 信号或中断处理 312
19.9 bash shell程序的调试 313
第20章 Linux下的编程 315
20.1 GCC编译器 316
20.1.1 GNU C编译器简介 316
20.1.2 GCC约定规则 316
20.1.3 GCC的基本用法 317
20.1.4 GCC的基本选项 317
20.1.5 使用GCC编译程序实例 319
20.1.6 GCC的错误类型及对策 320
20.2 GNU make 321
20.2.1 GNU make简介 321
20.2.2 makefile基本结构 323
20.2.3 makefile变量 324
20.2.4 运行make 324
20.3 GDB 325
20.3.1 GDB简介 325
20.3.2 GDB基本命令 325
20.3.3 启动GDB 326
20.3.4 GDB调试程序 327
20.3.5 GDB调试实例 329
第21章 Linux防火墙配置 333
第七篇 Linux高级应用 333
21.1 Iptables简介 334
21.2 Iptables和Ipchains语法比较 335
21.3 Iptables语法规则 336
21.3.1 表(table) 336
21.3.2 命令(command) 337
21.3.3 匹配(match) 338
21.3.4 目标(target) 338
21.3.5 保存规则 339
21.3.6 Iptables使用实例 340
21.4 配置Iptables包过滤防火墙 343
第22章 Linux路由器配置 347
22.2 路由选择原理 348
22.1 路由器概述 348
22.3 路由协议 349
22.3.1 RIP路由协议 349
22.3.2 OSPF路由协议 349
22.4 Linux软路由器配置要求 350
22.5 配置Linux系统充当静态路由器 350
22.6 使用Zebra配置Linux动态路由器 353
22.6.1 Zebra相关配置文件 354
22.6.2 Zebra的基本配置 356
22.6.3 配置基于RIP协议的路由器 357
22.6.4 配置基于OSPF协议的路由器 363
第23章 VNC和SSH的配置 367
23.1 VNC简介 368
23.2 Linux下配置VNC服务器 369
23.3 配置Linux客户端访问VNC服务器 369
23.4 配置Windows客户端访问VNC服务器 370
23.5 通过浏览器访问VNC服务器 372
23.6 SSH服务器的配置 372
23.6.1 Openssh简介 372
23.6.2 配置SSH服务器 373
23.6.3 使用Openssh远程管理Linux服务器 376
23.7 Windows客户端常用的远程管理工具 377
23.7.1 使用PuTTY远程管理Linux系统 377
23.7.2 使用SecureCRT远程管理Linux系统 378
第24章 网络安全基本知识 381
第八篇 系统及网络安全 381
24.1 网络安全的内容 382
24.1.1 网络是否安全 383
24.1.2 操作系统是否安全 383
24.1.3 用户是否安全 384
24.1.4 应用程序是否安全 384
24.1.5 数据是否安全 384
24.2 网络安全的特征 385
24.3 网络安全的策略 385
24.3.1 物理安全策略 385
24.3.2 访问控制策略 386
24.3.3 防火墙控制策略 388
24.3.4 信息加密策略 389
24.4.2 采取的安全策略不当 390
24.4.3 管理员缺乏安全意识 390
24.3.5 网络安全管理策略 390
24.4.1 系统软件自身安全性差 390
24.4 网络安全的薄弱环节 390
24.5 Linux网络安全级别配置 391
第25章 Linux系统安全配置 394
25.1 GRUB与LILO安全设置 395
25.2 帐号安全设置 396
25.3 重要系统文件的安全设置 399
25.4 系统开启服务的安全 404
25.5 连接服务器时的安全事项 409
25.6 系统端口安全 409
25.7 日志文件的安全 413