《Linux安全技术内幕》PDF下载

  • 购买积分:18 如何计算积分?
  • 作  者:李洋等编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302223146
  • 页数:626 页
图书介绍:本书向读者系统、全面、科学地讲述和揭示了与Linux相关的原理、技术、机制等安全内幕。

第1章 Linux安全基础 1

1.1 信息安全的重要性 1

1.1 网络信息安全的基本概念 3

1.1.2 网络威胁的基本表现 3

1.1.3 网络信息安全领域的研究重点 4

1.1.4 网络信息安全的五要素 5

1.1.5 经典的P2DR模型 6

1.2 黑客攻击的常见手段和步骤 6

1.2.1 黑客攻击的常见方法 6

1.2.2 黑客攻击的一般步骤 7

1.3 Linux操作系统的安全性 10

1.3.1 Linux操作系统的安全级别 10

1.3.2 现行Linux操作系统的安全机制 12

1.4 Linux网络安全基础 13

1.4.1 网络基本原理 13

1.4.2 TCP/IP网络 15

1.4.3 IP协议 17

1.4.4 TCP协议 19

1.4.5 UDP协议 22

1.4.6 ARP和RARP协议 23

1.4.7 ICMP协议 24

1.4.8 IPv4和IPv6 25

1.5 国内外相关安全标准概述 27

第2章 Linux概述 30

2.1 Linux的历史 30

2.2 与Linux相关的基本概念 31

2.2.1 开源软件 31

2.2.2 GNU 31

2.2.3 GPL 32

2.2.4 POSIX 33

2.3 Linux的主要特点 33

2.4 Linux的应用领域 34

2.5 Linux的内核及发行版本 35

2.6 常见的Linux发行版本 35

2.6.1 Red Hat Linux 35

2.6.2 Fedora Core/Fedora 36

2.6.3 Debian 37

2.6.4 Ubuntu 37

2.6.5 SuSE Linux 38

2.6.6 Mandriva 38

2.7 Linux的主要组成部分 39

2.7.1 内核 39

2.7.2 Shell 39

2.7.3 文件结构 40

2.7.4 实用工具 40

2.8 Fedora Linux的发展历史 41

2.9 Fedora 10的主要特征 42

第3章 Fedora 10的安全安装与启动 44

3.1 Fedora 10的安装 44

3.1.1 硬件需求 44

3.1.2 安装方式 44

3.1.3 安装过程 45

3.2 Fedora 10的启动与登录 56

3.2.1 安全登录Linux 57

3.2.2 退出Linux 57

3.3 Linux的启动安全 58

3.3.1 Linux的启动过程 58

3.3.2 Linux的运行级别 59

3.3.3 GRUB密码设定 60

第4章 用户和组安全 62

4.1 用户和组管理的基本概念 62

4.2 安全使用用户和组文件 62

4.2.1 用户账号文件——passwd 63

4.2.2 用户影子文件——shadow 64

4.2.3 组账号文件——group 66

4.2.4 组账号文件——gshadow 67

4.2.5 /etc/skel目录 68

4.2.6 /etc/login.defs配置文件 68

4.2.7 /etc/default/useradd文件 68

4.3 安全管理用户和组工具 70

4.3.1 useradd:添加用户工具 70

4.3.2 usermod:修改用户信息工具 72

4.3.3 userdel:删除用户工具 73

4.3.4 groupadd:创建组工具 74

4.3.5 groupmod:修改组属性工具 75

4.3.6 groupdel:删除组工具 76

4.3.7 其他工具 77

4.4 使用Fedora用户管理器管理用户和组 77

4.4.1 启动Fedora用户管理器 77

4.4.2 创建用户 78

4.4.4 创建用户组 82

4.4.5 修改用户组属性 83

4.5 与用户和组管理安全相关的其他安全机制 85

4.5.1 验证用户和组文件 85

4.5.2 用户密码的安全设定方法 87

第5章 保证Linux文件系统安全 89

5.1 Linux文件系统原理 89

5.1.1 Linux中的文件系统类型 89

5.1.2 Linux文件的类型 92

5.1.3 Linux中的目录结构设定 93

5.2 安全设定文件/目录访问权限 95

5.2.1 文件/目录访问权限基本概念 95

5.2.2 改变文件/目录的访问权限 96

5.2.3 更改文件/目录的所有权 98

5.2.4 改变文件的执行权限 99

5.3 使用额外属性保护Ext3文件系统安全 100

5.3.1 Ext3中的额外属性 100

5.3.2 使用Ext3文件系统的属性 102

5.3.3 Ext3属性和文件权限的区别 102

