前言 1
第一部分 安装与基本配置 5
第一章 开始使用 7
1.1 选择平台 7
1.2 检查硬件需求 7
1.3 准备安装Red Hat Linux 9
1.3.1 在Windows 9x/2000下创建引导盘 10
1.3.2 在Linux下创建引导盘 10
1.4 安装Red Hat Linux 11
1.4.1 选择语种、键盘和安装途径 11
1.4.2 选择安装还是升级 12
1.4.3 选择安装级别 12
1.4.4 磁盘分区 13
1.4.5 激活交换分区 17
1.4.6 格式化分区 17
1.4.7 选择要安装的软件 17
1.4.9 配置TCP/IP网络 18
1.4.8 选择鼠标 18
1.4.10 配置时钟 19
1.4.11 配置要执行的服务或监控程序 19
1.4.12 配置打印机 19
1.4.13 设置root口令 20
1.4.14 创建定制引导盘 20
1.4.15 选择LILO的安装选项 20
1.5 第一次运行Red Hat Linux 21
2.1 配置第一个进程:init 23
第二章 引导和关闭系统 23
2.1.1 /etc/rc.d/rc.sysinit脚本 27
2.1.2 /etc/rc.d/init.d目录 28
2.1.3 /etc/rc.d/rc脚本 28
2.1.4 /etc/rc.d/rc0.d到rc6.d目录 30
2.1.5 /etc/rc.d/rc.local脚本 32
2.1.6 /etc/rc.d/rc.serial脚本 32
2.2 引导系统 32
2.3.1 取消关闭 33
2.3.2 重新启动服务器 33
2.3 关闭系统 33
2.3.3 使用Ctrl+Alt+Delete重新启动 34
2.3.4 电源失效时自动关闭系统 35
2.4 管理init文件 35
2.4.1 使用chkconfig管理运行级别 35
2.4.2 使用ntsysv管理运行级别 37
2.4.3 使用linuxconf管理运行级别 37
2.4.4 创建特定级别的新服务 37
3.1 理解文件/目录许可 41
第三章 文件许可 41
3.1.1 使用chown修改文件/目录的所有权 42
3.1.2 使用chgrp命令修改文件/目录的组所有权 43
3.1.3 用八进制数设置文件/目录许可 43
3.1.4 使用访问字符串设置文件/目录许可 45
3.1.5 使用chmod修改文件/目录的许可模式 46
3.1.6 关于目录许可的特殊说明 47
3.2 管理链接许可 47
3.2.1 修改硬链接的许可或所有权 47
3.2.2 修改软链接的许可或所有权 48
3.3.1 设置用户配置文件许可 49
3.3.2 为用户设置默认文件许可 49
3.3 为多用户服务器建立许可策略 49
3.3.3 设置可执行文件的许可 50
3.3.4 设置FTP的默认文件许可 51
3.4.2 进入目录 52
3.4.4 查看文件或目录的访问统计 52
3.4.3 确定文件类型 52
3.4.1 查看文件和目录 52
3.4 使用常见的文件/目录工具 52
3.4.5 拷贝文件和目录 53
3.4.6 移动文件和目录 53
3.4.7 删除文件和目录 53
3.4.8 查找文件 54
3.4.9 替换默认文件许可掩码 54
3.5 使用ext2文件系统专有的许可 55
第四章 使用Linuxconf 57
4.1 Linuxconf简介 57
4.2 安装Linuxconf 58
4.3 配置Linuxconf 59
4.3.1 为Linuxconf设置基于Web的远程访问 62
4.3.2 配置Linuxconf模块 64
4.3.3 定义用户特权 65
4.3.4 使用多个系统配置档案 68
4.3.5 系统启动时使用Linuxconf 70
第二部分 高级配置 73
5.1 建立多个超级用户帐号 75
第五章 用户管理 75
5.2 普通用户分配特权 77
5.3 用命令行工具管理用户 80
5.3.1 新建用户帐号 80
5.3.2 建立新组 81
5.3.3 修改现有用户帐号 82
5.3.4 修改现有组设置 84
5.3.5 删除或禁止用户帐号 84
5.3.6 创建默认用户设置 85
5.4.1 加入新用户帐号 88
5.4 使用linuxconf管理用户 88
5.4.3 删除或禁止用户帐号 89
5.4.4 新建、修改以及删除组 89
5.4.2 修改现有用户帐号 89
5.5 使用用户磁盘配额 90
5.5.1 安装磁盘配额软件 90
5.5.2 配置系统的磁盘配额支持 90
5.5.3 为用户分配磁盘配额 91
5.5.4 监视磁盘的使用情况 93
6.1.1 使用ps查看进程状态 95
第六章 进程管理 95
6.1 控制和监视进程 95
6.1.2 向正在运行的进程发送信号 98
6.1.3 控制进程优先级 104
6.2 监视进程和系统负荷 105
6.2.1 使用top 105
6.2.2 使用vmstat 106
6.3.1 配置syslog 107
6.3 记录进程 107
6.2.3 使用uptime 107
6.3.2 使用tail监视日志 108
6.4 预先安排进程的执行 109
6.4.1 使用at 109
6.4.2 使用cron 110
第七章 网络管理 113
7.1 IP网络类型 113
7.1.1 A类网络 113
7.1.2 B类网络 114
7.1.3 C类网络 115
7.2 配置网络接口 116
7.2.1 配置新的网络接口 117
7.2.2 为一个网络接口建立多个IP地址别名 120
7.2.3 使用netcfg配置网络接口卡 122
7.3 使用默认网关 125
7.4 将网络划分为子网 126
7.4.1 网关配置 130
7.4.2 主机配置 131
8.1 配置DNS客户(解析器) 133
第八章 DNS服务 133
8.2 设置DNS服务器 135
8.2.1 配置主DNS服务器 135
8.2.2 配置次DNS服务器 136
8.2.3 配置反向DNS服务器 137
8.2.4 配置cache-only次DNS服务器 139
8.2.5 控制DNS服务器 139
8.3 测试DNS服务器 140
8.4 管理虚拟域的DNS 141
8.5 使DNS服务器平衡负荷 150
第九章 E-mail服务 151
9.1 为SMTP服务器设置DNS 151
9.2 设置SMTP邮件服务器 152
9.2.1 安装sendmail 152
9.2.2 启动和停止sendmail 153
9.2.3 理解和配置/etc/sendmail.cf 155
9.2.4 配置/etc/mail/?文件 162
9.3.1 测试sendmail的地址重写规则 170
9.3 测试sendmail配置 170
9.3.2 测试/etc/mail/?数据库文件 172
9.3.3 使用sendmail详细查看SMTP事务处理 172
9.3.4 使用sendmail除错标志 173
9.3.5 使用配置测试文件 174
9.4 保护sendmail 174
9.4.1 保护配置文件 174
9.4.2 确保操作更严格以及保密性 176
9.5.2 将垃圾制造者送入黑洞 177
9.5.1 对抗第三方邮件中继攻击 177
9.5 采取反垃圾措施 177
9.6 设置POP邮件服务 179
9.7 配置SMTP/POP邮件客户 180
第十章 FTP服务 181
10.1 使用wu-ftpd:默认的FTP服务器 181
10.1.1 安装wu-ftod服务程序 181
10.1.2 从Red-Hat CD-ROM安装 182
10.1.3 从Red Hat FTP服务器安装 182
10.1.4 配置FTP服务器 183
10.1.5 建立匿名FTP站点 198
10.1.6 增强匿名FTP的安全性 200
10.1.7 建立guest FTP帐户 201
10.1.8 建立虚拟FTP站点 203
10.2 使用商业FTP服务器 207
10.3 使用一般文件传输协议(TFTP)服务器 207
11.1 安装Samba 209
11.2 配置Samba 209
第十一章 用Samba设置共享文件和打印机 209
11.2.1 设置[global]参数 218
11.2.2 设置[homes]参数 222
11.2.3 设置[printers]参数 222
11.3 通过网络设置Samba 223
11.3.1 测试/etc/smb.conf配置 224
11.3.2 启动、停止和重新启动Samba服务 224
11.4 在Windows上使用Linux文件服务器 225
11.5 在Linux上使用Windows文件服务器 225
11.5.1 在Linux和Windows间共享打印机 226
11.5.2 使用交互式Samba客户程序 229
11.6 保护Samba服务器 230
11.6.1 用Windows NT服务器做密码服务器 231
11.6.2 在Samba服务器上加密密码 231
第十二章 使用Apache提供Web服务 233
12.1 从Internet获得Apache 233
12.2 建立定制的Apache服务器 234
12.2.1 使用APACI配置Apache源代码 234
12.2.3 编译并安装Apache的支持工具 239
12.2.2 编译并安装Apache 239
12.2.4 利用可选或第三方的模块定制Apache 241
12.3 启动并运行Apache 245
12.3.1 以standalone或inetd服务器的形式运行Apache 246
12.3.2 配置公共指令 248
12.3.3 配置standalone服务器的指令 257
12.3.4 控制Apache服务器 259
12.3.5 测试Apache服务器 261
12.4.1 配置Apache的CGI脚本 262
12.4 管理Apache服务器 262
12.4.2 配置Apache的服务器端包含 266
12.4.3 宿主虚拟Web站点 275
12.4.4 将Apache作为代理服务器使用 278
12.4.5 验证Web用户 286
12.4.6 监视服务器状态 293
12.4.7 记录点击和错误 294
12.4.8 增强Web服务器的安全性 300
12.4.9 为安全事务使用SSL 308
13.2 配置NFS服务器 317
第十三章 使用NFS文件服务器 317
13.1 安装NFS服务器 317
13.2.1 为导出目录赋予只读访问许可 319
13.2.2 赋予对导出目录的读写访问许可 319
13.2.3 禁止对特定目录的访问 319
13.2.4 在NFS服务器和客户之间映射用户 320
13.3 安装NFS客户 321
13.4 配置NFS客户 322
13.5 保护NFS服务器 323
13.6 利用rdist分发文件 324
第十四章 配置X Window 329
14.1 安装XFree86 329
14.2 配置XFree86 329
14.2.1 使用Xconfigurator建立XF86Config文件 330
14.2.2 理解XF86Config文件 331
14.3 使用X Window 339
14.3.1 配置.xinitrc 340
14.3.3 定制客户应用程序的感观 342
14.3.2 定制窗口管理器的感观 342
14.3.4 使用xdm(X Display Manager) 343
14.4 与Windows 9x/2000一起使用XFree86 344
14.4.1 获取Micro X-Win32 344
第三部分 疑难解答 347
第十五章 安全性 349
15.1 保护用户访问 349
15.1.1 限制物理访问 349
15.1.2 限制普通用户访问 350
15.1.3 限制超级用户访问 351
15.1.4 在紧急情况或受到攻击时限制所有的访问 352
15.2 使用Shadow口令 352
15.2.1 安装Shadow工具包 353
15.2.2 将/etc/passwd和/etc/group转换为Shadow格式 353
15.2.3 管理用户帐号 354
15.2.4 使用可插入验证模块(PAM) 354
15.2.5 使用PAM配置文件 356
15.2.6 使用PAM调整验证过程 357
15.3 保护服务 359
15.3.1 在OS安装过程中删除不必要的服务 360
15.3.2 保护由inetd运行的服务 361
15.4 保护文件和文件系统 371
15.4.1 以只读方式挂装文件系统 371
15.4.2 利用ext2文件系统的优点 371
15.4.3 使用Tripwire确保文件的一致性 372
15.5 自我检测安全漏洞 377
15.5.1 破解自己的口令 378
15.5.2 使用COPS 380
15.6 备份和追踪 382
15.7 获取最新的安全性新闻 383
15.7.1 CERT 383
15.7.2 BUGTRAQ@NETSCAPE.ORG 383
第十六章 网络安全性 385
16.1 设计安全网络 385
16.1.1 使用私有IP地址 385
16.1.2 IP地址伪装 386
16.2 什么是防火墙 388
16.2.1 数据包过滤器 389
16.2.2 使用基本的数据包过滤防火墙 389
16.2.3 使用应用程序级的防火墙 391
16.3 使用Squid代理服务器 392
16.3.1 获取并安装Squid 392
16.3.2 第一次使用Squid 392
16.3.3 调整Squid满足自己的需求 393
16.4 从SATAN获得帮助 396
16.4.2 使用SATAN 397
16.4.1 安装SATAN 397
17.1 需要什么样的内核 401
第十七章 定制内核 401
17.2 准备内核升级 403
17.3 安装新内核 404
17.3.1 建立初始化ramdisk 404
17.3.2 配置LILO 404
17.3.3 用新内核启动 405
17.4 定制内核 405
17.4.2 配置内核传统方法 406
17.4.1 安装Linux内核 406
17.4.3 用make menuconfig配置内核 420
17.4.4 用make xconfig配置内核 421
17.4.5 编译、安装、启动新内核 421
17.5 内核补丁 422
17.6 使用kernelcfg 423
附录A 常用命令 425
附录B Linux资源 489