项目3 -熟悉云网络基础命令_第1页
项目3 -熟悉云网络基础命令_第2页
项目3 -熟悉云网络基础命令_第3页
项目3 -熟悉云网络基础命令_第4页
项目3 -熟悉云网络基础命令_第5页
已阅读5页,还剩106页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目3熟悉云网络基础命令《云网络技术项目教程》目录/Contents33-1项目3熟悉云网络基础命令使用Iptables控制网络流量3-2任务3-1构建Linux服务器网络项目3熟悉云网络基础命令项目描述

为提升企业运营效率,公司决定建设数据中心,集中管理各种应用系统和数据库,优化业务流程、改进产品和服务。考虑到基础硬件的使用效率,项目经理决定采用虚拟化技术对计算、存储、网络等资源进行虚拟化和统一管理,要求王亮熟悉网络虚拟化的相关知识和技术,在公司采购的四台服务器上安装CentOS8网络操作系统,远程登陆系统后配置静态路由实现4台服务器的网络互联。使用云网络中的重要工具Iptables实现源地址和目标地址转换。

项目3熟悉云网络基础命令项目3任务1思维导图如图3-1所示。图3-1项目3任务思维导图任务3-1构建Linux服务器网络3.1.1任务描述3.1.2必备知识3.1.3使用VMware安装CentOS8模板机3.1.4使用VMware组建服务器网络3.1.5配置静态路由实现服务器网络互联学习目标【知识目标】(1)掌握Linux网络操作系统的发展和分类。(2)掌握CentOS8的安装与登陆方法。(3)掌握Linux静态路由的配置方法。学习目标【技能目标】(1)能够使用VMware安装使用CentOS8模板机。(2)能够配置静态路由实现4台服务器网络互联。【网络拓扑】任务3-1的网络拓扑如图3-2所示。图3-2任务3-1网络拓扑3.1.2必备知识1.Linux系统概况 Linux是一套自由加开放源代码的类UNIX操作系统,诞生于1991年10月5日(第一次正式向外公布),由芬兰学生LinusTorvalds和后来陆续加入的众多爱好者共同开发完成,Linux是一个基于POSIX和UNIX的多用户、多任务,支持多线程和多CPU的操作系统。Linux能运行主要的UNIX工具软件、应用程序和网络协议,可支持32位和64位硬件。Linux继承了UNIX以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux存在着许多不同的版本,但它们都使用了Linux内核,可安装在各种计算机设备中,如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。3.1.2必备知识1.Linux系统概况 LinusTorvalds被称为Linux之父,著名的计算机程序员,Linux内核的发明人及该计划的合作者。他利用个人时间及器材创造出了这套当今全球最流行的操作系统内核之一,现受聘于开放源代码开发实验室,全力开发Linux内核。Linux是一个诞生于网络、成长于网络且成熟于网络的奇特的操作系统。1991年,当时还是芬兰大学生的LinusTorvalds萌发了开发一个自由的UNIX操作系统的想法,当年,Linux就诞生了,为了不让这个羽翼未丰的操作系统夭折,LinusTorvalds将自己的作品Linux通过Internet(互联网)发布。从此一大批知名的、不知名的计算机黑客、编程人员加入开发过程中来,一场声势浩大的运动应运而生,Linux逐渐成长起来。Linux一开始是要求所有的源码必须公开,并且任何人均不得从Linux交易中获利。然而这种纯粹的自由软件的理想是不利于Linux普及和发展的,于是Linux开始转向GPL(GeneralPublicLicense,通用公共授权)。Linux凭借优秀的设计、不凡的性能,加上IBM、Intel、CA、CORE、Oracle等国际知名企业的大力支持,市场份额逐步扩大,逐渐成为主流操作系统之一。3.1.2必备知识2.Linux内核版本可以使用命令字uname-r查看Linux内核版本号,如下所示。[root@localhost~]#uname-r4.18.0-348.el8.x86_64(1)4表示当前内核主版本号。(2)18表示当前内核次版本号。(3)0-348中的0表示当前内核更新次数,348表示当前内核修补次数;(4)el8表示当前内核为RHEL8系列;(5)x86_64表示代表这是64位操作系统。3.1.2必备知识3.Linux发行版本 Linux有很多发行版本,好比Windows有WindowsXP、Windows7、Windows10、Windows11,在全球范围内有上百款Linux发行版,常见的主流发行版如图3-3所示。图3-3任务3-1主流的Linux发行版本3.1.2必备知识4.CentOS8网络操作系统(1)基于RHEL8CentOS8是基于RedHatEnterpriseLinux8的一个免费开源的版本。它继承了RHEL8的稳定性和可靠性,并且提供了与RHEL8兼容的软件包和功能。(2)长期支持CentOS8提供长期支持(LTS)的版本,这意味着它将获得持续的更新和安全补丁,以保持系统的稳定性和安全性。(3)主要特性CentOS8引入了许多新的特性和改进,包括更快的启动时间、增强的安全性、更新的内核和文件系统、改进的容器支持等。此外,它还提供了广泛的软件包和工具,适用于各种应用场景和需求。(4)软件包管理CentOS8使用了DNF包管理器来替代之前的YUM包管理器。DNF提供了更快速的软件包安装和更新,同时具有更好的依赖关系解决和软件包管理功能。(5)容器支持CentOS8对容器化技术提供了更好的支持,包括Docker容器引擎和Kubernetes容器编排。它提供了一系列工具和库,用于构建、部署和管理容器化应用程序。3.1.2必备知识5.LinuxRoute命令

在Linux操作系统中,route是一个用于管理和操作IP路由表的命令行工具。用作查看、添加、删除和修改路由表条目,以控制数据包在网络中的路径选择。以下是一些常见的route命令的用法和功能。(1)主要参数①add 使用routeadd增加指定的路由记录。②del使用routedel删除指定的路由记录。③gwgw用来设置网关,也就下一跳地址。④via通过routevia,可以将网络流量路由到指定的下一跳地址或者接口。⑤dev路由时,选择本地的某个接口。3.1.2必备知识5.LinuxRoute命令(2)主要选项①-n 不执行DNS反向查找,直接显示数字形式的IP地址。②-v

