Linux服务器架设

Linux服务器架设

杨鹏, 著

出版社:清华大学出版社

年代:2008

定价:79.0

书籍简介:

本书是国内资深Linux系统管理专家十余年系统管理经验的总结。本书注重实际应用,但又不唯实验论。

作者介绍:

杨鹏(网名NetSnake) 98年毕业于武汉科技大学。99年开始从事Linux系统管理相关工作。在多种行业、各种环境下部署和管理过各类Linux及服务.积累了极为丰富的系统管理和开发经验。 同时,作者还对Perl、Java、Oracle等相关技术有浓厚兴趣,曾在国内主要的技术期刊上发表过数十篇技术性文章。自2002年起,在国内最早的LinUX专业论坛——中国Linux论坛上担任“防火墙/代理服务器”板块的版主至今。 目前,作者在北京一家电子商务公司任职,读者可以通过netsnakecn@gmail.com与之联系。

书籍目录:

前言 17

第一部分 Linux基础 19

第1章 Linux背景介绍 19

1.1 那究竟什么是Linux? 19

1.2 Linux起源 20

1.3 为什么使用Linux 22

1.4 Linux主要发行版的特色和特点 23

1.4.1 以用户群分类的Linux发行版 23

1.4.2 以包管理方式分类的Linux发行版 24

1.5 怎样选择适合我的Linux发行版? 25

1.6 参考资料 26

第2章 部署Linux 26

2.1 RedHat和CentOS的区别和联系 26

2.2 安装前我应该做好哪些工作? 27

2.2.1 先搞清楚我都有哪些硬件 27

2.2.2 安装前要了解的重点——Linux磁盘管理方式 28

2.3 CentOS的安装 29

2.3.1 获取CentOS安装光盘 29

2.3.2 启动我的计算机 31

2.3.3 确定CentOS的安装模式 31

2.3.4 选择安装过程中的语言 32

2.3.5 选择我的键盘布局 34

2.3.6 这台CentOS拿来做什么——配置系统安装类型 36

2.3.7 注意!开始对硬盘分区 38

2.3.8 配置启动管理器 41

2.3.9 重要的一步:配置网卡和网络 43

2.3.10 系统安全配置 43

2.3.11 选择系统语言 44

2.3.12 设置Linux时区 45

2.3.13 设置系统超级用户. 初始帐号和密码 46

2.3.14 我们需要安装哪些软件包 47

2.3.15 终于开始安装CentOS了 48

2.4 Debian GNU/Linux的安装 49

2.4.1 为什么这么多人推荐使用Debian GNU/Linux? 49

2.4.2 去哪里能搞到Debian Linux安装系统? 49

2.4.3 启动计算机 50

2.4.4 确定Debian 4.0的安装模式 51

2.4.5 选择安装过程中的语言 51

2.4.6 选择我的键盘布局 52

2.4.7 配置网卡网络 53

2.4.8 对硬盘分区 53

2.4.9 设置超级用户. 初始帐号和密码 54

2.4.10 选择从哪里获取和安装Debian的软件包 55

2.4.11 这台Debian GNU/Linux拿来做什么——配置系统安装类型 56

2.4.12 完成软件安装, 设置如何启动我们的系统 57

第3章 Linux管理思路和和系统结构 57

3.1 如何有效的对Linux进行管理?以Linux的思路去思考问题! 58

3.2 出现问题时, 如何获得帮助? 59

3.3 文件, 一切都是文件! 60

3.4 Linux目录结构介绍 61

3.4.1 Linux目录部署方式 61

3.4.2 /根目录介绍 62

3.4.3 /etc目录介绍——注册表是多么愚蠢的配置方式 62

3.4.4 /proc目录介绍——随时了解我的系统状况 69

第二部分 Linux配置与管理 70

第4章 Linux基本配置 70

4.1 网络就是计算机——Linux网络设置 70

4.1.1 Linux如何识别我的网卡? 70

4.1.2 让Linux连上网——设置IP地址. 子网掩码和默认路由 72

4.1.3 让Linux与Internet在一起——设置Linux主机名和DNS服务器 73

4.1.4 我习惯使用图形化网络工具配置网络 73

4.1.5 听说高手都使用命令行工具配置网络 74

4.2 Linux启动时都运行了什么, 我可以控制吗? 76

4.3 Linux的一些基本管理方法 79

4.3.1 我有哪些硬件?Linux都支持吗? 79

4.3.2 我安装了哪些软件?都装在什么地方了? 81

4.3.3 如何有效的规划和管理存储? 85

