内容简介
本书重点关注虚拟机网络和其他高级服务,通过在一台物理主机上使用多个虚拟机来创建一个网络,从而提高你的系统管理员技能。具体内容包括通过向虚拟机添加虚拟网卡实现防火墙和路由器功能、客户端和服务端域名服务的原理和配置、实现Linux主机间的安全访问、硬件层面的安全、文件系统和单个文件的备份和恢复、配置企业级电子邮件服务器、搭建Web服务器、部署WordPress、创建邮件列表、访问远程桌面、管理软件包、向Linux和Windows主机共享文件等。
目录
目 录
译者序
前言
致谢
作者简介
第1章 配置实验服务器 1
1.1 概述 1
1.2 创建虚拟机 2
1.3 安装Linux 3
1.3.1 个性化配置与软件更新 4
1.3.2 虚拟网络配置 5
1.4 配置防火墙 14
1.5 DHCP概述 16
1.5.1 安装DHCP服务端 17
1.5.2 配置DHCP服务端 17
1.5.3 配置DHCP客户端 22
1.5.4 配置DHCP访客设备 23
1.5.5 最终的dhcpd.conf文件 25
1.6 使用Chrony配置NTP 26
1.6.1 配置NTP服务端 27
1.6.2 配置并测试NTP客户端 28
总结 30
练习 31
第2章 域名服务 32
2.1 概述 32
2.2 域名解析流程 33
2.3 域名服务的主要配置文件 34
2.3.1 NSS服务及其配置文件
nsswitch 34
2.3.2 resolv.conf文件 37
2.3.3 systemd-resolved.service 39
2.4 域名解析策略 41
2.4.1 /etc/hosts文件 41
2.4.2 mDNS 43
2.4.3 nss-DNS 45
2.5 BIND的使用 52
2.5.1 准备工作 53
2.5.2 配置缓存域名服务器 56
2.5.3 为DNS配置防火墙 58
2.5.4 启动named服务 58
2.5.5 重新配置DHCP 60
2.5.6 顶级DNS服务器的使用 61
2.6 创建主域名服务器 62
2.6.1 创建正向解析区域文件 62
2.6.2 将正向解析区域文件添加到named.conf文件 63
2.6.3 添加CNAME记录 64
2.6.4 创建逆向解析区域文件 66
2.6.5 将逆向解析区域文件添加到named.conf文件 67
2.7 BIND自动化管理 69
总结 69
练习 70
第3章 路由器 71
3.1 概述 71
3.2 工作站上的路由机制 72
3.3 创建路由器 73
3.4 设置路由器 74
3.4.1 配置内核 74
3.4.2 检查防火墙状态 75
3.4.3 防火墙配置需求 76
3.4.4 防火墙区域 77
3.4.5 配置防火墙 79
3.5 网络路由 81
3.6 复杂路由的配置 83
3.7 Fail2Ban 83
3.8 清理工作 87
总结 87
练习 87
第4章 SSH远程连接 88
4.1 概述 88
4.2 启动SSH服务 89
4.3 SSH工作原理简介 91
4.4 PPKP 92
4.5 X-Forwarding 96
4.6 X Window系统 98
4.7 SSH执行远程命令 99
总结 101
练习 102
第5章 安全 103
5.1 概述 104
5.1.1 以隐蔽求安全? 104
5.1.2 安全是什么 105
5.1.3 数据保护 105
5.2 安全威胁因素 106
5.2.1 人为因素 106
5.2.2 环境因素 106
5.2.3 物理攻击 107
5.2.4 网络攻击 108
5.2.5 软件漏洞 108
5.3 Linux与安全 109
5.3.1 登录安全 109
5.3.2 Telnet 116
5.4 基础防护措施 119
5.5 PAM 121
5.6 高级DNS安全 122
5.6.1 chroot机制 122
5.6.2 启用bind-chroot服务 122
5.7 内核层面的网络安全加固 125
5.8 限制root用户SSH远程
登录 127
5.9 深入配置f?irewalld 128
5.9.1 防火墙应急:通过CLI禁用
所有网络流量 128
5.9.2 控制特定IP地址或网络的
访问 129
5.10 恶意软件防护 132
5.10.1 恶意软件rootkit 132
5.10.2 防病毒工具ClamAV 136
5.10.3 入侵检测工具
Tripwire 138
5.11 SELinux 141
5.12 社会工程学 146
总结 147
练习 147
第6章 全面备份 149
6.1 概述 149
6.2 备份:数据恢复的救星 150
6.3 备份策略 155
6.4 tar 155
6.5 异地备份 159
6.6 灾难恢复服务商 160
6.7 备份策略的选择 160
6.8 频繁备份 160
6.8.1 怎样才算频繁 161
6.8.2 何为真正的“全量备份” 161
6.8.3 全部备份还是差异备份 162
6.8.4 自动备份的注意事项 162
6.8.5 离线主机的备份处理 162
6.9 高级备份 162
6.9.1 rsync 163
6.9.2 自动化备份 167
6.9.3 恢复测试 169
总结 169
练习 170
第7章 关于电子邮件 171
7.1 概述 171
7.2 电子邮件数据传输流程 172
7.2.1 电子邮件的结构 173
7.2.2 邮件头部 174
7.3 在服务器端配置Sendmail 177
7.3.1 安装Sendmail 178
7.3.2 配置Sendmail 178
7.3.3 配置DNS 187
7.4 在客户端配置Sendmail 189
7
前言/序言
前 言
本系列图书在结构上与其他书籍相比大不一样。整个系列共三本,分别为《Linux权威指南:从小白到系统管理员 上册(原书第2版)》《Linux权威指南:从小白到系统管理员 下册(原书第2版)》《Linux权威指南:网络服务详解(原书第2版)》,每本书的内容都紧密相扣,相互衔接,共同构成一个连贯且递进的整体。
本系列图书与其他Linux专业书籍的区别在于,它提供了一套完整的自学教程,建议你从第一本的开头逐步阅读,仔细阅读每一章节,认真完成书中的所有实验,并完成每一章的练习,直至第三本结束。即使你是Linux的零基础读者,遵循这个学习路径也能让你掌握成为Linux系统管理员所需的核心技能和知识。
本系列图书所有的实验都是在一个或多个虚拟机(Virtual Machine,VM)组成的虚拟网络中进行的。借助免费的VirtualBox虚拟化软件,你可以在任何规模合理的主机上创建这样的虚拟环境,无论是Linux操作系统还是Windows操作系统。在这个虚拟环境中,你可以自由地进行实验,甚至可以执行那些在安装Linux的过程中可能会损坏硬件主机的错误操作,你也可以通过多个快照中的任何一个,将Linux虚拟机完全恢复。这种既能承担风险又容易恢复的灵活性使你能学到更多。
本系列图书也可以作为参考资料使用。多年来,我一直将自己以前的那些课程材料作为参考,它们一直发挥着重要作用。我将此视为本系列图书的目标之一。
此外,对于书中给出的练习,并非所有问题都能通过简单地复习章节内容解决。有些问题需要亲手设计实验来找出答案,并且多数情况下很可能不止有一种方法,只要能产生正确的结果,就是“正确”的方法。
书籍设计
书籍的设计过程与书籍本身的结构同等重要——甚至可以说更为重要。书籍设计者的首要任务是制订一份需求清单,明确书籍的架构与内容。只有在此基础上,书籍的编写才能顺利进行。实际上,我经常发现,先撰写总结和练习,再创作其他内容会很有帮助。我在本书的许多章节中都采用了这种方式。
本系列图书专为像你这样志向明确的学生而设计,提供了一套完整的、端到端的Linux培训教程,目标是培养你成为一名Linux系统管理员(SysAdmin)。本系列图书将带你从零开始学习Linux,助你实现成为系统管理员的职业理想。
许多Linux培训课程都默认学员应该从初级用户课程开始学习。这些课程可能会涉及root用户在系统管理中的作用,但往往忽略了对未来系统管理员至关重要的实战经验。还有一些课程则完全避开系统管理方面的内容。大部分课程第一门课会展开一些Linux介绍,然后第二门课可能会介绍系统管理的基础知识,而第三门课可能会涉及更高级的管理主题。
坦白地说,这种循序渐进的教学方法并不适合许多已经成为Linux系统管理员的人。我们之所以能走到这一步,至少部分归功于强烈的求知欲和对快速学习的渴望。此外,我认为这也与我们旺盛的好奇心密不可分。一旦掌握了一个基本命令,我们就会开始提问,通过实验来探索它的极限、可能导致故障的情形,以及不当使用会产生的后果。我们钻研手册页(man pages)和其他文档,了解命令在各种极端场景下的用法。如果问题无法自行出现,我们会主动去“制造”问题,研究其运作机理,并掌握解决方法。我们乐于面对失败,因为从解决问题中获得的知识远胜于一帆风顺的经历。
本系列图书从一开始就深入探讨Linux系统管理。你将学习使用和管理Linux工作站和服务器所需的大量Linux工具,而且每项任务往往可以灵活运用多种工具。书中还包含许多实验,为你提供系统管理员看重的实践经验。这些实验将一步步引导你领略Linux的优雅与精妙。你会发现,Linux操作系统的精髓在于简洁,正是这种简洁性使得Linux优雅且易于理解。
基于我多年来使用UNIX和Linux的经验,这三本书旨在向你介绍作为Linux用户和Linux系统管理员日常工作中会涉及的实际操作。但是,每个系统管理员的知识体系不可能完全一致,每个人的起点、技能、目标都不同,管理的系统配置、软硬件故障、网络环境都可能存在差异。我们解决问题的思路和工具会受所接触的导师的影响,思考方式不同,对硬件的理解程度也有差别。正是一路走来的经历塑造了我们,成就了现在的系统管理员。
因此,我会在这套书中重点讲解我认为对大家重要的知识。这些知识能够提升你的技术,帮助你充分发挥创造力,独立解决你可能从未想过也未曾遇到过的问题。
经验告诉我,错误往往比成功更具教益。所以,遇到问题时,不要急于恢复到之前的快照,而应先试着分析错误产生的原因以及最佳的恢复方法。当然,如果在合理的时间内仍然无法解决,此时再恢复快照就是明智之举了。
需要明确的是,本书不是认证考试的应试指南,其目标不是帮助读者通过任何类型的认证考试,而是传授实用的系统管理技能,帮助你成为一名合格甚至优秀的Linux系统管理员。
目前,红帽(Red Hat)和思科(Cisco)的认证考试质量相对较高,它




