显示详细信息③-net 添加到一个网络的路由表。④-host 添加到一个主机的路由表。3.1.2必备知识5.LinuxRoute命令(3)主要用法①查看路由表使用route-n命令可以显示当前系统的路由表,这将列出网络目的地、网关、子网掩码、接口和其他相关信息。②添加路由表条目使用routeadd命令可以向路由表添加新的路由条目。例如,routeadd-net/24gw命令的结果添加一条静态路由,将目标地址为/24的数据包发送给。③删除路由表条目使用routedel命令可以从路由表中删除指定的路由条目。例如,routedel-net/24将删除目标地址为/24的路由。④修改默认网关使用routeadddefaultgw命令可以设置默认网关。例如,routeadddefaultgw将设置默认网关为。⑤设置下一跳使用routemetric命令可以修改路由表条目的优先级。较低的度量值表示更优先的路由。例如,routeadd-net/24gwmetric50将为目标地址为/24的路由设置度量值为50。3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统(1)创建虚拟机首先打开VMwareWorkstation,在“主页”选项卡下选择“创建新的虚拟机”,如图3-4所示。图3-4任务3-1创建新的虚拟机3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统

在弹出的“新建虚拟机向导”对话框中,选择“典型”选项,单击“下一步”按钮,选择“稍后安装操作系统”,单击“下一步”,在“选择客户机操作系统对话框”中,选择“Linux”,版本选择“CentOS864位”,如图3-5所示。图3-5任务3-1选择操作系统和版本3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统在弹出的“命名虚拟机”对话框中,修改虚拟机的名称和保存位置,如图3-6所示。图3-6任务3-1修改名称和保存位置3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统

单击“下一步”,修改磁盘磁盘大小为100G,为后续任务作准备。选择默认的虚拟磁盘文件方式,如图3-7所示。图3-7任务3-1修改磁盘大小

单击“下一步”后,选择“完成”按钮,完成虚拟机的创建任务。3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统(2)编辑虚拟机设置虚拟机创建完成后,在左侧“库”面板中单击虚拟的名称,在“CentOS8”选项卡下内容中单击“编辑虚拟机设置”,如图3-8所示。图3-8任务3-1编辑虚拟机3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统

在弹出的“虚拟机设置”对话框中,修改内存大小为2G,修改处理器的内核数量为2,开启虚拟化引擎中的“虚拟化IntelVT-x/EPT或AMD-V/RVI(V)”,如图3-9所示。图3-9任务3-1修改处理器配置3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统

在“CD/DVD(IDE)”选项中,选择自己本地盘符中的CentOS8镜像文件,如图3-10所示。图3-10任务3-1选择本地安装镜像文件3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统

单击页面底部的“添加”按钮,在弹出的硬件类型中选择“网络适配器”,单击“按钮”。单击“网络适配器”,在“网络连接中”选择“仅主机模式”,如图3-11所示。图3-11任务3-1修改网络适配器的网络模式

移除“USB控制器”、“声卡”、“打印机”,方法是选择该项目,单击底部的“移除”按钮,修改完成后,单击“虚拟机设备”对话框下方的“确定”按钮。3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统(3)安装操作系统在名称为CentOS8的虚拟机选项卡处选择“开启虚拟机”,如图3-12所示。图3-12任务3-1安装操作系统3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统鼠标点入弹出的对画框中,使用鼠标或者光标选择第一项,“InstallCentOS8”后回车,如图3-13所示。图3-13任务3-1选择安装CentOSLinux83.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统

在询问安装过程使用何种语言对框中,选择“中文”,单击“继续按钮”,在弹出的“安装信息摘要”对话框中设置“安装目的地”、“软件选择”、“网络和主机名”、“根密码”。首先单击“安装目的地”,在弹出的对话框中,默认选择本地磁盘,单击“完成”按钮即可。单击“软件选择”选项,在弹出的“软件选择对框”中,选择“最小安装”,如图3-14所示。图3-14任务3-1选择最小安装3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统

单击完成。在“网络和主机名选项中”,将2块网卡设置成开启启动,即右上角的“打开关闭”按钮设置成打开状态。如图3-15所示。图3-15任务3-1开启网卡3.1.3使用VMware安装CentOS8模板机1.安装CentOS8操作系统

修改完成后,单击“完成”按钮,在“根密码设置”对话框中,输入2次ROOT超级用户的密码,这里设置密码为“1”,单击2次完成即可。以上4项设置完成后,单击“安装信息摘要对话框”右下方“开始安装(B)”就安装CentOS8操作系统了,等待一会就安装完成了。3.1.3使用VMware安装CentOS8模板机2.登录安装网络组件(1)本地登录在安装完成对话框,单击“重启系统(R)”按钮可以进入到本机登录对话框,如图3-16所示。图3-16任务3-1本地登录系统3.1.3使用VMware安装CentOS8模板机2.登录安装网络组件输入用户名“root”,密码“1”即可登录系统,使用ipa查看网络配置信息,如图3-17所示。图3-17任务3-1查看IP地址3.1.3使用VMware安装CentOS8模板机2.登录安装网络组件

从图中发现,系统安装了两块网卡,第一块是ens160,通过仅主机模式获取到29/24的IP地址和子网掩码,第二块是ens192,通过NAT模式获取到29/24的IP地址和子网掩码,这里能够获取到100段和200段的地址是因为VMware“编辑菜单下”的“虚拟网络编辑器中”设置了VMnet1的子网IP是/24,VMnet8的子网IP是/24,设置网关为后,虚拟机可以通过NAT方式访问互联网。3.1.3使用VMware安装CentOS8模板机2.登录安装网络组件(2)远程登陆首先运行SecureCRT工具,在“快速连接”对话框的“主机名”处输入29,“用户名”处输入root,如图3-18所示。图3-18任务3-1IP地址配置信息3.1.3使用VMware安装CentOS8模板机2.登录安装网络组件