5.3.4 使用chattr 104

5.4 使用加密文件系统 104

5.4.1 内核准备 105

5.4.2 创建加密设备 106

5.4.3 卸载加密设备 109

5.4.4 重新装载加密设备 109

5.4.5 在Linux系统安装时使用EFS 109

第6章 Linux系统安全增强技术 111

6.1 Linux安全增强的经典模型 111

6.1.1 BLP安全模型 111

6.1.2 基于角色的访问控制模型 112

6.1.3 多级别安全机制 113

6.1.4 操作系统安全加固方法 114

6.2 SELinux:Linux安全增强机制 115

6.2.1 SELinux的历史 116

6.2.2 SELinux基本原理 116

6.2.3 SELinux相对于传统机制的优势 117

6.2.4 SELinux中的上下文 117

6.2.5 SELinux中的目标策略 123

6.2.6 使用SELinux配置文件和策略目录 134

6.2.7 使用SELinux的先决条件 136

6.2.8 SELinux中的布尔变量 140

第7章 Linux进程安全 143

7.1 Linux进程的基本原理 143

7.1.1 进程类型 143

7.1.2 进程的状态 143

7.1.3 进程的工作模式 144

7.1.4 进程与线程的区别 145

7.2 Linux下的守护进程 145

7.2.1 守护进程基本原理 145

7.2.2 Linux下的重要守护进程 146

7.3 安全管理Linux进程 147

7.3.1 手工启动Linux进程 147

7.3.2 自动执行进程 148

7.3.3 资源空闲时执行进程 150

7.3.4 周期性执行进程 150

7.3.5 操作cron后台进程 151

7.3.6 挂起及恢复进程 153

7.4 查看及终止进程 154

7.4.1 使用ps命令查看进程状态 154

7.4.2 使用top命令查看进程状态 156

7.4.3 使用kill命令终止进程 157

7.4.4 使用sleep命令暂停进程 158

7.5 安全管理每个进程的系统资源 158

7.5.1 限制进程创建大型文件 158

7.5.2 限制单个用户调用的最大子进程个数 160

7.6 进程文件系统PROC 161

第8章 Linux日志管理安全 164

8.1 Linux日志管理简介 164

8.2 Linux下重要日志文件介绍 165

8.2.1 /var/log/boot.log 165

8.2.2 /var/log/cron 166

8.2.3 /var/log/maillog 166

8.2.4 /var/log/syslog 166

8.2.5 /var/log/wtmp 168

8.2.6 /var/run/utmp 168

8.2.7 /var/log/xferlog 168

8.3 Linux下基本日志管理机制 169

8.3.1 who命令 169

8.3.2 users命令 170

8.3.3 last命令 171

8.3.4 ac命令 172

8.3.5 lastlog命令 173

8.4 使用syslog设备 173

8.4.1 syslog简介 173

8.4.2 syslog配置文件 173

8.4.3 syslog进程 175

8.5 Linux日志使用的重要原则 176

8.6 Linux日志输出查看方式 176

8.6.1 dmesg 176

8.6.2 tail 177

8.6.3 more和less 178

8.6.4 其他方式 179

第9章 xinetd安全管理Linux网络服务 180

9.1 xinetd原理 180

9.2 xinetd服务配置文件 181

9.3 通过文件配置使用xinetd 183

9.4 通过图形用户界面进行配置使用xinetd 184

第10章 DHCP服务安全 185

10.1 DHCP原理 185

10.1.1 DHCP简介 185

10.1.2 DHCP的工作流程 185

10.2 安装和启动DHCP服务器 186

10.2.1 安装DHCP服务器 186

10.2.2 启动和关闭DHCP服务器 187

10.3 安全配置DHCP服务 188

10.3.1 DHCP服务器配置文件 188

10.3.2 DHCP服务器配置实例 190

10.3.3 指定DHCP为指定网卡服务 191

10.4 安全配置DHCP客户端 192

10.4.1 图形界面配置Linux客户端 192

10.4.2 配置文件配置Linux客户端 192

10.5 使用chroot保证DHCP运行安全 193

10.5.1 下载和安装Jail软件 194

10.5.2 使用Jail创建chroot牢笼 195

第11章 DNS服务安全 198

11.1 DNS域名服务原理简介 198

11.1.1 DNS简介 198

11.1.2 DNS系统组成及基本概念 199

11.1.3 DNS服务器的类型 200

11.1.4 DNS的工作原理 200

11.2 安装和启动DNS服务器 201

11.2.1 安装DNS服务器 201

11.2.2 启动和关闭DNS服务器 202