4.3.4 Linux的交换分区是干嘛的——兼谈内存管理 87

4.3.5 如何查看和管理CPU 87

4.3.6 系统感觉很慢, 怎样才能知道系统负载是否正常? 90

4.3.7 配置我自己的Linux——Linux管理中的常见问题和窍门 93

第5章 Linux高级配置和管理 100

5.1 编译系统——一切软件的运行基础 101

5.1.1 了解编译器与操作系统的关系 101

5.1.2 配置如何去编译软件 102

5.1.3 补丁是什么?如何使用它? 103

5.2 内核配置. 编译和部署——怎样定制自己的内核 105

5.2.1 先把内核从Internet上弄下来 105

5.2.2 编译内核前的准备工作 106

5.2.3 常见的内核配置选项 106

5.2.4 针对不同环境的内核配置 109

5.2.5 如何编译和安装新的内核 109

5.3 Java环境和JDK的部署与配置 111

5.3.1 JDK的下载和安装 111

5.3.2 JDK的环境设置 111

5.3.3 如何保证Java环境处于最佳状态——进程与线程 112

5.4 应用广泛的网络安全加密协议——SSL和TLS 114

5.4.1 什么是非对称密码算法? 114

5.4.2 那什么又是PKI和RSA? 115

5.4.3 SSL和TLS简介 116

5.4.4 在Linux上实施SSL 116

5.5 PAM——可植入认证模块 120

5.5.1 PAM是个好东西 120

5.5.2 PAM的认证流程 121

5.5.3 常见PAM模块 122

5.5.4 PAM 模块的参数使用 122

5.5.5 NSS——重要的名称服务切换 123

第三部分 传统的Internet服务器 125

第6章 DNS服务器——BIND 125

6.1 我们每天都在用DNS 125

6.2 DNS 基础概念 126

6.3 Linux上的DNS系统——BIND 128

6.4 安装BIND 9 DNS服务器 130

6.5 我不负责任何域名的解析, 只想让我的用户查询域名更快——缓存DNS服务 132

6.6 我是这个域名的管理员, 我要域名指向哪就指向哪——主DNS服务 136

6.7 一个DNS服务器看来不够, 需要多台服务器都提供解析服务——辅助DNS服务 137

6.8 我需要协助他人进行域名解析——转发DNS服务 138

6.9 如何解析域名, 以便让别人可以方便的发邮件给我? 139

6.10 DNS服务器好了, 让大家的Linux也用我的DNS服务吧 139

6.10.1 让Linux按照我要求的顺序查询名字——配置/etc/host.conf 140

6.10.2 指定Linux使用哪里的DNS服务器——配置/etc/resolv.conf 140

6.11 如何检查我的域名解析是否正确?出现问题如何解决? 141

6.12 如何构建安全的BIND DNS服务 143

6.13 大型DNS系统技术:域名解析的动态加载DLZ 146

6.13.1 要使用DLZ, 在编译BIND时就要让它支持 147

6.13.2 准备DLZ的数据来源 147

6.13.3 配置BIND使用DLZ 148

6.13.4 进行DLZ形式的DNS解析 148

第7章 电子邮件服务器——qmail 150

7.1 什么是电子邮件? 150

7.2 Linux下有哪些电子邮件服务器?它们都有哪些优缺点? 152

7.3 电子邮件服务工作细节——POP3. SMTP命令简介 153

7.3.1 SMTP协议工作流程和命令 153

7.3.2 POP3协议工作流程和命令 155

7.3.3 UNIX下的邮件格式 156

7.4 为什么选择qmail? 157

7.5 获取和安装qmail 158

7.5.1 获取qmail 158

7.5.2 获取qmail补丁 158

7.5.3 准备安装qmail 160

7.5.4 安装qmail 160

7.5.5 如果要让qmail支持认证, 得有一个认证程序——checkpassword 161

7.5.6 协助qmail运行的守护程序:tcpserver 162

7.5.7 另一个qmail守护程序:daemontools 162

7.5.8 可以让用户和域管理更强大. 更方便的程序:vpopmail 164

7.6 qmail是如何配置的 165

7.7 先让qmail运行起来看看 167

7.8 让qmail良好运行——使用daemontools控制qmail运行 172

7.8.1 把qmail设置为daemontools的一个服务 172

7.8.2 为qmail设置附加的日志服务 174

7.8.3 控制daemontools服务的启动. 停止和状态 175

7.8.4 一个完整的daemontools控制脚本 176