单击“连接”按钮,在弹出的“输入安全外壳密码”对话框中输入root用户的密码1,单击“确定”按钮就可以实现通过本地虚拟网卡VMnet1登录到CentOS8系统了,登录后,在SecureCRT的“选项”下的“会话选项”对话框中,设置外观选项中的字体为“三号”,字符编码为“UTF-8”,单击“确定”按钮,修改后如图3-19所示。图3-18任务3-1IP地址配置信息3.1.3使用VMware安装CentOS8模板机2.登录安装网络组件

单击“连接”按钮,在弹出的“输入安全外壳密码”对话框中输入root用户的密码1,单击“确定”按钮就可以实现通过本地虚拟网卡VMnet1登录到CentOS8系统了,登录后,在SecureCRT的“选项”下的“会话选项”对话框中,设置外观选项中的字体为“三号”,字符编码为“UTF-8”,单击“确定”按钮,修改后如图3-19所示。图3-18任务3-1IP地址配置信息3.1.3使用VMware安装CentOS8模板机2.登录安装网络组件(3)配置本地YUM源当读者没有网络环境时,使用本地YUM源安装软件。如果具备网络环境,建议使用阿里云的YUM源,如同同时使用本地源和网络源,建议配置源的优先级,否则在出现网络中断时,YUM源会出现错误,这里配置本地源,适合所有读者。①挂载本地ISO镜像使用vi命令打开/etc/fstab文件,在文件末尾处输入以下配置。/dev/sr0/mntiso9660defaults00保存退出后,在命令行中输入mount-a,使挂载生效。②配置本地源首先进入/etc/yum.repos.d目录,创建目录backup,把提供的所有源移动到backup目录中,然后创建local.repo文件,在文件中输入以下内容,这里的base是基础文件目录,app都应用文件目录。分别指向挂载目录中的BaseOS和AppStream目录,保存配置。3.1.3使用VMware安装CentOS8模板机2.登录安装网络组件[base]name=basebaseurl=file:///mnt/BaseOSgpgcheck=0enabled=1[app]name=appbaseurl=file:///mnt/AppStreamgpgcheck=0enabled=13.1.3使用VMware安装CentOS8模板机2.登录安装网络组件使用yumcleanall清楚缓存,再使用yumrepolist查看本地源配置,结果如图3-20所示。图3-20任务3-1修改字体和字符编码3.1.3使用VMware安装CentOS8模板机2.登录安装网络组件③安装网络工具net-tools配置了yum源之后,安装net-tools网络工具,如下所示。[root@localhost~]#yuminstallnet-tools-y也可以使用dnfinstall命令安装软件,方法和使用yum基本一致。④安装网桥工具网桥工具在虚拟化网络中经常使用,提前安装到模板机中,首先上传bridge-utils-1.5-9.el7.x86_64.rpm软件包,然后在命令行中安装软件,如下所示。[root@localhost~]#rpm-ivhbridge-utils-1.5-9.el7.x86_64.rpm⑤安装网络抓包工具tcpdumptcpdump是非常优秀的分析网络流量、排查网络故障的网络抓包工具,安装命令如下。[root@localhost~]#yuminstalltcpdump-y#安装tcpdump网络抓包工具3.1.3使用VMware安装CentOS8模板机2.登录安装网络组件⑥设置防火墙iptables防火墙工具被广泛的应用于云计算网络中,所以将默认的firewalld防火墙工具关闭,安装启动iptables防火墙工具,命令如下。[root@localhost~]#yuminstalliptables-services-y#安装iptables管理工具[root@localhost~]#systemctlstopfirewalld&&systemctldisablefirewalld#关闭默认firewalld防火墙管理[root@localhost~]#systemctlstartiptables&&systemctlenableiptables#启动iptables管理工具,设置开启自启动[root@localhost~]iptables-F#清空iptables的默认配置[root@localhost~]#serviceiptablessave#保存iptables配置⑦关闭SELINUX[root@localhost~]#sed-i'/SELINUX=/cSELINUX=disabled'/etc/selinux/config[root@localhost~]#setenforce03.1.3使用VMware安装CentOS8模板机3.导出OVA模板机

安装好模板机之后,在VMwareWorkstation的“虚拟机”菜单下,选择“电源”选项下的“关闭客户机”选项关闭虚拟机。选择“文件”菜单下的“导出为OVF(E)”选项,在弹出的“将虚拟机导出为OVF”对话框中,输入文件名为“CentOS8.ova”,选择保存的磁盘后,单击“保存”按钮即可将虚拟机保存为名称为CentOS8.ova的模板机了。3.1.4使用VMware组建服务器网络1.创建4台CentOS8服务器

在本地磁盘的某个盘符下建立文件夹任务3-1,在任务3-1文件夹中建立同级的4个子文件夹,分别为node1、node2、node3、node4。接下来在VMware中,选择“文件”菜单下的“打开”选项,选择保存好的CentOS8.ova文件,在弹出的“导入虚拟机”对话框中输入主机名称node1,保存到“任务3-1\node1”目录。如图3-21所示。图3-21任务3-1输入主机名称为存储位置3.1.4使用VMware组建服务器网络1.创建4台CentOS8服务器图3-21任务3-1输入主机名称为存储位置

单击“导入”按钮后,服务器node1就创建成功了,同理创建服务器node2、服务器node3,存储到对应的目录。3.1.4使用VMware组建服务器网络2.修改IP地址表3-1任务3-1主机IP地址规划表4台主机IP地址规划如表3-1所示。设备名称直连接口IP地址设备名称直连接口IP地址网络服务器node1ens160/24服务器node2ens160VMnet1服务器node3ens192/24ens192VMnet2ens160/24服务器

node4ens160VMnet33.1.4使用VMware组建服务器网络2.修改IP地址图3-22任务3-1修改服务器node1IP地址配置