11.3 安全配置DNS服务器 202

11.3.1 DNS服务器配置文件类型 202

11.3.2 named.conf主配置文件 203

11.3.3 区文件 204

11.3.4 DNS服务器配置实例 205

11.3.5 安全配置DNS客户端 207

11.4 安全使用DNS服务器的高级技巧 208

11.4.1 配置辅助域名服务器做到冗余备份 208

11.4.2 配置高速缓存服务器提高DNS服务器性能 210

11.4.3 配置DNS负载均衡防止服务器宕机 211

11.4.4 配置智能DNS高速解析 212

11.4.5 合理配置DNS的查询方式提高效率 215

11.4.6 使用dnstop监控DNS流量 216

11.4.7 使用DNSSEC技术保护DNS安全 217

第12章 邮件服务安全 220

12.1 邮件系统简介 220

12.1.1 邮件传递代理(MTA) 220

12.1.2 邮件存储和获取代理(MSA) 220

12.1.3 邮件客户代理(MUA) 221

12.2 SMTP介绍 221

12.2.1 SMTP的模型 221

12.2.2 SMTP的基本命令 222

12.3 安装与启动Sendmail 223

12.4 安全配置sendmail.cf 224

12.5 安全配置sendmail.mc文件 227

12.6 防治垃圾邮件 228

12.6.1 常用技术 228

12.6.2 配置Sendmail防范垃圾邮件 229

12.6.3 使用SpamAssasin防治垃圾邮件 230

第13章 FTP服务安全 234

13.1 FTP简介 234

13.1.1 FTP协议介绍 234

13.1.2 FTP文件类型 235

13.1.3 FTP文件结构 236

13.1.4 FTP传输模式 236

13.1.5 FTP常用命令 236

13.1.6 FTP典型消息 237

13.2 安装和启动vsftpd服务器 238

13.2.1 安装vsftpd 238

13.2.2 启动和关闭vsftpd 238

13.2.3 安全配置ftpusers文件 241

13.2.4 安全配置user_list文件 241

13.2.5 安全配置vsftpd.conf文件 242

13.2.6 配置其他一些安全选项 245

13.3 安全使用vsftpd服务器 246

13.3.1 匿名用户使用vsftpd服务器 246

13.3.2 本地用户使用vsftpd服务器 247

13.3.3 虚拟用户使用vsftpd服务器 249

13.3.4 配置vsftpd服务器中chroot 252

13.3.5 配置vsftpd服务器在非标准端口工作 252

13.3.6 配置虚拟FTP服务器 253

13.3.7 使用主机访问控制 255

第14章 Web服务安全 257

14.1 Web服务器简介 257

14.1.1 HTTP基本原理 257

14.1.2 Apache服务器简介 258

14.2 安装Apache的最新版本 260

14.3 配置Apache服务器主文件 260

14.4 使用特定的用户运行Apache服务器 265

14.5 配置隐藏Apache服务器的版本号 266

14.6 实现访问控制 268

14.6.1 访问控制常用配置指令 268

14.6.2 使用.htaccess文件进行访问控制 269

14.7 使用认证和授权保护Apache 272

14.7.1 认证和授权指令 272

14.7.2 管理认证口令文件和认证组文件 273

14.7.3 认证和授权使用实例 274

14.8 设置虚拟目录和目录权限 275

14.9 使用Apache中的安全模块 277

14.9.1 Apache服务器中安全相关模块 277

14.9.2 开启安全模块 278

14.10 使用SSL保证安全 278

14.10.1 SSL简介 278

14.10.2 Apache中运用SSL的基本原理 279

14.10.3 安装和启动SSL 284

14.11 Apache日志管理 287

14.11.1 日志管理概述 287

14.11.2 日志相关的配置指令 287

14.11.3 日志记录等级和分类 288

14.11.4 几个重要的日志文件 289

第15章 代理服务安全 293

15.1 代理服务器简介 293

15.2 Squid简介 294

15.3 安装和启动Squid Server 295

15.3.1 安装Squid Server 295

15.3.2 启动和关闭Squid Server 295

15.4 在客户端使用Squid Server 296

15.4.1 在IE浏览器设置 296

15.4.2 在Linux浏览器中设置 297

15.5 安全配置Squid Server 299

15.5.1 配置Squid Server的基本参数 299

15.5.2 配置Squid Server的安全访问控制 301

15.5.3 配置Squid Server的简单实例 306

15.6 安全配置基于Squid的透明代理 306

15.6.1 Linux内核的相关配置 306

15.6.2 Squid的相关配置选项 308