7.9 我现有的认证方式五花八门, 怎样让qmail支持我的认证方式? 179

7.10 管理qmail域. 虚拟域. 用户和别名 180

7.10.1 用户管理 181

7.10.2 邮件别名管理 181

7.10.3 虚拟域管理 181

7.11 如果我使用vpopmail, 那要如何管理qmail的虚拟域和用户 182

7.11.1 当vpopmail使用文件系统存放用户信息时 182

7.11.2 当vpopmail使用MySQL数据库存放用户信息时 183

7.11.3 使用vpopmail时管理qmail的域 184

7.11.4 使用vpopmail时管理qmail的用户 189

7.11.5 使用vpopmail时管理qmail的别名 190

7.12 我不欢迎有的人给我发邮件, 怎样直接在服务器上过滤掉——maildrop上场 190

7.12.1 获取和安装maildrop 191

7.12.2 整合qmail和maildrop, 让maildrop帮我们过滤不想要的邮件 192

7.13 有了邮件过滤, 还要反垃圾邮件吗? 193

7.13.1 专业的反垃圾邮件系统——Spam-Assassin 193

7.13.2 唯一比垃圾邮件更讨厌的, 就是带病毒的垃圾邮件——Qmail病毒扫描方案 194

7.13.3 让这些专业系统为qmail服务——安装qmail-scanner 195

7.13.4 使用qmail-scanner 198

第8章 Mail服务器——Postfix 198

8.1 Postfix简介 198

8.2 Postfix架构与工作流程 199

8.2.1 Postfix如何接收邮件 199

8.2.2 Postfix如何转发邮件 201

8.2.3 Postfix主要配置文件和命令 202

8.3 获取和安装Postfix 204

8.3.1 从源代码开始安装Postfix 204

8.3.2 以二进制方式安装Postfix 206

8.4 配置Postfix 207

8.4.1 让Postfix跑起来 207

8.4.2 让Postfix支持SMTP认证 209

8.5 控制我的Postfix服务器, 让它按我的要求工作 211

8.5.1 控制客户端如何访问我的Postfix 211

8.5.2 利用Postfix自身的能力防范垃圾邮件 212

8.5.3 调整Postfix的性能跟稳定性 213

8.6 Postfix也需要邮件过滤 214

8.6.1 再次见到强大的maildrop邮件过滤系统 215

8.6.2 让maildrop帮助Postfix过滤邮件 216

8.6.3 还是专业的反垃圾邮件Spam-Assassin 217

8.6.4 让Postfix. maildrop和Spam-Assassin一起工作 217

8.6.5 为客户提供杀毒服务——Postfix病毒扫描方案 218

8.6.6 整合Postfix. maildrop和ClamAV 218

第9章 POP3与IMAP邮件服务器 219

9.1 邮件访问协议IMAP简介 219

9.2 强大而复杂的IMAP命令 220

9.3 另一个邮件领域的强者——Courier 邮件服务器 225

9.3.1 灵活. 独立的基础认证服务——Courier authlib 225

9.3.2 安装Courier authlib 225

9.3.3 让Courier authlib为我们提供认证服务 227

9.4 构建Courier POP3与IMAP服务 229

9.4.1 安装Courier POP3/IMAP服务器 229

9.4.2 配置Courier POP3服务 230

9.4.3 启动Courier POP3服务并进行测试 231

9.4.4 配置Courier IMAP服务 232

9.4.5 启动Courier IMAP服务并测试一下 234

9.4.6 构建安全的Courier POP3与IMAP服务 236

9.5 邮件系统结构与角色总结 238

第10章 WWW服务器——Apache 240

10.1 为什么WWW如此流行? 241

10.2 世界第一的WWW服务器——Apache 244

10.3 我应该选择什么版本……Apache 1.3. 2.0和2.2 244

10.4 Apache的安装 245

10.5 在Apache中整合PHP——最流行的Web动态语言 246

10.6 在Apache中整合Perl——曾经的CGI王者 248

10.7 在Apache中整合Tomcat——新兴的Java容器组合 249

10.8 在Apache中整合SSL——必要的安全措施 250

10.9 让我们来了解一下Apache配置文件 250

10.9.1 配置Apache服务器的工作方式 251

10.9.2 如何控制Apache的日志输出 253

10.9.3 我要如何添加. 配置Apache的模块? 254

10.9.4 如何配置Apache以支持多个网站? 255

10.10 Internet很危险滴——使用SSL加密我们的WWW服务 256

10.10.1 向用户证明自己是真正的服务提供者——基本的SSL认证配置 257