按照以上配置修改4台服务器的IP地址,在/etc/sysconfig/network-scripts/目录下配置服务器node1的ens160网卡,将BOOTPROTO设置为static,即静态配置模式。设置IPADDR的IP地址为,NETMASK子网掩码位,配置如图3-22所示。3.1.4使用VMware组建服务器网络2.修改IP地址配置ens192的网卡,设置ONBOOT=NO,即开机不自动启动,不获取IP地址。配置完成后,在命令行中输入重启网卡和网络管理networking的命令,如下所示。nmclinetworkingoff&&nmclinetworkingon&&nmclicreload需要注意的是,centos8弃用了network.service服务,采用了NetworkManager.service服务来管理网络,nmcli是NetworkManager(网络管理)的命令行,重启网络管理的命令如下。nmclinetworkingoff&&nmclinetworkingon该命令相当于centos7中的systemctlrestartnetwork,其中的networking可以简写成n,查看当前的网络管理工具NetworkManager是否启动的命令如下。[root@node1~]#nmclin重启网络管理后,还需要重新启动网卡,配置才能生效,重启所有网卡的命令如下。nmclicreload3.1.4使用VMware组建服务器网络2.修改IP地址图3-23任务3-1服务器node1的IP地址配置如果想禁用和启动某个网卡,可以使用nmclicdown/up网卡名,重启完成后,查看服务器node1的IP地址信息,如图3-23所示。3.1.4使用VMware组建服务器网络2.修改IP地址 ip命令是一个新网络命令行工具,它是iproute软件包的组成部分,提供了若干网络管理任务,诸如开启或关闭网络接口,分配和移除IP地址和路由,管理ARP缓存等,ipa是ipaddr的简写,用于查看网卡配置信息。

从图中可以发现,服务器node1的ens160网卡IP地址是/24,网卡ens192关闭后获取不到IP地址了。3.1.4使用VMware组建服务器网络2.修改IP地址图3-24任务3-1服务器node2的IP地址配置按照以上方法设置服务器node2两块网卡的IP地址,如图3-24所示。3.1.4使用VMware组建服务器网络2.修改IP地址图3-25任务3-1服务器node3的IP地址配置服务器node3两块网卡的IP地址,如图3-25所示。3.1.4使用VMware组建服务器网络2.修改IP地址图3-26任务3-1服务器node4的IP地址配置服务器node4的网卡ens160IP地址,如图3-26所示。3.1.4使用VMware组建服务器网络3.配置服务器网络(1)VMware的三种网络模式VMware采用桥接网络、仅主机网络、NAT网络三种网络模式实现虚拟机与虚拟机、虚拟机与宿主机、虚拟机与外部网络之间的通信,在VMware中,点击“编辑”菜单下的虚拟网络编辑器,可以看到三种网络模式使用的默认交换机名称如图3-27所示,其中桥接模式使用的虚拟交换机时VMnet0,仅主机模式使用的交换机时VMnet1,NAT模式使用的交换机名称是VMnet8,三种模式下虚拟机和宿主机之间都可以正常通信,在桥接模式和NAT模式下,虚拟机可以访问外部网络,在仅主机模式下,虚拟机无法访问外部网络。3.1.4使用VMware组建服务器网络3.配置服务器网络图3-27任务3-1三种网络模式的虚拟交换机名称3.1.4使用VMware组建服务器网络3.配置服务器网络①桥接网络桥接模式就是将宿主机网卡与虚拟机网卡利用虚拟网桥进行通信。在桥接的作用下,类似于在物理主机上虚拟一个交换机,将设置桥接网络的虚拟机连接到虚拟交换机的一个接口上,物理主机的网卡也同样连接在这个交换机上,所有桥接下的网卡与网卡都是交换模式的,相互可以访问而不干扰。在桥接模式下,虚拟机ip地址需要与主机配置在同一个网段,如果需要访问外部网络,则网关与DNS需要与宿主机网卡一致。桥接模式下的虚拟机与虚拟机、虚拟机与宿主机之间网络拓扑如图3-28所示,外框表示宿主机。3.1.4使用VMware组建服务器网络3.配置服务器网络图3-28任务3-1桥接模式网络拓扑3.1.4使用VMware组建服务器网络3.配置服务器网络②仅主机网络仅主机网络模式拓扑如图3-29所示,虚拟机之间在同一个网段,虚拟机和宿主机之间默认通过VMnet1交换机通信,虚拟机只能与宿主机通信,无法与外部网络通信,需要注意的是VMnet1具备IP地址分配功能,可以为虚拟机分别IP地址,同时可以添加多个仅主机网络,如VMnet2、VMnet3等。图3-29任务3-1仅主机模式网络拓扑3.1.4使用VMware组建服务器网络3.配置服务器网络③NAT网络NAT网络模式拓扑如图3-30所示。虚拟机和虚拟机之间在同一个网段,虚拟机和宿主机之间默认通过VMnet8交换机通信,虚拟机不但可以与宿主机通信,而且还可以与外部网络通信,因为NAT网络模式增加了一个虚拟NAT设备,连接到了VMnet8交换机上。为vmnet8可以为虚拟机分配IP地址和网关,网关是虚拟NAT连接VMnet8的接口,当虚拟机的上外网数据到达虚拟NAT后,将源地址转换成出接口的IP地址,因为出接口连接到了宿主机与外部网络通信接口,就可以访问外部网络了。图3-30任务3-1NAT模式网络拓扑3.1.4使用VMware组建服务器网络3.配置服务器网络(2)添加VMnet2和VMnet3仅主机网络首先在“编辑”菜单下的“虚拟网络编辑器”对话框中,单击“添加网络按钮”,在弹出的添加“虚拟网络对话框中”选择要添加的网络,选择默认的VMnet2,单击“确定”按钮,如图3-31所示,再添加一个网络VMnet3。图3-31任务3-1VMware添加网络3.1.4使用VMware组建服务器网络3.配置服务器网络接下来,在“虚拟网络编辑器”对话框中,选择VMnet1,在底部的子网处设置,子网掩码为,同理设置VMnet2网络地址为,子网掩码为VMnet3网络地址为,子网掩码为,如图3-32所示。3.1.4使用VMware组建服务器网络3.配置服务器网络图3-32任务3-1修改网络地址3.1.4使用VMware组建服务器网络3.配置服务器网络图3-33任务3-1配置网卡所在网络(3)设置服务器各网卡所属的网络在左侧“库”面板中,“我的计算机”下右键单击主机“node1”,选择“设置”,打开“虚拟机设置”对话框,选择第1块网络适配器,在右侧“网络连接”选项中,选择“自定义”下拉列表框中的VMnet1(仅主机模式),单击“确定”按钮,如图3-33所示。3.1.4使用VMware组建服务器网络3.配置服务器网络图3-34任务3-1修改连接名和主机名同理,将服务器node2的第1块网络适配器配置在VMnet1网络,第2块网络适配器配置在VMnet2网络。服务器node3的第1块网络适配器配置在VMnet3网络,第2块网络适配器配置VMnet2网络。服务器node4的第1块网卡配置在VMnet3网络。(4)登录服务器测试连通性使用SecureCRT登录到4台服务器上,登录完成后,通过右键单击连接选项卡,“重命名”修改连接名。通过hostnamectlset-hostname命令修改主机名,如图3-34所示。3.1.4使用VMware组建服务器网络3.配置服务器网络图3-35任务3-1测试服务器node1与其他服务器的连通性在服务器node1上测试与服务器node2直连网卡,发现是能够正常访问的,但是测试服务器“node4”的连通性时,发现不能正常访问,如图3-35所示。3.1.5配置静态路由实现服务器网络互联3.配置服务器网络

