第1章 引言 1
1.1 FreeBSD的起源 1
1.1.1 Unix的历史发展 1
1.1.2 FreeBSD的起源和发展 5
1.1.3 当前FreeBSD的版本 7
1.2 FreeBSD的功能特点 8
1.2.1 FreeBSD的特点和应用范围 9
1.2.2 使用FreeBSD的实例 11
1.2.3 关于网络服务器操作系统的调查 12
1.3 其他相关系统和组织 13
1.4 FreeBSD的相关资源 18
1.4.1 联机文档 18
1.4.2 出版物 19
1.4.3 Internet资源 19
1.4.4 商业服务和支持 22
1.5 FreeBSD5.0新特性 22
1.5.1 下一代SMP支持 22
1.5.2 内核调度实体KSE和线程实现 23
1.5.3 网络I/O和文件系统 25
2.1.1 准备硬件 27
第2章 安装与配置 27
2.1 安装之前的准备 27
2.1.2 安装介质 30
2.1.3 准备启动软盘 33
2.1.4 准备硬盘 34
2.2 安装FreeBSD 39
2.2.1 启动安装系统 39
2.2.2 系统安装程序 44
2.3 基本系统配置 55
2.3.1 设置网络 56
2.3.2 定制控制台 57
2.3.3 其他设置 59
2.3.4 其他安装问题 62
第3章 基本操作与使用 66
3.1 启动与关闭系统 66
3.1.1 Boot Manager 66
3.1.2 系统登录与退出 67
3.1.3 关闭系统 67
3.2.1 浏览目录树 69
3.2 文件与文件系统 69
3.2.2 文件的属性 71
3.2.3 文件系统 73
3.2.4 文件的连接和符号连接 74
3.2.5 文件的编辑 74
3.3 用户的shell环境 77
3.3.1 环境变量 77
3.3.2 shell的高级功能 79
3.3.3 shell脚本 82
3.4.1 输入输出重定向和管道 84
3.4 进程管理 84
3.4.2 管理后台进程 85
3.4.3 停止进程 86
3.4.4 定时执行程序 87
3.5 基本开发环境 89
3.5.1 编译器GCC 89
3.5.2 程序性能分析 90
3.5.3 可执行程序格式 91
3.5.4 使用make维护文件依赖关系 94
3.5.5 CVS代码管理简介 95
第4章 系统管理和维护 97
4.1 系统的启动过程 97
4.1.1 boot loader 97
4.1.2 系统启动脚本 101
4.2 用户管理 103
4.2.1 用户数据 103
4.2.2 增加用户 104
4.2.3 超级用户root 107
4.2.4 登录类别 109
4.2.5 系统级Shell设置 110
4.3 磁盘操作 111
4.3.1 设备文件 112
4.3.2 安装文件系统 114
4.3.3 设置fstab文件 118
4.3.4 软盘操作 120
4.4 维护文件系统 121
4.4.1 检查硬盘 121
4.4.2 调整文件系统的目录结构 121
4.4.3 建立文件系统 122
4.4.4 管理交换设备 125
4.5 调整系统设置 126
4.5.1 调整控制台设置 126
4.5.2 配置系统时间 131
4.6 日志与备份 133
4.6.1 系统日志 133
4.6.2 系统备份 136
5.1 DOD参考模型与TCP/IP 140
第5章 网络配置与使用 140
5.2 基本网络设置 149
5.2.1 配置计算机名字 150
5.2.2 配置网络界面 150
5.2.3 配置路由 155
5.2.4 配置名字解析 159
5.2.5 基本网络诊断工具 160
5.3 简单网络规划和路由 162
5.3.1 路由支持 162
5.3.2 网络划分 162
5.3.3 动态路由 164
5.3.4 代理ARP 166
5.4 基本网络应用 168
5.5 下一代IP 173
5.5.1 IPv6简介 174
5.5.2 FreeBSD对IPv6的支持 176
5.5.3 6Bone虚拟网络 181
第6章 拨号网络与广域网连接 182
6.1 串口和modem 182
6.3 使用PPP进行拨号连接 184
6.2 PPP协议 184
6.3.1 手工拨号 185
6.3.2 设置拨号连接 186
6.3.3 简单过滤处理与日志 189
6.3.4 认证方式 192
6.3.5 高级控制功能 192
6.4 使用pppd及拨号程序 194
6.4.1 外部拨号程序 194
6.4.2 pppd简单配置 195
6.5.1 接受拨号终端访问 196
6.5 拨号访问FreeBSD 196
6.5.2 PPP服务器基本设置 198
6.5.3 PPP服务器高级配置 200
6.6 其他广域网连接方式 204
第7章 系统定制 206
7.1 安装应用软件 206
7.1.1 应用软件的类别 207
7.1.2 Packages Collection 208
7.2 编译应用软件 210
7.2.1 Ports Collection 211
7.2.2 手工编译安装程序 215
7.3 定制FreeBSD内核 215
7.3.1 为编译内核准备源代码 216
7.3.2 编译安装新内核 216
7.3.3 内核配置选项 219
7.4 定制系统 231
7.4.1 内核模块 231
7.4.2 定制全部系统 232
7.4.3 升级系统 235
7.4.4 安装程序 237
第8章 系统监视与优化 238
8.1 了解系统状态 238
8.1.1 查看系统状态 238
8.1.2 proc文件系统 244
8.1.3 使用sysctl 245
8.2 简单网络管理 251
8.2.1 SNMP协议 251
8.2.2 FreeBSD的SNMP支持 255
8.3.1 获取基本数据 257
8.3 系统监视 257
8.3.2 图形工具RRDtools 258
8.3.3 MRTG 259
8.4 内核优化 259
8.4.1 基本优化方法 259
8.4.2 调整内核参数 261
8.4.3 性能相关的内核参数 265
8.4.4 磁盘和文件系统优化 267
8.5 RAID与卷管理 281
8.5.1 RAID简介 281
8.5.2 使用ccd的简单RAID支持 285
8.5.3 Vinum的简单配置 287
8.5.4 Vinum高级配置 291
第9章 桌面系统硬件支持 300
9.1 常用硬件 300
9.1.1 高级电源管理 300
9.1.2 声卡设备 303
9.1.3 PCMICA和USB支持 308
9.2.1 X Window与XFree86 312
9.2 GUI界面 312
9.2.2 安装XFree86 3.3.x 313
9.2.3 安装和配置XFree864 324
9.3 配置文件XF86Config 330
9.3.1 文件搜寻路径 331
9.3.2 可加载模块 331
9.3.3 X服务器选项 332
9.3.4 键盘设置 333
9.3.5 鼠标设置 333
9.3.6 显示器设置 334
9.3.7 显示卡设置 335
9.3.8 屏幕设置 336
第10章 配置桌面环境 338
10.1 桌面环境介绍 338
10.1.1 桌面环境的额外内涵 338
10.1.2 桌面环境的不同部分 339
10.2 X Window基础 340
10.2.1 X Window的基本概念 340
10.2.2 进入X Window 348
10.2.3 定制X Window的基本方法 354
10.2.4 桌面环境简介 359
10.3 中文环境 359
10.3.1 中文化概述 360
10.3.2 设置中文环境 363
10.3.3 传统中文化技术 367
10.4 打印配置 368
10.4.1 系统结构 368
10.4.2 配置打印机 369
10.4.3 使用和控制打印机 375
10.5.1 系统仿真功能 376
10.5 其他系统应用程序 376
10.5.2 运行Linux应用程序 378
第11章 高级系统管理 382
11.1 NIS服务 382
11.1.1 NIS系统结构 382
11.1.2 规划和实施NIS 383
11.1.3 NIS netgroup 387
11.2 网络文件系统NFS 388
11.2.1 NFS服务器 388
11.2.2 NFS客户 390
11.2.3 自动安装守护进程AMD 391
11.3 目录与LDAP 394
11.3.1 目录简介 394
11.3.2 安装和配置OpenLDAP 397
11.3.3 使用OpenLDAP 401
11.3.4 实用LDAP选项 405
11.4 认证与计费 410
11.4.1 Radius简介 410
11.4.2 安装和实现Radius 411
11.4.3 实际Radius应用问题 416
11.5 应用PAM 417
11.5.1 PAM简介 418
11.5.2 支持Radius与LDAP 419
第12章 常用网络服务 422
12.1 基本网络服务 422
12.2 DNS服务 427
12.2.1 DNS的体系结构 427
12.2.2 配置DNS缓冲 428
12.2.3 定义名字服务 432
12.3.1 邮件服务基础 436
12.3 电子邮件服务 436
12.3.2 邮件服务的快速设置 439
12.3.3 控制台邮件处理 441
12.3.4 邮件系统的维护和管理 442
12.3.5 用户邮件管理 446
12.3.6 垃圾邮件的防范简介 449
第13章 内部网络服务 451
13.1 Windows对基本协议的支持 451
13.2 NetBIOS与SMB/CIFS协议 452
13.2.1 NetBIOS名字解析 453
13.2.2 SMB/CIFS协议 455
13.3 配置和使用Samba 457
13.3.1 基本配置与使用 458
13.3.2 samba配置选项介绍 461
13.3.3 高级设置选项 469
13.3.4 网络规划与设置 475
13.4 访问SMB系统资源 477
13.4.1 命令行方式 477
13.4.2 文件系统方式 479
13.5 DHCP支持 481
13.5.1 DHCP的工作过程 482
13.5.2 设置和使用DHCP 483
13.5.3 提供备份的DHCP设置 487
第14章 系统安全 489
14.1 系统及网络安全概念 489
14.1.1 认证与加密 490
14.1.2 当前的安全问题 492
14.1.3 防火墙技术 494
14.2 系统安全设置 497
14.2.1 用户登录控制 498
14.2.2 安全认证方式 500
14.2.3 系统资源控制 507
14.2.4 网络服务与应用程序安全 511
14.3 受限安全网络服务 516
14.3.1 受限服务的设置 516
14.3.2 虚拟服务器 518
14.4 其他安全工具 520
14.4.1 安全检查工具 520
14.4.2 网络数据侦听 521
第15章 防火墙与VPN 526
15.1 代理服务 526
15.1.1 Web代理 526
15.1.2 Email代理 530
15.1.3 其他代理系统 535
15.2 包过滤与地址转换 536
15.2.1 设置和使用ipfw/natd 536
15.2.2 ipfw的高级设置 546
15.2.3 设置和使用ipfilter 549
15.3 构建防火墙 554
15.3.1 构建原则 555
15.3.2 防火墙的特殊类型 558
15.3.3 系统定制 560
15.4 SSH加密连接 562
15.4.1 使用和设置SSH 562
15.4.2 SSH加密通道 566
15.5 安全传输层协议SSL 569
15.5.1 证书及CA体系 569
15.5.2 SSL基本环境 572
15.6.1 IPSec协议族 577
15.6 IP安全体系 577
15.6.2 FreeBSD的IPSec支持 581
15.7 构建VPN 587
15.7.1 VPN基本概念 588
15.7.2 VPN实现 589
第16章 设置WWW服务 591
16.1 基本概念 591
16.1.1 超文本传输协议HTTP 591
16.1.2 数据处理方式 593
16.2 安装和设置Apache 595
16.2.1 基本安装 596
16.2.2 配置Apache服务器 597
16.3 服务器的安全控制 614
16.3.1 对IP地址和域名的控制 615
16.3.2 基于用户的访问控制 616
16.3.3 其他认证方式 617
16.3.4 安全连接方式SSL 619
16.3.5 CGI和SSI的安全性 620
16.4 调整服务器性能 620
16.4.1 单服务器性能调整 621
16.4.2 提升静态网页服务能力的综合方式 624
16.5 集群及负载均衡技术 625
16.5.1 基于DNS的负载均衡 626
16.5.2 反向代理负载均衡 627
16.5.3 基于NAT的负载均衡技术 628
附录A 补充材料 630
附录B 参考资料 643
附录C 术语表 644
附录D 光盘介绍 650