10.10.2 让用户证明自己是合法的——双向的SSL认证配置 258

10.11 为不同用户提供不同的访问权限——Apache认证与授权 260

10.11.1 最简单. 易用的认证——纯文本用户认证 261

10.11.2 和其他通用认证方式结合——使用LDAP目录作为数据来源的用户认证 263

第11章 FTP服务器——wu-ftpd. vsftpd和ProFTPD 264

11.1 FTP服务器的比较和选择 264

11.2 强大的FTP服务器——wu-ftpd 265

11.2.1 wu-ftpd的获取和安装 265

11.2.2 配置wu-ftpd 267

11.2.3 控制用户访问 267

11.3 安全的FTP服务器——vsftpd 271

11.3.1 vsftpd的获取和安装 271

11.3.2 启动和停止vsftpd 271

11.4 vsftpd的基本配置 273

11.4.1 让FTP服务器也使用SSL加密 273

11.4.2 配置vsftpd日志 274

11.4.3 如何控制用户对FTP服务器的访问 274

11.4.4 定制我的vsftpd 276

11.4.5 vsftpd对不同FTP工作模式的支持 277

11.4.6 节省网络资源——控制用户超时 278

11.4.7 调整vsftpd的性能 278

11.5 vsftpd用户的管理 279

11.5.1 为公众提供服务——那就使用匿名用户吧 279

11.5.2 为已经存在的用户提供服务——只能使用本地用户了 280

11.5.3 控制用户登录到我的vsftpd服务器 280

11.6 灵活的FTP服务器——ProFTPD 281

11.6.1 获取和安装ProFTPD 281

11.7 ProFTPD基本配置 282

11.7.1 配置一台最简单的ProFTPD 282

11.7.2 配置允许匿名访问的ProFTPD 284

11.7.3 在一台服务器上提供多个FTP服务——ProFTPD虚拟主机 285

11.8 ProFTPD 权限指令解析 287

11.9 相关资源 288

第12章 时间服务器——NTPD 288

12.1 先了解一下Linux时间和时区 289

12.2 在Linux下架设NTP服务器 291

12.2.1 获取和安装NTP服务器 291

12.2.2 NTP服务器进程ntpd的基本配置 292

12.2.3 NTP服务器好了, 现在可以让客户端使用我的NTP服务了 293

12.3 配置我的NTP服务器 295

12.3.1 告诉我的NTP服务器如何去同步时间 295

12.3.2 我只想为特定网络中的用户提供NTP服务 296

12.4 怎样确保只有经过认证的用户, 才能访问我的NTP服务? 296

12.5 一个基本的NTP配置实例 297

第四部分 办公环境中的Linux服务器 298

第13章 目录服务器——OpenLDAP 298

13.1 什么是LDAP目录? 300

13.1.1 LDAP目录服务发展简史 300

13.1.2 LDAP目录服务的特点 300

13.1.3 什么是LDAP目录树? 301

13.2 LDAP服务器介绍 302

13.2.1 OpenLDAP的获取 303

13.2.2 怎样编译OpenLDAP 303

13.2.3 启动和关闭OpenLDAP 306

13.3 配置我的第一台OpenLDAP, 让它run起来再说 308

13.4 管理OpenLDAP数据 310

13.4.1 从头开始添加LDAP数据到OpenLDAP服务器 311

13.4.2 从现有的OpenLDAP服务器中检索和获取数据 315

13.4.3 添加. 修改和删除现有的LDAP数据 317

13.5 OpenLDAP如何组织和管理数据——OpenLDAP模型管理 318

13.5.1 什么是LDAP模型? 318

13.5.2 OpenLDAP模型的存储和组织 319

13.5.3 OpenLDAP模型的定义 320

13.5.4 我的需求比较特殊, 能否定义自己的LDAP模型? 322

13.6 为不同用户提供不同的访问权限 323

13.6.1 什么是访问控制列表?——LDAP ACL介绍 323

13.6.2 用ACL来控制用户的访问权限 324

13.7 LDAP数据很重要, 所以要特别注意安全管理 326

13.7.1 使用ACL机制来提高OpenLDAP安全性 326

13.7.2 使用SSL来提高OpenLDAP安全性 327

13.7.3 使用SASL进行用户认证 330

13.8 为用户提供分布式. 高效的目录服务——OpenLDAP目录集群.. 330

13.8.1 OpenLDAP是如何实现集群的——slurpd复制简介 330

13.8.2 配置我的OpenLDAP集群 331

13.8.3 让LDAP为Linux主机提供认证 333