服务器node1在/24网络,服务器node4在/24网络,两台主机分别连接到服务器node2和服务器node3,所以将服务器node2和服务器node3增加路由功能,帮助node1和node4转发数据,才能实现服务器node1和服务器node4之间的通信。3.1.5配置静态路由实现服务器网络互联1.配置默认路由服务器node1只有到服务器node2一条链路,所以首先配置服务器node1到服务器node2的默认路由,当服务器node1无法找到目标IP地址时,将数据请求转发给服务器node2,相当于配置服务器node1的网关。同理,需要配置服务器node4到服务器node3的默认路由。首先在服务器node1上添加一条默认路由,命令如下。[root@node1~]#routeadddefaultgw3.1.5配置静态路由实现服务器网络互联1.配置默认路由图3-36任务3-1服务器node1添加默认路由添加完成后,使用route-n命令查看服务器node1的路由表,如图3-36所示。3.1.5配置静态路由实现服务器网络互联1.配置默认路由图3-37任务3-1服务器node4添加默认路由

在表中可以看出,服务器node1有两条路由,一条是配置了IP地址自动生成的直连路由/24网络,另一条是使用routeadd命令添加到主机的默认路由。同样的在服务器node4上添加一条默认路由,命令如下。 [root@node4~]#routeadddefaultgw

添加完成后,使用route-n命令查看服务器node4的路由表,如图3-37所示。

需要注意的是默认路由也就是网关,可以在网卡的GATEWAY选项中配置,这里为了讲解默认路由的配置,所以使用route命令添加了服务器node1和服务器node4的默认路由。3.1.5配置静态路由实现服务器网络互联2.配置服务器node2与服务器node3静态路由图3-38任务3-1添加服务器node2的静态路由

在服务器node2上添加静态路由,设置去往/24网络的下一跳是与本机直连服务器node3的ens192网卡地址,命令如下。 [root@node2~]#routeadd-net/24gw

添加完成后,使用route-n命令查看服务器node2的路由表,如图3-38所示。3.1.5配置静态路由实现服务器网络互联2.配置服务器node2与服务器node3静态路由图3-39任务3-1添加服务器node3的静态路由

从图中可以看出,添加了一条去往/24的路由条目,下一跳是。同样的在服务器node3上添加一条静态路由,去往/24网络的下一跳是,命令如下。 [root@node3~]#routeadd-net/24gw

添加完成后,使用route-n命令查看服务器node3的路由表,如图3-39所示。3.1.5配置静态路由实现服务器网络互联4.永久保存路由图3-41任务3-1删除默认路由

