第1篇 安全运行维护理论及背景准备 2
Chapter 01知彼:企业资讯安全现状剖析 2
1.1资讯安全问题概览 2
1.1.1骇客入侵 4
1.1.2病毒发展趋势 4
1.1.3内部威胁 5
1.1.4自然灾害 6
1.2各经济大国安全问题概要 6
1.3企业面临的主要资讯安全威胁 14
1.3.1扫描 14
1.3.2特洛伊木马 15
1.3.3拒绝服务攻击和分散式拒绝服务攻击 18
1.3.4病毒 25
1.3.5 IP欺骗 29
1.3.6 ARP欺骗 29
1.3.7网路钓鱼 30
1.3.8僵尸网路 34
1.3.9跨站指令稿攻击 36
1.3.10缓冲区溢位攻击 37
1.3.11 SQL植入攻击 38
1.3.12零日攻击 38
1.3.13「社会工程学」攻击 39
1.3.14中间人攻击 41
1.3.15密码攻击 42
1.4认识骇客 42
1.5剖析骇客的攻击方法 44
1.5.1确定攻击目标 44
1.5.2踩点和资讯搜集 45
1.5.3获得许可权 46
1.5.4许可权提升 47
1.5.5攻击实施 47
1.5.6留取后门程式 48
1.5.7掩盖入侵痕迹 48
Chapter 02知己:企业资讯安全技术概览 49
2.1实体层防护:实体隔离 49
2.2系统层防护:安全作业系统和资料库安全 53
2.2.1选用安全作业系统 53
2.2.2作业系统密码设定 56
2.2.3资料库安全技术 58
2.3网路层防护:防火墙 61
2.3.1防火墙简介 61
2.3.2防火墙的分类 63
2.3.3传统防火墙技术 65
2.3.4新一代防火墙的技术特点 67
2.3.5防火墙技术的发展趋势 70
2.3.6防火墙的设定方式 71
2.3.7防火墙的实际安全部署建议 72
2.4应用层防护:IDS/IPS 75
2.4.1入侵侦测系统简介 75
2.4.2入侵侦测技术的发展 76
2.4.3入侵侦测技术的分类 78
2.4.4入侵侦测系统的分类 80
2.4.5入侵防御系统(IPS) 84
2.4.6 IPS的发展 84
2.4.7 IPS的技术特征 86
2.4.8 IPS的功能特点 86
2.4.9 IPS的产品种类 90
2.5闸道级防护:UTM 92
2.6 Web应用综合防护:WAF 93
2.7资料防护:资料加密及备份 95
2.7.1加密技术的基本概念 95
2.7.2加密系统的分类 96
2.7.3常用的加密演算法 99
2.7.4加密演算法的主要应用场景 101
2.7.5资料备份及恢复技术 102
2.8远端存取安全保障:VPN 105
2.8.1 VPN简介 105
2.8.2 VPN的分类 107
2.9身份认证技术 110
2.9.1静态密码 111
2.9.2智慧卡(IC卡) 111
2.9.3简讯密码 112
2.9.4动态随身认证 112
2.9.5 USB Key 113
2.9.6生物识别技术 113
2.9.7双因素身份认证 113
2.10管理层:资讯安全标准化组织及标准 114
2.10.1国际资讯安全标准概览 114
第2篇 企业Linux安全运行维护规划及选型 118
Chapter 03规划:企业资讯安全工作想法 119
3.1资讯安全的本质 119
3.2资讯安全概念经纬线:从层次到属性 121
3.3业界资讯安全专家定义的资讯安全:资讯安全四要素 124
3.4企业资讯安全的实施内容和依据(框架) 126
3.4.1基本原则 126
3.4.2传统的企业资讯安全架构 129
3.4.3新的企业资讯安全框架及其实施内涵 129
3.5规划企业Linux安全的实施内容 133
Chapter 04选型:企业Linux软硬体选型及安装部署 135
4.1 Linux应用套件选择 135
4.1.1 Linux的历史 135
4.1.2与Linux相关的基本概念 137
4.1.3 Lin ux的主要特点 140
4.1.4 Lin ux的应用领域 141
4.1.5常见的Linux发行套件 141
4.1.6企业的选择:Fedora vs Red Hat Enterprise Linux 147
4.2 Linux核心版本选择 148
4.3 Linux伺服器选型 149
4.3.1 CPU(处理器) 149
4.3.2 RAM(记忆体) 150
4.3.3处理器架构 150
4.3.4伺服器类型选型 152
4.4 Linux安装及部署 158
4.4.1注意事项 158
4.4.2其他需求 159
4.5大规模自动部署安装Linux 159
4.5.1 PXE技术 160
4.5.2架设Yum软体来源 160
4.5.3安装相关服务 161
第3篇 企业Linux安全运行维护实战 166
Chapter 05高屋建瓴:「四步」完成企业Linux系统安全防护 167
5.1分析:企业Linux系统安全威胁 168
5.2理念:企业级Linux系统安全立体式防范系统 168
5.3企业Linux档案系统安全防护 169
5.3.1企业Linux档案系统的重要档案及目录 169
5.3.2档案/目录存取权限 172
5.3.3字母档案许可权设定法 173
5.3.4数字档案许可权设定法 174
5.3.5特殊存取模式及贴上位元的设定法 175
5.3.6使用档案系统一致性检查工具:Tripwire 176
5.3.7根使用者安全管理 197
5.4企业Linux处理程序安全防护 214
5.4.1确定Linux下的重要处理程序 215
5.4.2处理程序安全命令列管理方法 218
5.4.3使用处理程序档案系统管理处理程序 220
5.4.4管理中常用的PROC档案系统呼叫介面 223
5.5企业Linux使用者安全管理 227
5.5.1管理使用者及群组档案安全 227
5.5.2使用者密码管理 234
5.6企业Linux记录档安全管理 241
5.6.1 Linux下的记录档分类 241
5.6.2使用基本指令进行记录档管理 242
5.6.3使用syslog装置 247
5.7应用LIDS进行Linux系统入侵侦测 253
5.7.1 LIDS简介 253
5.7.2安装LIDS 254
5.7.3设定和使用LIDS 256
Chapter 06锦上添花:企业Linux作业系统ACL应用及安全强化 261
6.1安全强化必要性分析 261
6.2强化第一步:使用ACL进行灵活存取控制 262
6.2.1传统的使用者-使用者群组-其他使用者(U-G-O)存取控制机制回顾 262
6.2.2扩充的存取控制清单(ACL)方式 265
6.3强化第二步:使用SELinux强制存取控制 274
6.3.1安全模型 274
6.3.2 SELinux:Linux安全增强机制原理 280
6.3.3 SELinux中的上下文(context) 283
6.3.4 SELinux中的目标策略(Targeted Policy) 289
6.3.5 SELinux设定档和策略目录介绍 298
6.3.6使用SELinux的准备 300
6.3.7 SELinux中布林( boolean )变数的使用 304
Chapter 07紧密布控:企业Web伺服器安全防护 309
7.1 Web安全威胁分析及解决想法 309
7.2 Web伺服器选型 310
7.2.1 HTTP基本原理 310
7.2.2为何选择Apache伺服器 312
7.2.3安装Apache 314
7.3安全设定Apache伺服器 315
7.4 Web服务存取控制 322
7.4.1存取控制常用设定指令 322
7.4.2使用.htaccess档案进行存取控制 323
7.5使用认证和授权保护Apache 326
7.5.1认证和授权指令 326
7.5.2管理认证密码档案和认证群组档案 328
7.5.3认证和授权使用实例 328
7.6使用Apache中的安全模组 330
7.6.1 Apache伺服器中安全相关模组 330
7.6.2开启安全模组 330
7.7使用SSL保障Web通讯安全 332
7.7.1 SSL简介 332
7.7.2 Apache中运用SSL的基本原理 333
7.7.3使用开放原始码的OpenSSL保护Apache通讯安全 339
7.8 Apache记录档管理和统计分析 343
7.8.1记录档管理概述 343
7.8.2与记录档相关的设定指令 344
7.8.3记录档记录等级和分类 345
7.8.4使用Webalizer对Apache进行记录档统计和分析 346
7.9其他有效的安全措施 350
7.9.1使用专用的使用者执行Apache伺服器 350
7.9.2设定隐藏Apache伺服器的版本编号 350
7.9.3设定虚拟目录和目录许可权 352
7.9.4使Web服务执行在「监牢」中 354
7.10 Web系统安全架构防护要点 357
7.10.1 Web系统风险分析 357
7.10.2方案的原则和想法 358
7.10.3网路拓扑及要点剖析 361
Chapter 08谨小慎微:企业基础网路服务防护 363
8.1企业基础网路服务安全风险分析 364
8.1.1企业域名服务安全风险分析 364
8.1.2企业电子邮件服务安全风险分析 366
8.2企业域名服务安全防护 366
8.2.1正确设定DNS相关档案 366
8.2.2使用Dlint工具进行DNS设定档检查 373
8.2.3使用指令检验DNS功能 374
8.2.4设定辅助域名伺服器进行容错备份 378
8.2.5设定快取记忆体伺服器缓解DNS存取压力 380
8.2.6设定DNS负载平衡 382
8.2.7限制名称伺服器递回查询功能 382
8.2.8限制区传送(zone transfer) 383
8.2.9限制查询(query) 383
8.2.10分离DNS(split DNS) 384
8.2.11隐藏BIND的版本资讯 385
8.2.12使用非root许可权执行BIND 385
8.2.13删除DNS上不必要的其他服务 385
8.2.14合理设定DNS的查询方式 386
8.2.15使用dnstop监控DNS流量 387
8.3企业电子邮件服务安全防护 388
8.3.1安全使用Sendmail Server 388
8.3.2安全使用Postfix电子邮件伺服器 393
8.3.3企业垃圾邮件防护 397
Chapter 09未雨绸缪:企业级资料防护 411
9.1企业资料防护技术分析 412
9.2资料加密技术原理 412
9.2.1对称加密、解密 412
9.2.2非对称加密、解密 413
9.2.3公开金钥结构的保密通讯原理 414
9.2.4公开金钥结构的鉴别通讯原理 415
9.2.5公开金钥结构的鉴别+保密通讯原理 415
9.3应用一:使用GnuPG进行应用资料加密 416
9.3.1安装GnuPG 416
9.3.2 GnuPG的基本指令 416
9.3.3 GnuPG的详细使用方法 417
9.3.4 GnuPG使用实例 423
9.3.5 GnuPG使用中的注意事项 425
9.4应用二:使用SSH加密资料传输通道 426
9.4.1安装最新版本的OpenSSH 427
9.4.2设定○penSSH 428
9.4.3 SSH的金钥管理 432
9.4.4使用scp指令远端拷贝档案 434
9.4.5使用SSH设定「加密通道」 435
9.5应用三:使用OpenSSL进行应用层加密 437
9.6资料防泄露技术原理及其应用 438
Chapter 10通道保障:企业行动通讯资料防护 443
10.1 VPN使用需求分析 443
10.1.1 VPN简介 443
10.1.2 VPN安全技术分析 445
10.2 Linux提供的VPN类型 448
10.2.1 IPSec VPN 448
10.2.2 PPP Over SSH 449
10.2.3 CIPE:Crypto IP Encapsulation 449
10.2.4 SSL VPN 450
10.2.5 PPPTD 451
10.3使用OpenVPN建构SSL VPN 452
10.3.1 OpenVPN简介 452
10.3.2安装○penVPN 452
10.3.3制作凭证 453
10.3.4设定服务端 456
10.3.5设定用户端 457
10.3.6一个实际的设定实例 458
10.4使用IPSec VPN 459
10.4.1安装ipsec-tools 459
10.4.2设定IPSec VPN 460
Chapter 11运筹帷幄:企业Linux伺服器远端安全管理 465
11.1远端控制及管理的基本原理 466
11.1.1远端监控与管理原理 466
11.1.2远端监控与管理的主要应用范围 467
11.1.3远端监控及管理的基本内容 468
11.2使用Xmanager 3.0实现Linux远端登入管理 469
11.2.1设定Xmanager伺服器端 469
11.2.2设定Xmanager用户端 470
11.3使用VNC实现Linux远端系统管理 472
11.3.1 VNC简介 472
11.3.2启动VNC伺服器 472
11.3.3使用VNC Viewer实现Linux远端系统管理 474
11.3.4使用SSH+VNC实现安全的Linux远端桌面管理 476
Chapter 12举重若轻:企业网路流量安全管理 479
12.1网路流量管理简介 480
12.1.1流量识别 480
12.1.2流量统计分析 482
12.1.3流量限制 482
12.1.4其他方面 482
12.2需要管理的常见网路流量 483
12.3网路流量捕捉:图形化工具Wireshark 485
12.3.1 Wireshark简介 485
12.3.2层次化的资料封包协定分析方法 485
12.3.3以外挂程式技术为基础的协定分析器 486
12.3.4安装Wireshark 487
12.3.5使用Wireshark 488
12.4网路流量捕捉:命令列工具tcpdump 491
12.4.1 tcpdump简介 491
12.4.2安装tcpdump 491
12.4.3使用tcpdump 492
12.5网路流量分析—NTOP 496
12.5.1 NTOP介绍 496
12.5.2安装NTOP 498
12.5.3使用NTOP 499
12.6网路流量限制—TC技术 502
12.6.1 TC(Traffic Control)技术原理 502
12.6.2使用Linux TC进行流量控制实例 503
12.7网路流量管理的策略 508
12.7.1网路流量管理的目标 508
12.7.2网路流量管理的实际策略 509
Chapter 13兵来将挡,水来土掩:企业级防火墙部署及应用 511
13.1防火墙技术简介 512
13.2 Netfilter/Iptables防火墙框架技术原理 512
13.2.1 Linux中的主要防火墙机制演进 512
13.2.2 Netfilter/Iptables架构简介 513
13.2.3 Netfilter/Iptables模组化工作架构 515
13.2.4安装和启动Netfilter/Iptables系统 516
13.2.5使用Iptables撰写防火墙规则 517
13.3使用Iptables撰写规则的简单应用 520
13.4使用Iptables完成NAT功能 524
13.4.1 NAT简介 524
13.4.2 NAT的原理 525
13.4.3 NAT的实际使用 527
13.5防火墙与DMZ的配合使用 530
13.5.1 DMZ原理 530
13.5.2建构DMZ 531
13.6防火墙的实际安全部署建议 535
13.6.1方案一:错误的防火墙部署方式 535
13.6.2方案二:使用DMZ 536
13.6.3方案三:使用DMZ+二路防火墙 536
13.6.4方案四:通透式防火墙 536
Chapter 14铜墙铁壁:企业立体式入侵侦测及防御 539
14.1入侵侦测技术简介 540
14.2网路入侵侦测及防御:Snort 540
14.2.1安装Snort 540
14.2.2设定Snort 541
14.3撰写Snort规则 548
14.3.1规则动作 549
14.3.2协定 549
14.3.3 IP位址 549
14.3.4通讯埠编号 550
14.3.5方向运算符号(direction operator) 551
14.3.6 activate/dynamic规则 551
14.3.7 Snort规则简单应用举例 552
14.3.8 Snort规则进阶应用举例 554
14.4主机入侵侦测及防御:LIDS 556
14.5分散式入侵侦测:SnortCenter 556
14.5.1分散式入侵侦测系统的组成 556
14.5.2系统安装及部署 557
第4篇 企业Linux安全监控 560
Chapter 15管中窥豹:企业Linux系统及效能监控 561
15.1常用的效能监测工具 561
15.1.1 uptime 562
15.1.2 dmesg 563
15.1.3 top 564
15.1.4 iostat 564
15.1.5 vmstat 565
15.1.6 sar 566
15.1.7 KDE System Guard 567
15.1.8 free 568
15.1.9 Traffic-vis 569
15.1.10 pmap 570
15.1.11 strace 571
15.1.12 ulimit 572
15.1.13 mpstat 574
15.2 CPU监控详解 576
15.2.1上下文切换 577
15.2.2执行佇列 577
15.2.3 CPU使用率 578
15.2.4使用vmstat工具进行监控 578
15.2.5使用m pstat工具进行多处理器监控 580
15.2.6 CPU监控归纳 582
15.3记忆体监控详解 583
15.3.1 Virtual Memory介绍 583
15.3.2 Virtual Memory Pages 583
15.3.3 Kernel Memory Paging 583
15.3.4 kswapd 583
15.3.5使用vmstat进行记忆体监控 584
15.3.6记忆体监控归纳 585
15.4I/O监控详解 585
15.4.1 I/O监控介绍 585
15.4.2读和写资料——记忆体分页 586
15.4.3 Major and Minor Page Faults(主要分页错误和次要分页错误) 586
15.4.4 The File Buffer Cache(档案快取区) 587
15.4.5 Type of Memory Pages 587
15.4.6 Writing Data Pages Back to Disk 588
15.4.7监控I/O 588
15.4.8 Calculating IO’s Per Second(IOpS的计算) 588
15.4.9 Random. vs Sequential I/O(随机/顺序I/○) 589
15.4.10判断虚拟记忆体对I/O的影响 591
15.4.11 I/O监控归纳 592
Chapter 16见微知著:企业级Linux网路监控 593
16.1 Cacti网路监控工具简介 593
16.2安装和设定Cacti 595
16.2.1安装辅助工具 596
16.2.2安装Cacti 603
16.3使用Cacti 607
16.3.1 Cacti介面介绍 607
16.3.2建立监测点 609
16.3.3检视监测点 612
16.3.4为已有Host增加新的监控图 616
16.3.5合并多个资料来源到一张图上 617
16.3.6使用Cacti外挂程式 619
Chapter 17他山之石:发现企业网路漏洞 623
17.1发现企业网路漏洞的大致想法 624
17.1.1基本想法 624
17.1.2采用网路安全扫描 624
17.2通讯埠扫描 625
17.2.1通讯埠扫描技术的基本原理 625
17.2.2通讯埠扫描技术的主要种类 626
17.2.3快速安装Nmap 631
17.2.4使用Nmap确定开放通讯埠 632
17.3漏洞扫描 653
17.3.1漏洞扫描基本原理 653
17.3.2选择:网路漏洞扫描与主机漏洞扫描 654
17.3.3高效使用网路漏洞扫描 655
17.3.4快速安装Nessus 658
17.3.5使用Nessus扫描 660
第5篇 企业Linux安全运行维护指令、工具 664
Chapter 18终极挑战:企业Linux核心建构 665
18.1企业级Linux核心简介 665
18.2下载、安装和预备核心原始程式码 667
18.2.1先决条件 667
18.2.2下载原始程式码 667
18.2.3安装原始程式码 668
18.2.4预备原始程式码 669
18.3原始程式码设定和编译Linux核心 670
18.3.1标记核心 670
18.3.2 .config:设定核心 670
18.3.3订制核心 672
18.3.4清理原始程式码树 674
18.3.5复制设定档 674
18.3.6编译核心映射档案和可载入模组 675
18.3.7使用可载入核心模组 675
18.4安装核心、模组和相关档案 676
18.5 Linux系统故障处理 677
18.5.1修复档案系统 677
18.5.2重新安装MBR 677
18.5.3当系统无法启动时 678
18.5.4挽救已安装的系统 678
Chapter 19神兵利器:企业Linux资料备份及安全工具 679
19.1安全备份工具 679
19.1.1Amanda 679
19.1.2 BackupPC 680
19.1.3 Bacula 680
19.1.4 Xtar 681
19.1.5 Taper 681
19.1.6 Arkeia 681
19.1.7 webCDcreator 682
19.1.8 Ghost for Linux 682
19.1.9 NeroLINUX 682
19.1.10 mkCDrec 683
19.2 Sudo:系统管理工具 683
19.3 NetCat:网路安全界的瑞士刀 684
19.4 LSOF隐蔽档案发现工具 685
19.5 Traceroute:路由追踪工具 686
19.6 XProbe作业系统识别工具 687
19.7 SATAN:系统弱点发现工具 687
Appendix A企业级Linux指令速查指南 689
A.1档案系统管理指令 690
which 690
whereis 690
u mask 690
split 691
slocate 691
rm 692
rhmask 692
rcp 692
patch 693
paste 694
od 695
mv 696
mktemp 696
Isattr 697
locate 697
file 697
diffstat 698
cat 698
chattr 699
chgrp 699
find 700
cksum 703
gitview 703
cmp 704
indent 704
cp 707
touch 708
Tmpwatch 708
tee 709
cut 709
diff 709
A.2系统管理指令 711
groupdel 711
groupmod 711
id 712
pstree 712
rlogin 713
rsh 713
rwho 713
Ismod 714
insmod 714
grpunconv 714
grpconv 715
export 715
enable 715
dmesg 716
depmod 716
su 716
lastb 717
logrotate 717
newgrp 718
procinfo 718
sudo 719
suspend 719
swatch 720
tload 720
uname 721
userconf 721
vlock 722
whoami 722
whois 722
A.3系统设定指令 722
alias 722
unset 723
unalias 723
ulimit 723
set 724
rmmod 725
resize 725
sndconfig 725
setup 726
setenv 726
setconsole 726
reset 726
pwunconv 727
pwconv 727
passwd 728
ntsysv 728
modprobe 728
modi nfo 729
mkkickstart 729
chroot 730
chkconfig 730
A.4磁碟管理及维护指令 730
cd 730
df 731
dirs 731
du 732
edquota 733
eject 733
Indir 733
Is 734
mkdir 736
pwd 736
quota 737
quotacheck 737
tree 737
umount 738
sync 739
symlinks 739
swapon 740
swapoff 740
mkswap 740
mkinitrd 741
mkfs 741
mke2fs 741
mkbootdisk 742
q uotaoff 743
quotaon 743
repq uota 743
rmdir 744
stat 744
hdparm 744
fsck 745
fsck.ext2 746
fdisk 747
e2fsck 748
dd 749
badblocks 749
ar 750
bunzip2 751
bzip2 751
bzi p2recover 752
compress 752
cpio 753
dump 755
gunzip 756
gzexe 756
gzip 757
Iha 758
restore 759
tar 760
unarj 763
unzip 763
zip 764
zipinfo 766
A.5网路指令 767
arpwatch 767
cu 767
dnsconf 768
getty 769
ifconfig 769
netconf 770
netstat 770
ping 771
Appendix B网路工具资源整理 773