第14章 Windows文件服务器——Samba 334

14.1 一般办公环境需要Windows服务器么——Samba起源 334

14.2 微软网络共享协议发展 335

14.3 获取和安装Samba 337

14.4 Samba是如何工作的——Samba工作方式和体系介绍 339

14.5 Samba的基本配置 343

14.6 Samba认证和安全机制 345

14.6.1 Windows与Linux用户映射 345

14.6.2 灵活的Samba用户权限 348

14.7 有趣的Samba变量 350

14.8 无限制扩展Samba的能力——虚拟文件系统 352

第15章 动态计算机配置服务器——dhcpd 355

15.1 什么是动态计算机配置? 356

15.2 简化网络管理员的工作——DHCP与BOOTP工作原理 356

15.3 几种常见的DHCP 地址管理方式 357

15.4 Linux下的DHCP服务器 358

15.4.1 获取和安装dhcp 358

15.4.2 配置我的第一台dhcp服务器 359

15.5 DHCP协议是如何工作的——DHCP服务器与客户端指令详解 361

15.5.1 DHCP服务器如何告诉别人自己可以提供IP地址? 361

15.5.2 dhcp客户端怎样找到网络中的DHCP服务器? 362

15.6 DHCP服务器配置详解 362

15.6.1 让dhcpd按照我的要求运行——全局配置 363

15.6.2 让dhcpd为指定的网络提供服务——子网配置 363

15.6.3 有一些特殊用户需要特殊对待——单个客户配置 364

第16章 防火墙和IP伪装 364

16.1 路由器是如何工作的?我们也能DIY专业的路由器吗? 364

16.2 用Linux实现一个基本的路由器 366

16.3 什么是包过滤——Linux NetFilter基础 367

16.4 怎样让内部用户访问外部网络——NetFilter之伪装 370

16.5 怎样让外部用户访问内部网络——NetFilter之重定向 371

16.6 开始强大的iptables之旅吧 372

16.6.1 iptables为何如此强大?它使用模块扩展自己的能力 372

16.6.2 什么是iptables的表. 链和规则 373

16.6.3 如何让iptables显示我们需要的信息? 375

16.6.4 如何让iptables区分对待不同的服务. 行为和数据? 376

16.6.5 如何更精密的控制iptables匹配? 377

16.6.6 最后, 如何处理这些服务. 行为和数据? 379

第17章 代理服务器——Squid和Socks5 381

17.1 代理服务器的原理和机制 381

17.1.1 如果用户需要通过我们的代理访问Internet 382

17.1.2 如果用户需要通过我们的代理访问我们内部的Web服务器 384

17.2 Linux下常用代理服务器软件介绍 385

17.2.1 Squid 385

17.2.2 Socks5 386

17.2.3 mod_proxy 386

17.3 获取和安装Squid 387

17.3.1 获取Squid 387

17.3.2 编译和安装Squid 387

17.4 Squid基本配置 390

17.4.1 让Squid为用户提供访问Internet的代理服务 390

17.4.2 让用户感觉不到自己在使用代理上网——把Squid与网关结合起来提供透明代理服务 396

17.4.3 用Squid为外部用户提供访问我们自己Web服务器的代理服务 396

17.5 控制哪些用户. 如何访问我们的Squid 397

17.6 要求用户证明自己的身份后才能访问我们的Squid代理 400

17.6.1 使用最简单的NCSA方式验证用户 400

17.6.2 使用常见的Windows NTLM方式验证用户 401

17.6.3 使用MySQL数据库验证用户 402

17.6.4 使用LDAP验证用户 403

17.7 调整Squid性能 404

17.7.1 优化Squid的网络 404

17.7.2 配置Squid的缓存 405

17.7.3 调整Squid的缓存对象 406

17.7.4 扩展Squid的功能 408

17.7.5 控制代理用户超时与网络超时 409

17.7.6 让Squid配合我们进行管理 410

17.7.7 Squid的一些其他配置 411

17.8 管理Squid的日志 412

17.9 Squid日志的分析 413

17.10 强大的代理服务网络——Squid代理服务器集群 415

17.10.1 什么是Squid代理服务器集群 415

17.10.2 在Squid中配置代理服务器集群 415

17.11 socks5代理服务器 416

17.11.1 获取和安装socks5代理服务器 416

17.11.2 配置一台基本的socks5代理服务器 417

17.11.3 更多的socks5配置选项 418

17.12 参考资料 419

第18章 拨号和VPN服务器 419