在命令行中通过命令添加的路由都是临时生效的,当主机重启后,路由不会生效了。以下介绍如何添加永久性的路由。(1)创建永久的默认路由在服务器node1上删除默认路由,命令如下。[root@node1~]#routedeldefault执行命令,再次查看路由表发现默认路由已经被删除了,如图3-41所示。在网络配置文件目录/etc/sysconfig/network-scripts/创建名称为route-ens160的路由配置文件,代表为ens160网卡创建路由配置。在文件中输入内容如下。defaultvia3.1.5配置静态路由实现服务器网络互联4.永久保存路由以上配置中default表示默认路由,via表示通过哪个地址转发,保存配置后,重启网络管理服务和网卡。[root@node1network-scripts]#nmclinoff&&nmclinon&&nmclicreload再次查看服务器node1的路由表,发现静态路由已经存在路由表中了,而且主机重启后路由不会消失,同理可以修改服务器node4的默认路由。(2)创建永久的静态路由在服务器node2上删除静态路由,命令如下。[root@node2~]#routedel-net/24在网卡配置文件目录/etc/sysconfig/network-scripts/下创建文件route-ens192,注意这要使用ens192,因为去往/24的下一跳是,与ens192直连。在路由配置文件中输入以下配置。/24via保存配置后,重启网络管理服务和网卡。[root@node2network-scripts]#nmclinoff&&nmclinon&&nmclicreload再次查看,发现静态路由出现在路由表中了,同理可以修改服务器node3的静态路由任务3-2使用Iptables控制网络流量3.2.1任务描述3.2.2必备知识3.2.3配置Iptables过滤数据包3.2.4配置Iptables实现源地址和目标地址转换3.2.5使用Tcpdump抓包验证地址转换学习目标【知识目标】(1)掌握Iptables工具与内核netfilter的关系。(2)掌握Iptables四表五链的工作机制。(3)掌握Tcpdump抓包工具的使用方法。学习目标【技能目标】(1)能够配置Iptables规则实现网络流量过滤。(2)能够配置Iptables规则实现源地址和目标地址转换。(3)能够使用抓包工具抓取分析Linux系统中的网络流量。【网络拓扑】任务3-2的网络拓扑如图3-42所示。图3-42任务3-2网络拓扑3.2.2必备知识1.Iptables工具介绍(1)Netfilter和Iptables关系Netfilter(安全框架)是一个工作在Linux内核的网络数据包处理框架,是Linux操作系统核心层内部的一个数据包处理模块,它具备网络地址转换,数据包内容修改以及数据包过滤的防火墙功能。用户需要一个工具把用户态的“安全设定”配置到内核态netfilter,这个工具就是iptables。(2)Firewalld和Iptables关系在CentOS8中,默认启用的防火墙工具是Firewalld,增加了区域概念和应用层协议的支持,但底层调用的仍然Iptables命令,由于Iptables广泛的应用在虚拟化网络中,如虚拟化网络中的防火墙、安全组、EIP等功能都是通过Iptables实现的,所以Iptables工具是学习云计算网络的基础。3.2.2必备知识2.Iptables四表五链Iptables是基于一种称为"四表五链"的数据结构模型。(1)四表表是一类规则的集合,Iptables包括以下4类规则表。①filter表用于过滤数据包,是默认的表。它用于控制数据包的传输,比如允许或拒绝特定的网络连接。②nat表用于网络地址转换(NAT),它可以修改数据包的源地址、目标地址或端口号。它通常用于实现网络地址转换、端口转发等功能。③mangle表用于修改数据包的IP头部信息,通常用于特殊的网络处理需求。④raw表用于配置连接追踪的规则,可以控制数据包是否经过连接追踪机制。3.2.2必备知识2.Iptables四表五链(2)五链当某个数据包进入系统、离开系统需要经历的关卡,默然包括以下几个链,也可以自定义链。①INPUT链用于处理进入系统的数据包。②OUTPUT链用于处理离开系统的数据包。③FORWARD链用于处理通过系统转发的数据包,Linux系统作为路由器使用时数据包将经过此链进行转发。④PREROUTING链用于在数据包到达网络接口之前进行处理,例如NAT规则的修改。⑤POSTROUTING链用于在数据包离开网络接口之后进行处理,例如NAT规则的修改。当数据包进入系统而且访问系统某个应用时,需要经过PREROUTING链、INPUT链,当数据包从系统某个程序发出,需要经过OUTPUT链、POSTROUTING链,当一个数据包只是经过本系统时,需要经过PREROUTING链、FORWARD链、POSTROUTING链。3.2.2必备知识3.表链对应关系配置Iptables就是定义在某个链上的规则。所以要知道表(规则)和链的对应关系。(1)表链对应关系①filter表对应的链在INPUT链、FORWARD链、OUTPUT链上定义filter表的规则,用于过滤数据包,filter表是定义规则时的默认表,即定义规则时,如不指定表,默认就是filter表。②nat表对应的链在PREROUTING链、POSTROUTING链、OUTPUT链定义nat规则,用于网络地址转换。经常使用的是PREROUTING链用户目的地址转换、POSTROUTING链用于源地址转换。③mangle表对应的链在PREROUTING链、POSTROUTING链、INPUT链、OUTPUT链、FORWARD链定义mangle表规则,作用是修改数据包的服务类型、配置路由实现QOS内核模块等,平时几乎不使用。④raw表对应的链在OUTPUT链、PREROUTING链上定义raw规则作用是决定数据包是否被状态跟踪机制处理,平时几乎不使用。3.2.2必备知识4.Iptables命令语法iptables工具的语法为iptables[-ttable]command[链名][条件匹配][-j目标动作]其中table用于指明定义哪些表的规则,经常使用的有filter表和nat表,如不指定,默认是filter表,链名指的是链的名称,下面重点介绍command、条件匹配和目标动作。(1)command命令①-AAppend在规则最后边追加一条规则,规则是有顺序的,数据包从上到下匹配规则,匹配结束后,不再继续匹配其它规则,如果所有都没有匹配上,最后的默认规则是允许通过。②-IInsert,在指定的位置插入规则,如图Insert3表示插入的规则位于第3条。③-LList,查看规则列表,-L经常配置-n、-v、--line-number使用,其中-n表示只显示IP地址和端口号码,不显示域名和服务名称、-v表示显示详细规则信息,--line-number显示规则的编号。④-DDelete,从规则列表中删除规则,如iptables-DFILTER3表示删除filter表中的第3条规则。⑤-PPolicy,设置设置某个链的默认规则,如iptables-PINPUTDROP表示设置INPUT链的默认规则是丢弃。⑥-FFlush,清空链上的规则,不指明链会清空所有链上规则。清空规则还有-X,表示清空自己定义的链上规则,-Z清空指定链的所有计数器归零,经常使用的是-F。3.2.2必备知识4.Iptables命令语法(2)条件匹配①按网络接口匹配-i匹配数据进入的网络接口,该参数主要应用nat表,-o匹配数据流出的网络接口,如-iens160匹配从网络接口ens160进来的数据包,-oens192匹配从ens192流出的数据包。②匹配源地址和目的地址-s匹配源地址,如-s匹配源地址是的数据包,也可以指定网络地址,如-s/24,如果匹配不连续的多个地址,可以用逗号分隔,如-d,。-d匹配目标地址,如-d匹配的目标地址是,也可以匹配一个网络地址,如图-d/24。③按协议类型匹配-p匹配协议类型,可以是tcp、udp、icmp等,如-ptcp匹配的是tcp协议的数据包,在协议之前加上!表示取反,如!tcp表示除了tcp之外的其它协议。④按源及目的端口匹配--sport匹配源端口,可以是单个端口,也可以是端口范围,如--sport1000,匹配源是1000的端口,--sport1000:2000匹配源端口1000到2000的数据包。--dport匹配目的端口,如--dport80匹配的是目标端口是80的数据包,--sport和--dport必须配合-p参数使用。3.2.2必备知识4.Iptables命令语法(3)目的动作①ACCEPTACCEPT允许数据包通过本链,如iptables-AINPUT-jACCEPT表示在INPUT链规则末尾添加一条规则,允许所有访问本机的数据包通过。②DROPDROP阻止数据包通过本链,如iptables-IOUTPUT-s-jDROP表示在OUTPUT链的最前边插入一条规则,阻止来自的数据包通过。③SNAT源地址转换,支持单个和连续的源地址和目标地址。如iptables-tnat-APOSTROUTING-s/24-jSNAT--to0,在数据包离开网络接口时,将/24网络的源IP地址转换成0,连续目的地址可以写成0-0。④DNAT目的地址转换,同样支持转换成单个IP和地址池。如iptables-tnat-APREROUTING-iens192-ptcp--dport80-jDNAT--to⑤MASQUERADE动态SNAT转换,当用于连接公网的IP不固定时,使用MASQUERADE进行源IP地址转换,如iptables-tnat-APOSTROUTING-s/24-oens192-jMASQUERADE,将源地址是/24的数据包进行地址伪装,转换成ens192上的IP地址。3.2.2必备知识4.Iptables命令语法(4)应用示例①拒绝外部数据访问本地服务器80端口在配置Iptabels规则时,要注意以下两点。一是要清楚使用的是过滤还是地址转换,本例是拒绝访问,所以是过滤规则,作用在filter表上,默认可以不写。作用在filter表上的链包括INPUT链、FORWARD链、OUTPUT链。二是要清楚数据包的流向,是访问本机、还是从本机流出、还是只是经过本机,确定后才能在某个链上配置规则,本例要求拒绝访问本机的80端口,是访问本机的数据,访问本机的数据会经过PREROUTING和INPUT两个链,所以确定写在INPUT链上。再进行条件匹配,执行动作,配置如下。iptables-AINPUT-ptcp--dport80-jDROP②将源地址是/24的地址转换成自己出接口IP,地址为0首先看是流量本机的数据,所以经过的链是PREROUTING、FORWARD、POSTROUTING,一般将源地址转换配置在POSTROUTING链上,目的地址转换配置在PREROUTING链上。由于是地址转换要求,所以配置在nat表上,确定了表和链后,再进行规则匹配,执行动作,配置如下。iptables-tnat-APOSTROUTING-s/24-jsnat--to03.2.2必备知识5.Tcpdump工具的使用tcpdump是网络抓包工具,可以针对关键字,如主机名(HOST)、网段(NET)、端口(PORT)抓取网络中的流量,也可以针对数据包的方向,如源(src)、目的(dst)进行抓包,还可以针对协议如tcp/udp/imcp等协议进行抓包。(1)tcpdump工具常用选项①-i监听的网络接口②-e在输出行打印出数据链路层的头部信息,包括源mac和目的mac,以及网络层的协议。③-nn指定将每个监听到数据包中的域名转换成IP、端口从应用名称转换成端口号后显示。④-v输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息。⑤-vv输出详细的报文信息。⑥-c在收到指定的包的数目后,tcpdump就会停止。⑦-w将输出结果写到某个文件中。⑧-t不显示抓包时间戳。3.2.2必备知识5.Tcpdump工具的使用tcpdump是网络抓包工具,可以针对关键字,如主机名(HOST)、网段(NET)、端口(PORT)抓取网络中的流量,也可以针对数据包的方向,如源(src)、目的(dst)进行抓包,还可以针对协议如tcp/udp/imcp等协议进行抓包。(1)tcpdump工具常用选项①-i监听的网络接口(2)过滤命令①类型关键字主要包括host,net,port,如host,指定主机,net/24指明是一个网络地址,port21指明端口号是21。②方向关键字主要包括src,dst,dstorsrc,dstandsrc,如src,指明数据包中源地址是,dstnet/24指明目的网络地址是/24,方向关键字可以和类型关键字联合使用,如源IP为并且目的端口是22可以写成srchostanddstport22。③协议关键字主要包括arp,ip,icmp,tcp,udp等协议,默认tcpdump会监听所有协议的数据包。3.2.2必备知识5.Tcpdump工具的使用(2)应用举例①监听本机ens160端口与0的数据包tcpdump-iens160host0②监听所有端口关于/24网络地址的数据包tcpdumpnet/24③监听端口ens192的关于/24主机且端口为80的数据包tcpdump-iens192net0/24anddstport80④监听ens160上所有tcp协议并且目标端口是22的数据包tcpdump-iens160tcpanddstport223.2.2必备知识5.Tcpdump工具的使用⑤监听ens160源服务器node和目的端口不是80的数据,显示数据链路层信息,以IP地址和端口号方式显示。将结果导入文件1.txt中。tcpdump-nn-e-iens160srchostanddstportnot23-w1.txt②-e在输出行打印出数据链路层的头部信息,包括源mac和目的mac,以及网络层的协议。③-nn指定将每个监听到数据包中的域名转换成IP、端口从应用名称转换成端口号后显示。④-v输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息。⑤-vv输出详细的报文信息。⑥-c在收到指定的包的数目后,tcpdump就会停止。⑦-w将输出结果写到某个文件中。⑧-t不显示抓包时间戳。3.2.3配置Iptables过滤数据包1.修改主机IP地址和网络4台服务器IP地址规划如表3-2所示。设备名称网卡IP地址网关网络服务器node1ens160/24VMnet1服务器node2ens160/24VMnet1服务器node3ens160/24