15.6.3 iptables的相关配置 308

15.7 安全配置多级缓存改善Proxy服务器的性能 308

15.7.1 多级缓存简介 308

15.7.2 配置多级缓存 309

15.8 Squid日志管理 311

15.8.1 配置文件中有关日志的选项 311

15.8.2 日志管理主文件——accesss.conf 312

第16章 防火墙技术 315

16.1 防火墙技术原理 315

16.1.1 防火墙简介 315

16.1.2 防火墙的分类 317

16.1.3 传统防火墙技术 318

16.1.4 新一代防火墙 319

16.1.5 防火墙技术的发展趋势 321

16.1.6 防火墙的配置方式 323

16.2 Netfilter/iptables防火墙框架 323

16.2.1 简介 323

16.2.2 安装和启动Netfilter/iptables系统 324

16.2.3 iptables基本原理 326

16.3 iptables简单应用 327

16.4 使用IPtables完成NAT功能 331

16.4.1 NAT简介 331

16.4.2 NAT的原理 332

16.4.3 NAT具体使用 333

16.5 防火墙与DMZ 336

16.5.1 DMZ原理 336

16.5.2 构建DMZ 337

第17章 入侵检测技术 341

17.1 入侵检测系统简介 341

17.2 入侵检测技术的发展 342

17.3 入侵检测的分类 343

17.3.1 入侵检测技术分类 343

17.3.2 入侵检测系统分类 345

17.4 Snort简介 347

17.5 安装Snort 348

17.6 Snort的工作模式 349

17.6.1 嗅探器模式 349

17.6.2 数据包记录器 349

17.6.3 网络入侵检测模式 350

17.7 Snort的使用方式 350

17.7.1 命令简介 350

17.7.2 查看ICMP数据报文 351

17.7.3 配置Snort的输出方式 353

17.7.4 配置Snort规则 353

17.8 自己动手编写Snort规则 355

17.8.1 规则动作 355

17.8.2 协议 356

17.8.3 IP地址 356

17.8.4 端口号 356

17.8.5 方向操作符 357

17.8.6 activate/dynamic规则 357

17.8.7 一些重要的指令 357

17.8.8 一些重要的规则选项 358

17.8.9 使用Snort检测攻击 364

17.9 使用Snortcenter构建分布式入侵检测系统 366

17.9.1 分布式入侵检测系统的构成 366

17.9.2 系统安装及部署 367

第18章 Linux集群技术 369

18.1 集群技术 369

18.1.1 集群简介 369

18.1.2 集群系统的分类 370

18.1.3 高可用集群 370

18.1.4 高性能计算集群 371

18.2 Linux中的集群 372

18.2.1 Linux集群分类 372

18.2.2 科学集群 372

18.2.3 负载均衡集群 374

18.2.4 高可用性集群 376

18.3 LVS 377

18.3.1 LVS原理 377

18.3.2 安装LVS 381

18.3.3 配置和使用LVS 382

第19章 VPN技术 385

19.1 VPN技术原理 385

19.1.1 VPN简介 385

19.1.2 VPN的分类 386

19.2 Linux下的VPN 388

19.2.1 IPSec VPN 388

19.2.2 PPP Over SSH 389

19.2.3 CIPE:Crypto IP Encapsulation 389

19.2.4 SSL VPN 390

19.2.5 PPTP 390

19.3 使用OpenVPN 391

19.3.1 OpenVPN简介 391

19.3.2 安装OpenVPN 391

19.3.3 制作证书 392

19.3.4 配置服务端 396

19.3.5 配置客户端 398

19.3.6 配置实例 398

第20章 Samba共享服务安全 400

20.1 Samba服务简介 400

20.1.1 Samba工作原理 400

20.1.2 Samba服务器的功能 401

20.1.3 SMB协议 401

20.1.4 Samba服务的工作流程 401

20.2 安装和启动Samba 402

20.3 安全配置Samba服务器的用户信息 404

20.3.1 创建服务器待认证用户 404

20.3.2 将用户信息转换为Samba用户信息 405

20.3.3 用户转换 405

20.3.4 Samba服务器和主浏览器 405

20.4 smb.conf文件配置详解 406

20.4.1 设置工作组 407

20.4.2 设置共享Linux账户主目录 407

20.4.3 设置公用共享目录 408

20.4.4 设置一般共享目录 409

20.4.5 设置共享打印机 410

20.4.6 具体设置实例 412

20.5 smb.conf中的选项和特定约定 421

20.6 使用testparm命令测试Samba服务器的配置安全 425

20.7 使用Samba日志 426