18.1 公共网络上的私有网络——什么是虚拟专网VPN? 419

18.2 基于SSL的安全虚拟专网——SSL VPN 420

18.3 Linux下的VPN和SSL VPN介绍 420

18.4 搭建Linux下的VPN服务器 420

18.4.1 获取和安装PPTP服务器 421

18.4.2 配置PPTP服务器 421

18.4.3 启动和管理PPTP VPN服务 423

18.5 搭建Linux下的SSL VPN服务器 427

18.5.1 获取和安装OpenVPN 428

18.5.2 配置SSL VPN服务 429

18.5.3 使用SSL VPN服务 430

第19章 入侵检测服务器——Snort 432

19.1.1 网络中的便衣——什么是入侵检测 432

19.1.2 什么是Snort 434

19.2 部署Snort 435

19.2.1 网络入侵检测系统的关键——设计IDS网络部署 435

19.2.2 获取和安装Snort 437

19.3 用作网络嗅探器的Snort 439

19.4 另一种常见嗅探器——tcpdump 442

19.5 用作IDS节点的Snort 443

19.6 让Snort按照我们的要求工作 444

19.6.1 Snort规则基础 444

19.6.2 当检测到可能的风险时, Snort如何处理? 445

19.6.3 如何检测不同的协议 445

19.6.4 如何匹配IP地址与端口号 446

19.6.5 如何按照数据流动方向检测风险 446

19.6.6 对数据包进行分析检测——Snort核心 446

19.6.7 最基本的分析检测规则 446

19.6.8 分析检测数据包中的网络信息 447

19.6.9 分析检测数据包中的内容信息 448

19.6.10 在分析检测完成后做更多的事情 448

19.7 保证Snort的正常运行 449

19.8 参考资料 449

第20章 远程登陆服务器——OpenSSH 450

20.1 什么是安全的远程登陆服务? 450

20.2 获取与安装OpenSSH 451

20.3 配置OpenSSH 452

20.4 配置OpenSSH使用Public Key(RSA/DSA)证书认证 453

20.4.1 在OpenSSH服务器上配置Public Key认证 453

20.4.2 在Linux客户端上配置Public Key认证 453

20.4.3 在Windows客户端上配置Public Key认证之SSH Secure Shell 454

20.4.4 在Windows客户端上配置Public Key认证之SecureCRT 458

20.5 让SSH为我们转接服务 462

20.6 安全工具的安全措施 462

第21章 版本控制服务器——CVS 464

21.1 版本控制工具发展简史 464

21.2 CVS简介 465

21.3 获取和安装CVS 465

21.4 CVS服务器结构 469

21.4.1 什么是CVS仓库(Repository) 469

21.4.2 那什么又是CVS模块(Module) 470

21.4.3 CVS如何组织. 管理文件和目录 471

21.5 使用CVS管理我们的源代码 471

21.5.1 使用用户名. 密码登录到CVS服务器 471

21.5.2 创建第一个新项目 472

21.5.3 从项目中提取源代码文件 474

21.5.4 把本地的文件更新到远程CVS服务器中 475

21.5.5 把远程CVS服务器的文件更新到本地 476

21.5.6 添加本地文件到远程CVS服务器 476

21.5.7 同时从本地和远程删除文件 477

21.5.8 同时从本地和远程添加与删除目录 477

21.5.9 从本地和远程移动文件与目录 478

21.5.10 怎样检查一个文件, 在本地跟远程之间的区别 478

21.6 CVS权限管理 479

21.6.1 使用CVS专用的用户名/密码文件管理认证 480

21.6.2 使用系统用户管理CVS认证 481

第22章 源代码管理服务器——Subversion 481

22.1 什么是Subversion? 481

22.2 Subversion的发展 481

22.3 Subversion与CVS主要特性比较 482

22.4 获取和安装Subversion 482

22.5 Subversion版本仓库规划 483

22.6 创建Subversion版本仓库 484

22.7 Subversion认证与权限 487

22.7.1 建立基于svnserve的Subversion网络服务 487

22.7.2 svnserve模式下的用户认证 489

22.7.3 svnserve模式下的权限控制 490

22.7.4 控制每个目录的访问权限 490

22.7.5 建立基于Apache的Subversion网络服务 491

22.7.6 Apache模式下的用户认证 492

22.8 Subversion版本仓库管理 493

22.8.1 Subversion版本仓库与事务树概念 493

22.8.2 Subversion如何存储和组织数据 494

22.8.3 什么是Subversion钩子? 495

22.9 Subversion源代码管理 497

