在这本书中,我们将学习管理真正的基于 linux 的网络所需要的概念。 我们的目标是帮助读者从初学者或中级 Linux 用户成长为能够管理和支持真正的基于 Linux 的网络的人。 本书以几个介绍性章节开始,在这些章节中,读者将设置他们的环境,然后刷新一些基础知识,作为本书其余部分的基础。 从那里,更高级的主题将被有用的例子覆盖,读者将能够跟随跟随获得有价值的实践手。
在本文中,我们将介绍网络管理员通常在作业中执行的任务,例如安装 Linux、设置 DHCP、共享文件、IP 地址、监视资源等等。 这些例子涵盖的不是一个,而是两个流行的发行版,Debian 和 CentOS。 由于这两个发行版在企业中非常受欢迎,读者将准备好基于一个发行版或另一个发行版(以及无数基于它们的其他发行版)管理网络。
最后,最后几章将介绍防止入侵和攻击的最佳实践,以及在出现问题时为您提供帮助的故障排除。
第一章,设置你的实验环境,介绍了在本书中设置你的实验环境的过程。 介绍了安装 Debian 和 CentOS,以及使用虚拟机的优缺点。
第二章、重温 Linux 网络基础,为读者提供了核心 Linux 概念的基础,为本书的其他内容,如 TCP/IP、主机名解析、IP 和网络工具套件奠定了基础。
第 3 章,通过 SSH 在节点之间通信,涵盖了所有 SSH 的内容。 在本章中,我们将了解如何使用 SSH 以及如何设置一个 OpenSSH 服务器以允许其他节点连接。 还介绍了scp
命令,它允许我们将文件从一台机器传输到另一台机器。
第 4 章、设置文件服务器涵盖了 Samba 和 NFS。 在这里,我们将讨论何时适合使用其中一种而不是另一种,以及配置和装载这些共享。
第 5 章、监控系统资源讨论了 Linux 系统上的资源监控,如检查空闲磁盘空间、检查可用内存、旋转日志和查看日志。
第 6 章、配置网络服务是关于将我们的网络连接在一起的所有服务。 这里将讨论 DHCP 和 DNS 服务器等主题。 NTP 也加入了进来。
第七章,通过 Apache 托管 HTTP 内容,涵盖了 Apache,这是目前世界上使用最多的 web 服务器软件。 在这里,我们不仅将安装 Apache,还将配置它并管理模块。 还介绍了虚拟主机。
第 8 章、理解高级网络概念通过讨论更高级的主题,如子网、服务质量、DHCP 和 DNS 中的冗余等等,将读者带到下一个层次。
第 9 章,保护您的网络,讨论了加固我们的系统以防止未经授权的访问。 在这里,我们将介绍 iptables、fail2ban、SELinux 等等。
第 10 章,故障排除网络问题总结了我们的旅程,提供了一些故障排除技巧,如果您遇到问题可以使用。
这本书要求您拥有一台或多台能够运行 Debian 或 CentOS 的计算机,最好两者都能运行。 不管您是在虚拟机还是物理硬件上运行它们,惟一的要求是您应该能够安装其中一个或两个发行版,并通过终端访问它们。 这些安装需要根级别访问。
虽然您当然可以使用已有的任何 Linux 安装,但强烈建议使用单独的新安装,因为我们的一些主题如果在生产网络上运行,可能会造成干扰。 如果你有疑问,VirtualBox 或者你手边的旧机器就可以了。 网络访问是必需的,但考虑到本书的主题,这是不言而喻的。
一些通用的 Linux 技术是需要的。 绝不是要求用户是先进的,因为这本书的目的是升级您的现有知识。 话虽如此,为了获得最流畅的体验,你应该已经熟悉了一些东西。 首先,您应该已经知道如何使用文本编辑器修改配置文件。 本书没有假设您使用哪种文本编辑器,这完全取决于您。 只要您了解任何文本编辑器,无论是 nano, vim,甚至 gedit,您就会处于良好的状态。 如果您可以打开根用户拥有的配置文件,然后进行更改并保存它,那么就完成了所有设置。 如果有疑问,nano 对于初学者来说是一个很好的文本编辑器,只需要几分钟就可以学会。 对于更高级的用户,vim 是一个很好的选择。 说到根用户,您还应该理解作为根用户和普通用户运行命令之间的区别。 此外,您应该能够导航文件系统并进行浏览。
然而,即使您需要温习文本文件的编辑或切换到根用户,也不要让这些阻止您。 网上有相当多的知识可以用来复习,大多数 Linux 的文本编辑器都提供了非常好的文档。
本书的目标读者是那些已经了解 Linux 基础知识、想要学习如何管理基于 Linux 的网络或将他们的技能提升到更高水平的用户。 这既可以用于支持全 linux 网络,也可以用于支持混合环境。 本书带领读者从安装 Debian 等简单的主题,到子网等更高级的概念。 读完这本书,您应该有足够的知识来建立一个完全网络化的环境,包括这样一个网络应该具备的所有组件。 如果这本书让你兴奋,那么这本书绝对适合你!
然而,在本书中,我们只关注与 Linux 相关的现实世界的例子。 如果您的目标是获得思科认证或获得其他一些高级认证,这里可能不是最适合您的地方。 在这里,它都是关于实际的例子,而不是过于关注理论。 虽然认证手册很简洁,但在这本书中,我们完成了一些事情——当你的老板或客户要求你实现 Linux 网络时,你需要做的真正的事情。 如果这是你的目标,那你肯定来对地方了。
在这本书中,你会发现许多不同的文本样式来区分不同种类的信息。 下面是这些风格的一些例子以及对它们含义的解释。
文本中的代码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟 url、用户输入和 Twitter 句柄如下所示:“在大多数情况下,这将是/dev/sda
。”
一段代码设置如下:
default-lease-time 86400;
max-lease-time 86400;
option subnet-mask 255.255.252.0;
option broadcast-address 10.10.99.255;
option domain-name "local.lan";
authoritative;
subnet 10.10.96.0 netmask 255.255.252.0 {
range 10.10.99.100 10.10.99.254;
option routers 10.10.96.1;
option domain-name-servers 10.10.96.1;
}
任何命令行输入或输出都写如下:
systemctl status httpd
任何需要以 root 权限运行的命令都将以#
字符作为前缀,如下所示:
# yum install httpd
新词语、重要词语以粗体显示。 您在屏幕上看到的单词,例如菜单或对话框中,会出现这样的文本:“一旦完成,您可以通过单击扫描**,然后保存扫描来保存结果。”**
警告或重要说明显示在这样的框中。
提示和技巧是这样的。
我们欢迎读者的反馈。 让我们知道你对这本书的看法——你喜欢或不喜欢这本书。 读者反馈对我们来说很重要,因为它能帮助我们开发出你能真正从中获益最多的游戏。
要向我们发送一般性的反馈,只需发送电子邮件<[[email protected]](mailto:[email protected])>
,并在邮件的主题中提到这本书的标题。
如果有一个主题,你有专业知识,你有兴趣写或贡献一本书,请参阅我们的作者指南www.packtpub.com/authors。
现在,你已经自豪地拥有了一本书,我们有一些东西可以帮助你从购买中获得最大的好处。
您可以从您的帐户http://www.packtpub.com下载您购买的所有 Packt Publishing 图书的示例代码文件。 如果您在其他地方购买这本书,您可以访问http://www.packtpub.com/support并注册,将文件直接通过电子邮件发送给您。
我们还为您提供了一个 PDF 文件,其中有彩色图像的屏幕截图/图表使用在这本书。 彩色图像将帮助您更好地理解输出中的变化。 您可以从http://www.packtpub.com/sites/default/files/downloads/9597OS_ColorImages.pdf下载此文件。
尽管我们已经竭尽全力确保内容的准确性,但错误还是会发生。 如果你在我们的书中发现错误,也许是文本或代码上的错误,如果你能向我们报告,我们将不胜感激。 通过这样做,您可以使其他读者免受挫折,并帮助我们改进这本书的后续版本。 如果您发现任何勘误表,请访问http://www.packtpub.com/submit-errata,选择您的图书,点击勘误表提交表格链接,并输入您的勘误表详细信息。 一旦您的勘误表被核实,您的提交将被接受,勘误表将被上载到我们的网站或添加到该标题的勘误表部分下的任何现有勘误表列表中。
要查看之前提交的勘误表,请访问https://www.packtpub.com/books/content/support并在搜索字段中输入书名。 所需资料将出现在勘误表部分。
在互联网上盗版受版权保护的材料是一个贯穿所有媒体的持续问题。 在 Packt,我们非常重视版权和授权的保护。 如果您在互联网上发现我们的作品以任何形式的非法拷贝,请立即提供我们的地址或网站名称,以便我们进行补救。
请通过<[[email protected]](mailto:[email protected])>
与我们联系,并提供疑似盗版资料的链接。
我们感谢您的帮助,保护我们的作者和我们的能力,为您带来有价值的内容。
如果您对本书的任何方面有任何疑问,您可以通过<[[email protected]](mailto:[email protected])>
与我们联系,我们将尽力解决问题。