20.8 Linux和Windows文件互访 426

20.8.1 Windows客户使用Linux系统共享文件 426

20.8.2 用smbclient工具访问局域网上的Windows系统 427

20.8.3 用smbclient工具访问局域网上的其他系统 428

第21章 网络文件系统安全 429

21.1 NFS服务概述 429

21.1.1 NFS基本原理 429

21.1.2 NFS服务中的进程 431

21.2 安装和启动NFS 432

21.2.1 安装NFS 432

21.2.2 启动NFS 432

21.3 NFS安全配置和使用 433

21.3.1 配置NFS服务器 433

21.3.2 配置NFS客户机 433

21.3.3 安全使用NFS服务 435

21.4 图形界面安全配置NFS服务器 436

21.5 保证NFS安全的使用原则 439

第22章 PGP安全加密技术 441

22.1 PGP技术原理 441

22.1.1 PGP简介 441

22.1.2 PGP原理 442

22.2 使用GnuPG 447

22.2.1 GnuPG简介 447

22.2.2 安装GnuPG 449

22.2.3 GnuPG的基本命令 449

22.2.4 详细使用方法 451

22.2.5 GnuPG使用实例 459

22.2.6 相关注意事项 465

第23章 PAM安全认证技术 466

23.1 PAM认证机制简介 466

23.2 Linux-PAM的分层体系结构 467

23.2.1 分层体系结构概述 467

23.2.2 模块层 468

23.2.3 应用接口层 468

23.3 Linux-PAM的配置 469

23.3.1 Linux-PAM单一配置文件的语法 469

23.3.2 口令映射机制 471

23.3.3 基于目录的配置形式 472

23.4 Linux中常用的PAM安全模块 473

23.5 Linux-PAM使用举例 481

23.5.1 使用Linux-PAM控制用户安全登录 481

23.5.2 使用Linux-PAM控制Samba用户的共享登录 482

23.5.3 使用Linux-PAM控制FTP用户的登录 482

第24章 Linux面临的网络威胁及策略 485

24.1 扫描攻击 485

24.2 木马 488

24.3 拒绝服务攻击和分布式拒绝服务攻击 491

24.3.1 DoS攻击 491

24.3.2 DDoS攻击 494

24.4 病毒 496

24.4.1 Linux病毒的起源和历程 496

24.4.2 病毒的主要类型 497

24.5 IP Spoofing 498

24.6 ARP Spoofing 498

24.7 Phishing 499

24.8 Botnet 501

24.9 跨站脚本攻击 502

24.10 零日攻击 502

24.11 “社会工程学”攻击 503

24.12 使用备份应对网络威胁 505

24.12.1 一些简单实用的备份命令 505

24.12.2 备份机制和备份策略 506

第25章 Linux下优秀的开源安全工具 518

25.1 Tripwire:系统完整性检查工具 518

25.1.1 文件完整性检查的必要性 518

25.1.2 Tripwire简介 518

25.1.3 Tripwire的基本工作原理 519

25.1.4 安装Tripwire 521

25.1.5 配置Tripwire 522

25.1.6 使用Tripwire进行文件监控 527

25.1.7 使用Tripwire的原则和注意事项 529

25.2 John the Ripper:密码分析及检验工具 529

25.2.1 John the Ripper简介 529

25.2.2 安装John the Ripper 530

25.2.3 基本命令和实用工具 530

25.2.4 密码分析及检验 532

25.3 dmidecode:硬件状态监控工具 533

25.3.1 dmidecode简介 533

25.3.2 安装dmidecode工具 533

25.3.3 监控硬件状态 533

25.4 NMAP:端口扫描工具 535

25.4.1 NMAP简介 535

25.4.2 安装NMAP 536

25.4.3 使用NMAP进行多种扫描 537

25.5 Wireshark:网络流量捕获工具 541

25.5.1 Wireshark简介 541

25.5.2 使用Wireshark 541

25.6 NTOP:网络流量分析工具 545

25.6.1 NTOP简介 545

25.6.2 使用NTOP 546

25.7 其他工具 549

25.7.1 安全备份工具 549

25.7.2 Nessus:网络风险评估工具 552

25.7.3 Sudo:系统管理工具 552

25.7.4 NetCat:网络安全界的瑞士军刀 553

25.7.5 LSOF:隐蔽文件发现工具 554

25.7.6 Traceroute:路由追踪工具 554

25.7.7 XProbe:操作系统识别工具 555

25.7.8 SATAN:系统弱点发现工具 555

附录A Fedora 10命令参考 556

附录B VMWare虚拟机安装指南 617