22.10 常用的Subversion管理命令 497

22.10.1 在服务器上查看当前的版本库内容——svnlook 498

22.10.2 在服务器上管理版本库——svnadmin 499

22.10.3 在服务器上直接导出. 导入Subversion数据——svndumpfilter 500

第23章 备份与同步服务 502

23.1.1 数据备份方式概述 502

23.1.2 Linux上的数据备份工具 503

23.2 何时备份?备份什么?备份到哪?——浅谈备份策略 503

23.2.1 如何定义自己的备份级别 503

23.2.2 我应该把数据备份到哪里? 503

23.2.3 我应该什么时候备份? 504

23.2.4 多长时间备份一次合适? 504

23.2.5 把这些备份因素综合起来 505

23.3 本地文件备份 505

23.3.1 tar基本用法 505

23.3.2 使用tar备份 510

23.4 本地磁盘备份 510

23.5 远程文件备份 511

23.5.1 获取和安装rsync 512

23.5.2 配置rsync服务器 512

23.5.3 启动与检查rsync服务器 513

23.5.4 配置需要验证的rsync服务器 515

23.5.5 rsync应用示例 517

第五部分Linux高级应用服务器 518

第24章 Java 容器——Tomcat 518

24.1 Servlet简介 518

24.2 Tomcat简介 519

24.3 Tomcat如何工作 520

24.4 获取和安装Tomcat 521

24.5 让Tomcat运行起来 522

24.6 Tomcat是如何组织它的目录的 523

24.7 配置Tomcat 524

24.8 管理和配置Tomcat用户及权限 528

24.9 怎样通过浏览器管理Tomcat 529

24.10 在Tomcat上部署Java Web应用 531

第25章 Java容器——Resin 532

25.1 Resin简介 532

25.2 获取和安装Resin 533

25.3 运行Resin 534

25.3.1 独立的Resin 534

25.3.2 与Apache结合的Resin 535

25.4 管理Resin 537

25.4.1 以浏览器方式管理Resin 537

25.4.2 以配置文件方式管理Resin 538

25.4.3 在Resin部署我们的应用 539

第26章 数据库服务器——MySQL 541

26.1 什么是SQL? 541

26.2 什么是MySQL 542

26.3 MySQL的获取和安装 543

26.4 让MySQL跑起来 544

26.5 什么是MySQL数据存储引擎?我应该用哪种存储引擎? 547

26.5.1 MySQL中的数据存储引擎 547

26.5.2 如何在MySQL中使用不同的数据存储引擎 548

26.6 使用MySQL 549

26.6.1 从终端访问MySQL 549

26.6.2 对MySQL进行一些基本的操作 550

26.6.3 从外部导入数据到MySQL 553

26.7 配置MySQL 555

26.8 优化MySQL的性能 556

26.9 建立强大的数据库集群——MySQL集群介绍 558

26.9.1 MySQL集群结构 559

26.9.2 安装集群中的所有MySQL服务器 560

26.9.3 配置MySQL集群 560

26.9.4 启动MySQL集群 562

26.9.5 检查MySQL集群是否正常工作 562

第27章 数据库服务器——Oracle 564

27.1 Oracle发展历程 564

27.2 在Linux上安装Oracle 9i 565

27.2.1 安装Oracle前的准备工作 565

27.2.2 小心翼翼的安装Oracle 9i 567

27.2.3 Oracle 9i安装后的管理 582

27.3 管理Oracle 9i 591

27.3.1 增强Oracle终端界面的友好程度 591

27.3.2 Oracle的启动过程 592

27.3.3 怎样安全的关闭Oracle 594

27.3.4 配置Oracle网络接口 595

27.3.5 配置Oracle TNS网络 597

第28章 集群服务器——LVS 597

28.1 什么是计算机集群? 597

28.2 那什么又是LVS? 598

28.3 LVS的工作原理 598

28.4 LVS的工作模式 599

28.5 如何部署LVS? 600

28.6 LVS的算法解析 601

28.7 如何管理LVS? 602

28.7.1 管理LVS的虚拟服务 602

28.7.2 管理LVS的真实服务器 603

28.7.3 查看和管理当前的LVS配置 604

第29章 Linux双机 605

29.1 什么是双机? 605

29.2 如何用Linux实现双机? 605

29.3 Heartbeat出场 605

29.4 获取和安装Heartbeat 606

29.5 通过Heartbeat部署HA 607

29.5.1 ha.cf 607

29.5.2 haresources 608

29.6 启动HA 609

第六部分 发展中的Linux服务器 612

