第1章 网络安全技术概述 1
1.1 防火墙技术 1
1.2 网络安全的本质与基本需求 2
1.3 网络分层安全体系结构 3
1.4 网络安全管理策略 4
1.5 网络安全的基本措施 4
第2章 黑客常用攻击手段 6
2.1 黑客历史 6
2.2 计算机病毒 7
2.2.1 概述 7
2.2.2 作用原理 10
2.2.3 宏病毒简介 10
2.2.4 CIH病毒简介 14
2.3 黑客工具 15
2.3.1 概述 15
2.3.2 密码破解 16
2.3.3 拒绝服务攻击 18
2.3.4 欺骗攻击 22
2.3.5 网络监听 26
2.3.6 扫描器 37
2.3.7 特洛伊木马 42
第3章 Linux防火墙预备知识 50
3.1 Linux 2.4内核的新特性 50
3.1.1 总体特色 50
3.1.2 新特性介绍 51
3.2 编译和升级内核 54
3.2.1 如何下载Linux 54
3.2.2 安装和升级Linux内核 54
3.3 安装和配置防火墙套件 61
3.3.1 下载netfilter和iptables 61
3.3.2 安装netfilter 61
3.3.3 安装iptables 63
3.3.4 配置网卡和网络地址 63
3.4 Linux系统结构 66
3.4.1 Linux内核的系统组成 66
3.4.2 系统数据结构 67
3.4.3 Linux具体结构 67
3.4.4 Linux内核源代码 68
3.4.5 Linux内核源代码的结构 68
3.4.6 阅读源代码 68
3.5 makefile文件 69
3.5.1 GNU make 69
3.5.2 makefile基本结构 70
3.5.3 makefile变量 72
3.5.4 GNU make的主要预定义变量 73
3.5.5 隐含规则 74
3.5.6 makefile范例 74
3.5.7 运行make 77
3.6 Linux的Shell编程简介 78
3.6.1 Shell概述 78
3.6.2 Shell脚本的基本内容 79
3.6.3 Shell的基本语法 80
3.6.4 常见Shell的内部命令 85
3.6.5 Shell程序设计的语法结构 87
第4章 Linux防火墙 92
4.1 Linux防火墙的历史 92
4.2 Linux下防火墙实现简介 93
4.2.1 实现版本之一:ipchains 93
4.2.2 实现版本之二:netfilter 117
4.3 Linux防火墙的基本技术 159
4.3.1 连线跟踪 159
4.3.2 包过滤 170
4.3.3 地址转换 173
4.3.4 包处理 183
第5章 防火墙策略 186
5.1 防火墙的基本策略 186
5.2 动态的网络需要动态的安全策略 186
5.3 防火墙策略的局限性 187
5.4 Linux防火墙管理工具 188
5.4.1 管理工具之一:ipchains 188
5.4.2 管理工具之二:iptables 194
5.5 一些Internet服务的安全性 196
5.5.1 WWW服务的安全性 196
5.5.2 电子邮件服务的安全性 196
5.5.3 FTP服务和TFTP服务的安全性 197
5.5.4 Finger服务的安全性 197
5.5.5 其他具有安全隐患的服务的安全性 197
5.6 防火墙规则应用实例 198
第6章 防火墙模块的设计 212
6.1 模块编程详解 212
6.1.1 模块概述 212
6.1.2 模块用到的数据结构 215
6.1.3 模块系统调用的源代码分析 219
6.1.4 模块使用 235
6.1.5 模块编程 237
6.2 防火墙模块的设计 241
6.2.1 基于2.2.x内核的防火墙模块设计 241
6.2.2 基于Linux 2.4内核的防火墙模块设计 248
第7章 入侵检测系统 257
7.1 入侵检测系统概述 257
7.2 Linux系统中的入侵检测 261
7.2.1 系统安全 261
7.2.2 安全防线 263
7.2.3 监控连接请求 263
7.2.4 监控系统日志 265
7.2.5 基于内核的入侵检测 274
7.3 分布式入侵检测系统(DIDS) 297
7.3.1 现有入侵检测系统的不足 297
7.3.2 分布式入侵检测系统的基本原理 298
第8章 防火墙的架构 301
8.1 防火墙的各种结构 301
8.1.1 概述 301
8.1.2 双重宿主主机体系结构 301
8.1.3 屏蔽主机体系结构 302
8.1.4 屏蔽子网体系结构 304
8.2 体系结构设计实例 304
8.2.1 双端口网关的体系结构设计 304
8.2.2 三端口网关的体系结构设计 305
8.2.3 四端口网关的体系结构设计 305
第9章 防火墙数据加密技术 308
9.1 防火墙数据加密技术概述 308
9.2 对称型加密 311
9.2.1 DES算法描述 312
9.2.2 对称型加密的安全性 316
9.3 非对称型加密 317
9.3.1 RSA算法描述 318
9.3.2 RSA的安全性 319
9.4 单向散列函数 320
9.4.1 MD5算法描述 321
9.4.2 安全散列算法(SHA) 325
第10章 Linux网络数据结构 328
10.1 通用网络数据结构 328
10.2 与防火墙相关的数据结构 345
10.2.1 用于模块登记的数据结构 345
10.2.2 连线跟踪的数据结构 348
10.2.3 包过滤的数据结构 352
10.2.4 地址转换的数据结构 355
10.2.5 与防火墙规则相关的数据结构 358
第11章 Linux的系统调用 364
11.1 Linux 2.4内核提供的系统调用 364
附录A 数据加密技术源代码 399
附录A.1 DES源代码 399
附录A.2 MD5源代码 419
附录A.3 SHA-1源代码 428
附录B 防火墙产品介绍 441
附录B.1 TIS FWTK 441
附录B.2 Raptor公司Eagle系列防火墙 441
附录B.3 Check Point Firewall和Firewall-1 441
附录B.4 Sunscreen 442
附录B.5 Portus Secure Network Firewall 442
附录B.6 Sonicwall 443
附录B.7 NetScreen Firewall 443
附录B.8 Alkatel系列防火墙 443
附录B.9 北京天融信公司网络卫士防火墙 444
附录B.10 NAI Gauntlet防火墙 444