VMnet1Ens192/24

VMnet8Windows10主机VMwareNetworkAdapterVMnet8/24

VMnet8表3-2任务3-2主机IP地址规划表3.2.3配置Iptables过滤数据包1.修改主机IP地址和网络根据表3-2的IP地址规划配置4台服务器的IP地址和网关,其中服务器node1的IP地址和网关配置如图3-43所示,这里在IP地址的配置中配置了GATEWAY网关,同配置默认路由功能一致,同时配置了DNS服务器地址为,提供域名解析服务。图3-43任务3-2服务器node1的IP地址和网关配置3.2.3配置Iptables过滤数据包1.修改主机IP地址和网络配置服务器node1的ens160网卡属于VMnet1网络,如图2-44所示。图3-44任务3-2服务器node1的ens160网卡属于VMnet13.2.3配置Iptables过滤数据包1.修改主机IP地址和网络

同理按照地址规划表配置服务器node2、服务器node3的IP地址和网络,windows10主机连接到VMnet8虚拟交换机的网卡是VMwareNetworkAdapterVMnet8,默认配置了/24的IP地址。3.2.3配置Iptables过滤数据包2.配置只允许windows10主机远程登录服务器node3

在默认情况下,服务器node3是开启了sshd远程登陆服务的,所以任意一台与服务器node3相连的主机,只要具备ssh协议的客户端,就可以登陆到服务器node3上,如在服务器node1上登录服务器node3的过程如图3-45所示。图3-45任务3-2服务器node1远程登陆服务器node33.2.3配置Iptables过滤数据包2.配置只允许windows10主机远程登录服务器node3

