第1章 漏洞概述
1.1 发生了什么?
1.1.1 其他黑客活动
1.2 是否准备演示如何入侵系统
1.3 漏洞与入侵概述
1.3.1 技术范畴
1.3.2 社会范畴
1.3.3 物理范畴
1.4 小结
1.5 深入阅读资料
1.5.1 书籍
1.5.2 有趣的黑客故事
1.5.3 网址
1.5.4 暴露漏洞的资源
第2章 安全策略
2.1 计算机与网络安全定义
2.1.1 计算环境因素
2.1.2 风险分析
2.1.3 安全策略
2.2 计算机与网络安全
2.3 用户隐私及管理员道德
2.4 小结
2.5 深入阅读资料
2.5.1 书籍
2.5.2 Web资源
2.5.3 其他资源
第3章 背景信息
3.1 BIOS口令
3.2 安装Linux及LILO
3.2.1 LILO注释
3.2.2 恢复被破坏的系统
3.2.3 安装及LILO资源
3.3 启动脚本
3.4 红帽子包管理器
3.4.1 RPM校验包
3.4.2 用RPM检验PGP签名
3.4.3 RPM资源
3.4.4 RPM邮件列表
3.5 TCP/IP网络概述
3.5.1 TCP/IP模型的层
3.5.2 远程程序呼叫应用
3.5.3 可信主机文件及相关命令
3.5.4 一些主要的应用程序
3.5.5 网络监视
3.5.6 综合TCP/IP网络资源
3.5.7 NFS,Samba,NIS与DNS资源
3.6 请求注释
3.7 密码学
3.7.1 密码学的作用
3.7.2 算法类型
3.7.3 Hash Function(散列函数)及数字签名
3.7.4 用散列口令代替加密口令
3.7.5 PGP概述
3.7.6 密码学参考资料
3.8 测试及工作环境
3.8.1 安全档案
3.8.2 测试软件
3.8.3 审计源代码
3.8.4 原始备份
3.8.5 安全资源
3.9 许可证
第4章 用户,许可权限与文件系统
4.1 管理用户帐号
4.1.1 难以猜测的口令
4.1.2 所有的帐号都必须有口令,或被加锁
4.1.3 password aging(口令有效期)与影像文件(shadow file)
4.1.4 限制性帐号
4.1.5 Shell History
4.2 根帐号
4.2.1 使用报帐号
4.2.2 多个根用户
4.2.3 尽量减少对根的入侵
4.2.4 配置/etc/securetty
4.3 管理组帐号
4.4 文件与目录许可权限
4.4.1 用户文件与目录许可权限
4.4.2 系统文件和目录许可权限
4.4.3 SUID和SGID
4.4.4 文件属性
4.5 使用xlock和xscreensaver
4.6 文件系统限制权限
4.7 小结
4.8 深入阅读资料
4.8.1 系统管理
4.8.2 系统安全
第5章 可插式认证模块
5.1 PAM概述
5.1.1 PAM配置
5.2 PAM管理
5.2.1 PAM和口令
5.2.2 PAM与口令摘要
5.2.3 PAM与login
5.2.4 时间与资源限制
5.2.5 使用pam_listfile进行访问控制
5.2.6 PAM与su
5.2.7 使用pam_access
5.2.8 使用pam_lastlog
5.2.9 使用pam_rhosts_auth
5.2.10 支持一次性口令
5.2.11 PAM与other配置文件
5.2.12 其他PAM选项
5.3 PAM日志
5.4 有效的PAM模块
5.5 PAM-aware应用程序
5.6 有关配置PAM的重要说明
5.7 PAM的未来
5.8 小结
5.9 深入阅读资料
5.9.1 在线文档
第6章 一次性口令
6.1 一次性口令的作用
6.2 S/Key
6.2.1 S/Key OTP概述
6.2.2 S/Key 1.1b出版本
6.2.3 S/Key 2.2版本
6.3 0PIE
6.3.1 获得并安装OPIE
6.3.2 实施并使用OPIE
6.4 OPIE和PAM
6.4.1 获得并安装pam_opie
6.4.2 获得并安装pam_if
6.4.3 使用pam_opie和pam_if
6.5 应该使用哪一种OTP系统?
6.5.1 S/Key优点与缺点
6.5.2 OPIE优点和缺点
6.6 S/Key和OPIE漏洞
6.7 小结
6.8 深入阅读资料
6.8.1 编程
6.8.2 E-Mail列表
第7章 系统记帐
7.1 普通的系统记帐
7.2 连接记帐
7.2.1 last命令
7.2.2 Who命令
7.2.3 其他命令
7.3 进程记帐
7.3.1 sa命令
7.3.2 lastcomm命令
7.4 记帐文件
7.5 小结
7.6 深入阅读资料
7.6.1 书籍
7.6.2 在线资料
第8章 系统日志
8.1 Sysfog系统日志工具
8.1.1 概述
8.1.2 /etc/syslog.conf文件
8.1.3 调用Syslogd守护程序
8.1.4 配置/etc/syslog.conf
8.1.5 klogd守护程序
8.2 其他日志
8.3 替换syslog
8.4 auditd工具
8.5 小结
8.6 深入阅读资料
8.6.1 普通系统日志
8.6.2 探测入侵
第9章 Superuser Do(sudo)
9.1 什么是sudo?
9.2 获得井实施sudo
9.2.1 1.5.9p4版本的特点
9.2.2 使用1.5.9p4版本
9.3 使用sudo
9.3.1 sudo的功能
9.3.2 /etc/sudoers文件
9.3.3 /etc/sudoers一般语句
9.3.4 visudo命令
9.3.5 sudo命令选项
9.3.6 比较复杂示例
9.3.7 设置sudo日志功能
9.3.8 读sudo日志
9.3.9 PAM和sudo
9.4 禁止根访问
9.5 sudo漏洞
9.6 小结
9.7 深入阅读资料
9.7.1 参考书籍
9.7.2 E-Mail列表
9.7.3 Web网址
9.7.4 在线文档
9.7.5 Kerberos Resources
9.7.6 FWTK资源
第10章 网络服务安全:TCP wrappers,Portmap和xinetd
10.1 TCP_Wrappers
10.1.1 编译TCP_Wrappers
10.1.2 TCP_Wrappers的访问控制
10.1.3 TCP_Wrappers工具程序
10.1.4 TCP_Wrappers的漏洞
10.2 portmapper
10.2.1 编译Portmapper
10.2.2 实现portmapper访问控制
10.2.3 portmap登记项
10.2.4 终止和恢复portmapper
10.2.5 Portmapper的漏洞
10.3 未包裹的服务
10.4 用xinetd代替inetd
10.4.1 xinetd的优点
10.4.2 xinetd的缺点
10.4.3 获得xinetd
10.4.4 编译xinetd
10.4.5 xinetd配置文件
10.4.6 xinetd进程
10.5 我要用哪一个?
10.6 小结
10.7 深入阅读资料
10.7.1 TCP Wrappers资源
10.7.2 portmapper资源
10.7.3 xinetd资源
10.7.4 Internet服务资源
第11章 安全shell
11.1 SSH概述
11.1.1 使用RSA基于主机的认证
11.1.2 用户认证
11.2 可用的SSH版本
11.3 获取和安装SSH
11.3.1 编译SSH
11.4 配置SSH
11.4.1 服务器端配置
11.4.2 客户端配置
11.5 使用SSH
11.6 配置SSH认证行为
11.6.1 sshd无法行动
11.6.2 事件认证流图
11.6.3 非口令认证
11.6.4 基于口令的认证
11.7 开发ssh的功能
11.7.1 ssh实例
11.7.2 scp实例
11.7.3 端口转交和应用代理
11.8 SSH的替代物
11.9 小结
11.10 深入阅读资料
第12章 破密程序Crack
12.1 获取Crack
12.2 Crack的主要组成部分
12.3 Crack概述
12.4 编译Crack
12.4.1 为Linux修改Crack
12.4.2 为MD5修改Crack
12.4.3 为bigcrypt修改Crack
12.4.4 为crypt(3)准备Crack
12.5 编译和连接Crack
12.5.1 编译Crack自身
12.6 Crack字典
12.6.1 获取其他的Crack字典
12.7 使用Crack
12.7.1 运行Crack
12.7.2 在网络上运行Crack
12.7.3 Crack7
12.7.4 Crack规则
12.7.5 对解开的口分做什么?
12.8 道德地使用Crack
12.8.1 有效使用Crack
12.9 小结
12.10 深入阅读资料
第13章 用tiger监听系统
13.1 tiger概述
13.1.1 获得tiger
13.1.2 tiger的主要组成部分
13.1.3 tiger配置概述
13.2 运行时操作概述
13.2.1 tiger脚本
13.3 安装tiger以通过cron运行
13.3.1 要运行哪些脚本?
13.3.2 用于开发机器的cronrc
13.4 从tiger运行Crack
13.5 判读tiger输出
13.6 排除tiger故障
13.7 修改tiger
13.7.1 修改脚本
13.7.2 增加新的检查
13.7.3 签名
13.8 建议
13.9 小结
13.10 深入阅读资料
13.10.1 tiger邮件表
13.10.2 sendmail资源
第14章 Tripwire
14.1 Tripwire概述
14.2 获得和安装Tripwire
14.2.1 Tripwire1.2版
14.3 Tripwire配置文件
14.3.1 扩展配置文件
14.3.2 建立Tripwire配置文件
14.3.3 Red Hat Linux上的配置文件示例
14.4 Tripwire命令
14.5 Tripwire初始化模式
14.5.1 Tripwire有效初始化
14.5.2 存储数据库
14.6 Tripwire比较模式
14.6.1 注意性能
14.7 Tripwire更新模式
14.8 小结
14.9 深入阅读资料
14.9.1 联机文档
14.9.2 Web站点
第15章 密码文件系统与透明的密码文件系统
15.1 密码文件系统概述
15.1.1 CFS事件流
15.2 获得和安装CFS
15.2.1 CFS管理任务
15.3 使用CFS
15.3.1 创建、连接CFS目录
15.3.2 CFS命令和后台驻留程序
15.3.3 在NFS之上使用CFS
15.4 CFS的脆弱性
15.5 TCFS概述
15.6 获得和安装TCFS
15.7 TCFS客户端
15.7.1 TCFS服务器端
15.8 使用TCFS
15.8.1 通过PAM配置TCFS
15.8.2 TCFS管理任务
15.8.3 TCFS的扩展属性
15.8.4 建立加密目录
15.8.5 TCFS组
15.8.6 TCFS密钥管理
15.9 TCFS的脆弱性
15.10 对比CFS和TCFS
15.11 安全删除文件
15.12 替代CFS和TCFS
15.13 小结
15.14 深入阅读资料
15.14.1 文章
15.14.2 E-mail列表
第16章 用ipchains过滤数据包密码
16.1 包过滤
16.2 为ipchains配置内核
16.3 ipchains概述
16.3.1 规则链介绍
16.3.2 非正常包
16.3.3 分析进站包
16.3.4 分析出站包
16.3.5 回环接口
16.3.6 用户规则链
16.4 使用ipchains
16.4.1 ipchains命令
16.4.2 简单例子
16.5 包分段
16.6 IP伪装
16.7 添加用户规则链
16.7.1 用户规则链中的ICMP原则
16.8 反欺骗规则
16.9 规则顺序很重要
16.10 保存、恢复规则
16.11 编写规则和记录日志的几点建议
16.11.1 修改规则
16.11.2 ipchains启动脚本
16.12 建立防火墙
16.12.1 简单内部网
16.12.2 用DHCP的简单内部网
16.13ipchains不只作防火墙
16.14 还有一件事
16.15 补充工具
16.15.1 其他举例
16.15.2 端口转发
16.15.3 fwconfig图形用户接口
16.15.4 Mason
16.15.5 网络映射(nmap)
16.15.6 其他防火墙软件
16.15.7 虚拟专用网和加密通道
16.16 下一代
16.17 小结
16.18 深入阅读资料
16.18.1 ipchains文档
16.18.2 伪装文档
16.18.3 ISP连接性相关的资源
16.18.4 防火墙参考资料
16.18.5 DMZ资源
16.18.6 ICMP相关资料
16.19 特别致谢
第17章 日志文件管理
17.1 一般日志文件管理
17.2 logrotate
17.2.1 获取、安装logrotate
17.2.2 配置logrotate
17.2.3 归纳
17.3 Swatch
17.3.1 获得swatch
17.3.2 关于CPAN
17.3.3 安装swatch
17.3.4 配置、运订swatch
17.4 logcheck
17.4.1 获得logcheck
17.4.2 logcheck的主要组成
17.4.3 配置、安装logcheck
17.4.4 logcheck输出
17.4.5 为logcheck查错
17.5 小结
第18章 实现和管理安全
18.1 我从哪儿开始?
18.1.1 强化Linux配置
18.1.2 选择合适工具
18.2 减少工作负担
18.3 如果我的系统已经连到产品环境该怎么办?
18.4 内部网
18.4.1 关键的内部服务器
18.4.2 内部维护
18.5 防火墙与DMZ
18.5.1 外部维护
18.6 恢复
18.7 添加新软件
18.8 只能通过实践
附录A 保持更新
附录B 未报道的工具
附录C 术语汇编