第30章 配置管理服务器——GNU cfengine 612

30.1 什么是配置管理?我需要配置管理吗? 613

30.2 什么是cfengine? 613

30.3 cfengine系统架构和流程 615

30.4 获取与安装cfengine 616

30.5 建立配置管理体系 617

30.6 学会与cfengine沟通 621

30.7 cfengine配置文档结构 622

30.8 使用cfengine的变量 625

30.8.1 在cfengine管理中心进程中使用的变量 625

30.8.2 在cfengine各个模块中都可以使用的变量 627

30.9 cfengine到底能为我们做什么? 629

30.9.1 控制cfengine管理过程中的变量 629

30.9.2 控制cfengine管理过程中的类 630

30.10 让cfengine帮助我们管理整个系统 632

30.10.1 让cfengine为我们复制需要的文件 632

30.10.2 让cfengine帮我们管理系统网络 634

30.10.3 让cfengine替我们管理磁盘 634

30.10.4 cfengine能如何操作目录与文件 635

30.10.5 禁止或者恢复系统文件 636

30.10.6 编辑系统文件 637

30.10.7 让cfengine管理系统的链接 643

30.10.8 监视和管理系统中的进程 644

30.10.9 自动安装. 删除和升级系统中的软件包 645

30.10.10 通过cfengine自动执行指定的命令 646

30.11 看看如何真正让cfengine替我们干活 647

30.11.1 建立基本配置文件 647

30.11.2 建立配置管理文件 649

30.11.3 在被管理的服务器上自动设定crontab 649

30.11.4 在被管理的服务器上自动安装软件 651

30.11.5 自动监控被管理服务器上的进程 652

30.11.6 保证被管理服务器的系统文件一致 652

30.12 如何解决cfengine管理架构中的问题 653

第31章 流媒体服务器——Helix Server 653

31.1 Linux下的流媒体服务器 654

31.2 RealNetworks Helix DNA Server的获取和安装 654

31.3 启动Helix DNA Server 656

31.4 让Helix DNA Server为我们提供服务 657

31.5 管理Helix DNA Server 658

31.5.1 服务器设置 659

31.5.2 安全设置 660

31.5.3 日志与监控 661

第32章 VoIP服务器——Asterisk 662

32.1 用Linux实现免费电话大餐 662

32.2 用Asterisk提供免费的VoIP服务 663

32.3 获取Asterisk及其相关软件 664

32.4 Asterisk及其相关软件的安装 665

32.5 Asterisk硬件及其相关配置 669

32.5.1 Asterisk硬件板卡信令 669

32.5.2 Asterisk信令协议 670

32.5.3 Asterisk板卡配置实例 670

32.6 Asterisk软件基本配置 671

32.6.1 可选的数据源配置 672

32.6.2 Asterisk基本配置 673

32.7 我的第一台电话交换机——基本的分机. 出入路由和DialPlan 674

32.8 与其他VoIP网络互联 676

32.8.1 与其他Asterisk互联 676

32.8.2 与公共VoIP网络相连 678

32.9 Asterisk DialPlan拨号方案初探 679

32.10 更多有用的DialPlan 682

32.11 Asterisk Realtime 684

内容摘要:

本书是国内资深Linux系统管理专家十余年系统管理经验的总结。本书注重实际应用,但又不唯实用论。本书详细的阐述了在Linux下构建各种高级服务系统的方法,特别针对系统管理员日常管理工作中最常见的困惑、最需要解决的问题,做了细致的分析和解说,从最初步的安装,到系统的安全和优化,以及各种服务的搭建和管理。各个层次的系统管理员都能够从本书中获取有益的信息,并学习到有效的管理方法和先进的管理思想。

编辑推荐:

《Linux服务器架设》是第一本完全从管理员角度深入讲解Linux服务器管理的书籍;国内一线Linux系统管理专家;10年经验汇聚。
《Linux服务器架设》通俗易懂地讲解如何在Linux上实现各种服务;深入剖析服务器架设及管理过程中的各种实际问题;提供作为系统管理员必须的关键性思维方式和思考方法。

书籍规格:

书籍详细信息
书名Linux服务器架设站内查询相似图书
9787302185079
如需购买下载《Linux服务器架设》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位清华大学出版社
版次1版印次1
定价(元)79.0语种简体中文
尺寸26装帧平装
页数 697 印数 4000

书籍信息归属:

Linux服务器架设是清华大学出版社于2008.10出版的中图分类号为 TP316.89 的主题关于 Linux操作系统 的书籍。