从图中看出,在服务器node1命令行中,使用ssh,当出现保存公钥信息时,输入yes,然后输入服务器node3的密码后即成功登录到了服务器node3上,在服务器node2上使用该方法同样可以登陆到node3上,如图3-46所示。图3-46任务3-2服务器node2远程登陆服务器node33.2.3配置Iptables过滤数据包2.配置只允许windows10主机远程登录服务器node3

显示只要与服务器node3连网的计算机就能够通过用户名和密码远程登陆上来是不够安全的,所以配置Iptables规则允许windows宿主机可以使用ssh协议远程登录服务器node3,其它主机无法登录服务器node3,但不影响与服务器node3的其它通信。3.2.3配置Iptables过滤数据包2.配置只允许windows10主机远程登录服务器node3(1)安装启动服务iptables的命令默认是存在的,但是无法对配置进行保存等操作,所以需要安装iptables-services服务,配置完成后,可以将配置保存,重启后仍然生效,同时关闭firewalld服务,开启iptables服务,命令如下。[root@node3~]#yuminstalliptables-services-y[root@node3~]#systemctlstopfirewalld&&systemctldisablefirewalld[root@node3~]#systemctlstartiptables&&systemctlenableiptables这个步骤在模板机中已经进行了设置,这里再次强调基础环境配置。(2)确定配置的表和链允许或者禁止访问本机的某个服务,这个数据包一定是流入本机的,所以在Iptables的PREROUTING或者INPUT链上配置规则,由于是过滤规则,所以将规则配置在filter表和INPUT链上。因为在INPUT链、FORWARD链、OUTPUT链上定义filter表的规则。3.2.3配置Iptables过滤数据包2.配置只允许windows10主机远程登录服务器node3(3)分析和配置sshd服务使用的是ssh协议,在传输层上的协议是tcp,使用的端口是22端口,又因为Iptables的默然规则是放行所有,所以首先配置一条规则允许宿主机地址使用tcp的22端口流量,然后拒绝所有其它主机使用tcp协议的22端口流量,配置如下。[root@node3~]#iptables-tfilter-AINPUT-s-d-ptcp--dport22-jACCEPT[root@node3~]#iptables-tfilter-AINPUT-d,-ptcp--dport22-jDROP配置完成后,使用命令查看iptables的配置,如图3-47所示。图3-47任务3-2iptables配置3.2.3配置Iptables过滤数据包2.配置只允许windows10主机远程登录服务器node3在重启后iptables生效,需要保存配置,命令如下。[root@node3~]#serviceiptablessave这里需要注意的是由于服务器node3有两个网卡,所以需要在第2条规则中将两个IP地址都禁止掉,配置完成后,只要宿主机通过,即VMwareNetworkAdapterVMnet8网卡登录到服务器node3上。使用服务器node1和服务器node2已经无法远程登陆服务器node3了。3.2.3配置Iptables过滤数据包2.配置只允许windows10主机远程登录服务器node3(4)配置修改当配置过程中出现错误或者需要修改的时候,有2种方法解决,一是清除所有的配置,清除命令如下。[root@node3~]#iptables-F使用-F清除默认5个链上的所有配置,所以要谨慎使用,当需要删除某一个链上的某条规则时,可以使用iptables-nL--line-number查看iptables的配置并且显示规则编号,如图3-48所示。图3-48任务3-2查看iptables规则显示规则号如果想删除INPUT表中的第3条规则,使用如下命令。[root@node3~]#iptables-DINPUT33.2.4配置Iptables实现源地址和目标地址转换1.配置源地址转换实现服务器node1和服务器node2访问外部网络(1)启用服务器node3的路由转发功能服务器node3有两块网卡,分别是连接服务器node1和服务器node2的ens160和连接宿主机的ens192,无论配置服务器node1和服务器node2的源地址转换,实现服务器node1和服务器node2访问外网,还是配置目的地址转换实现windows10主机访问服务器node2的WEB服务,都需要在服务器node3上开启路由转发功能,方法如下。在服务器node3的/etc/sysctl.conf末尾加入以下配置。net.ipv4.ip_forward=1然后在命令行,使用sysctl-p使配置生效。3.2.3配置Iptables过滤数据包2.配置只允许windows10主机远程登录服务器node3(2)配置Iptables源地址转换在当前网络拓扑下,服务器node1和服务器node2采用仅主机模式连接是无法访问外部网络的,服务器node3通过NAT模式连接是可以访问外部网络的,如图3-49所示。图3-49任务3-2服务器node3访问外部公网地址3.2.3配置Iptables过滤数据包2.配置只允许windows10主机远程登录服务器node3服务器node1和服务器node2连接着服务器node3的ens160网卡,所以在服务器node3上配置源地址转换,即将服务器node1和服务器node2去往外部网络的数据包中的源地址转换成服务器node3连接VMnet8交换机的ens192地址,就可以实现服务器node1和服务器node2访问外部网络了。(3)确定表链为服务器node1和服务器node2做源地址转换,所以规则写在nat表中,PREROUTING链、POSTROUTING链、OUTPUT。服务器node1和服务器node2的数据经过服务器node3,需要经过PREROUTING链、FORWARD链、P

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论