版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Linux操作系统项目式教程目录CONTENTS项目1初识Linux操作系统项目2Linux操作系统基础项目3用户组群和权限管理项目项目4配置和管理磁盘项目5安装软件项目6编写Shell脚本统项目7配置和管理网络系统项目8配置和管理Linux服务项目7配置和管理网络任务1配置网络任务2常用网络操作7.1.1理解VMware网络工作模式使用VMware创建的虚拟机和物理机进行网络通信的方式有四种,分别是NAT模式、仅主机模式、桥接模式和自定义。平时使用比较多的是桥接、NAT、仅主机三种网络工作模式,需要理解它们的工作特点并熟练IP地址配置。图7-1Vmware网络工作模式7.1.1理解VMware网络工作模式1.NAT模式NAT网络模式是最常使用的网络工作模式,这种模式既能实现虚拟机和物理机之间的通信,又能够实现虚拟机访问internet,它也是安装虚拟机的默认网络工作模式。当安装VMware之后,会在windows系统的本地连接中安装2块虚拟网卡,名称为VMnet1和VMnet8。其中VMnet8主要用作NAT网络模式,vmnet1主要用作仅主机网络工作模式。图7-2是NAT网络模式下,虚拟机与物理机的通信方式,以及虚拟机访问Internet的方法。图7-2Vmware
NAT模式在虚拟机与物理机之间有一个虚拟路由器,这个路由器的功能有3个:一是能够为虚拟机和物理机分配IP地址,使虚拟机的ens33网卡和物理机的VMnet8网卡在同一网络上;二是能够建立虚拟机和物理机之间的网络连接;三是当虚拟机想访问Internet时,提供NAT转换,将数据转发到往卡上。该模式既实现了可以访问外部网络,又对虚拟机进行了有效的保护。7.1.1理解VMware网络工作模式2.仅主机模式当使用仅主机网络工作模式时,虚拟路由器同样可以分别IP地址给虚拟机和物理机,使虚拟机的ens33网卡和物理机的VNnet1网卡在同一网络上,同样可以提供虚拟机和物理机之间的网络连接,但关闭了虚拟机访问Internet的NAT转换功能。这样,虚拟机就不能访问Iinternet了,如图7-3所示。图7-3Vmware
仅主机模式7.1.1理解VMware网络工作模式3.桥接模式当使用仅主机网络工作模式时,虚拟路由器变为一个虚拟的交换机,既不提供分配IP地址功能,也不提供虚拟机访问Internet的NAT转换,这时,需要给虚拟机配置和物理机网卡同一网络的IP地址信息,实现和物理机之间的通信和访问Internet功能。同时,和物理机在同一网络的其它计算机也可以访问这个虚拟机了,比如物理机是教师上课时的教师机,那么同一机房的其它学生计算机就可以访问虚拟机了。如图7-4所示。图7-4Vmware
桥接模式7.1.2配置IP地址【实例1】创建2台主机,都使用NAT网络工作模式,使用手动配置IP的方法,配置主机1的IP地址为00,配置主机2的IP地址为00,测试2台计算机的网络连通性,配置网关和DNS,使2台主机可以访问Internet。1.配置主机的IP地址启动主机1,进入/etc/sysconfig/network-scripts/目录,查看该目录,主机的网卡配置文件是ifcfg-ens33,使用cat查看该文件,如图7-5所示。图7-5默认网络配置7.1.2配置IP地址其中重要的一行是BOOTPROTO=dhcp,代表采用dhcp方式分配IP地址。首先将dhcp修改为static,代表采用手动方式配置IP地址,如图7-6所示。图7-6修改主机1的IP地址7.1.2配置IP地址修改完成后,使用命令systemctlrestartnetwork,再使用ipaddr查看IP地址,发现主机1的IP地址已经修改为00,如图7-7所示。图7-6修改主机1的IP地址7.1.2配置IP地址修改完成后,使用命令systemctlrestartnetwork,再使用ipaddr查看IP地址,发现主机1的IP地址已经修改为00,如图7-7所示。图7-7重启网卡并查看IP地址7.1.2配置IP地址2.克隆主机1、修改IP地址使用主机1克隆一台完整的主机2,打开主机2后,同样在/etc/sysconfig/network-script目录下修改ifcfg-ens33的网卡配置,因为uuid作为独立标识应该和主机1不一致,所以在这里把UUID一行删除即可,同时配置IP地址为00。如图7-8所示。图7-8修改主机2的网卡地址7.1.2配置IP地址修改完成后,使用systemctlrestartnetwork重启网络,使配置生效。使用ping00测试可以ping通主机1了,如图7-9所示。图7-9测试主机2与主机1的网络连通性7.1.2配置IP地址3.修改IP地址配置,访问internet(1)修改VMware虚拟网络编辑器首先在VMware上通过“编辑”→“虚拟网络编辑器”打开“虚拟网络编辑器”对话框,在虚拟网络编辑器中选择VMnet8,在右下角选择“更改设置”按钮,如图7-10所示。图7-10修改VMnet8设置7.1.2配置IP地址在打开的修改网络编辑器对话框中首先修改子网IP为,子网掩码为,让两台主机的子网IP地址和子网掩码一致,然后点击“NAT设置”按钮,如图7-11所示。图7-11修改子网IP7.1.2配置IP地址在打开的“NAT设置”对话框中,将“网关IP”设置为,和2台主机在同一网络,如图7-12所示,修改之后点击“确定”按钮。图7-12设置网关IP地址7.1.2配置IP地址(2)设置主机网关和DNS,实现访问internet。
为主机1添加配置,把网关GATEWAY配置成,配置DNS1=,让dns指向,如图7-13所示。图7-13配置网关和DNS重启网络后,测试与的连通性,发现已经可以ping通了,同样设置主机2,就可以实现两台主机同时访问Internet了。本任务注意点(1)修改指定网络的IP地址后,如果想配置网关上网,一定要修改虚拟网络编辑器的配置。(2)DNS的配置是DNS1,可以配置多个DNS,可以换行加入DNS2、DNS3等。任务拓展训练(1)创建2台主机,网络模式配置成桥接模式,使其能够相互访问。(2)创建2台主机,都使用仅主机模式,配置主机1的IP地址为,主机2的IP地址为,使它们可以相互访问。补充知识网络基础1.IP地址所谓IP地址就是给每个连接在Internet上的主机分配的一个32bit地址。按照TCP/IP协议规定,IP地址用二进制来表示,每个IP地址长32bit,比特换算成字节,就是4个字节。例如一个采用二进制形式的IP地址是“00001010000000000000000000000001”,这么长的地址,人们处理起来也太费劲了。为了方便人们的使用,IP地址经常被写成十进制的形式,中间使用符号“.”分开不同的字节。于是,上面的IP地址可以表示为“”。IP地址的这种表示法叫做“点分十进制表示法”,这显然比1和0容易记忆得多。2.子网掩码子网掩码其实是用来标识IP地址的网络部分和主机部分,让网络设备能够识别出该IP地址是属于广域网还是局域网上的,便于更深层次的网络数据交换。子网掩码是和IP地址一起使用的,不能单独存在,单独是没有任何意义的。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。子网掩码就是判断两个IP地址,是不是在同一个网段(或称子网),在同一网段的两个地址,可以直接通信。如果一个网段没有划分子网,那么网络号部分都是1,主机号部分都是0。这个也叫缺省子网掩码。A类网络缺省子网掩码:B类网络缺省子网掩码:C类网络缺省子网掩码:子网掩码和IP地址一样,也是二进制表示,只不过转换成十进制更便于我们用户识别,机器设备都是设备二进制。如图7-14所示。补充知识图7-14缺省子网掩码3.网关网关(Gateway)又称网间连接器、协议转换器。网关就是一个网络连接到另一个网络的“关口”,也就是网络关卡。所有网络都有一个边界,限制与直接连接到它的设备的通信。因此,如果网络想要与该边界之外的设备,节点或网络通信,则它们需要网关的功能。网关通常被表征为路由器和调制解调器的组合。网关在网络边缘实现,并管理从该网络内部或外部定向的所有数据。当一个网络想要与另一个网络通信时,数据包将传递到网关,然后通过最有效的路径路由到目的地。除路由数据外,网关还将存储有关主机网络内部路径的信息以及遇到的任何其他网络的路径。补充知识4.DNSDNS是域名系统(DomainNameSystem)的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。尽管IP地址能够唯一地标记网络上的计算机,但IP地址是一长串数字,不直观,而且用户记忆十分不方便,于是人们又发明了另一套字符型的地址方案,即所谓的域名地址。IP地址和域名是一一对应的,这份域名地址的信息存放在一个叫域名服务器(DNS,Domainnameserver)的主机内,使用者只需了解易记的域名地址,其对应转换工作就留给了域名服务器。域名服务器就是提供IP地址和域名之间的转换服务的服务器。没有域名的情况下可以使用IP+端口号访问。国际域名:com域名,国际最广泛流行的通用域名格式。国际化公司都会注册·com域名,当然也可以选择以·net/.org为结尾的国际域名。例如表示工商企业的.com,表示创意创新的.xyz,表示网络提供商的.net,表示团体组织的.org等域名后缀都没有使用范围限制。(“org”是英文“organization(组织)”的缩写。意思是:各类组织机构或非盈利团体性质的域名。在注册方面,org域名的资格没有任何限制,任何一个国家的个人或企业均可注册。)国内顶级域名:国内域名,又称为国内顶级域名(nationaltop-leveldomainnames,简称nTLDs),即按照国家的不同分配不同后缀,这些域名即为该国的国内域名。中国国家顶级域名即是.cn,.cn域名由国家工业和信息化部管理,.cn域名注册的管理机构为中国互联网信息中心(CNNIC)。补充知识5.IP地址、子网掩码、网关、DNS的关系IP地址标示电脑的身份,子网掩码可以标示子网划分的情况、所属子网。默认网关表示数据包默认选择的出口,一般是路由器地址。DNS服务器,把网站的域名转换成计算机能看懂的IP地址。简单来说,子网掩码就是判断两个IP地址,是不是在同一个网段(或称子网),在同一网段的两个地址,可以直接通信。不管是通过IP地址也好,还是通过“计算机名”,都是可以的。如果两个IP地址,不在同一网段,这时候,要想通过IP地址访问另一网段的计算机(也是IP地址),就需要网关地址。网关地址就是出口的地址,而且,网关地址,是最近的一个出口的地址。网关地址总是与计算机的IP地址是同一网段的。这一点是非常重要的。如果两台计算机,不在同一网段,如果想使用计算机名(就是类似于compute1、cp2之类的名称,称为NetBIOS名称),这时候,必须要使用WINS服务器来解析(或者手动编辑本机的hosts文件),这就是WINS服务器的作用。7.2.1使用ping命令1.ping命令介绍因特网包探索器
(PacketInternetGroper,ping),用于测试网络连接量的程序。ping使用因特网控制报文协议(InternetControlMessagesProtocol,ICMP),它发送ICMP回送请求消息给目的地主机。ICMP协议规定:目的地主机必须返回ICMP回送应答消息给源主机。如果源主机在一定时间内收到应答,则认为主机可达。ping是用来检查网络是否通畅或者网络连接速度的命令。对于一个网络管理员来说,ping命令是第一个必须掌握的命令,它所利用的原理是这样的:利用网络上机器IP地址的唯一性,给目标IP地址发送一个数据包,再要求对方返回一个同样大小的数据包来确定两台网络机器是否连接相通,时延是多少。ping指的是端对端连通,通常用来作为可用性的检查,但是某些病毒或木马会强行大量远程执行ping命令并抢占客户的网络资源,导致系统变慢,网速变慢。严禁ping入侵作为大多数防火墙的一个基本功能提供给用户进行选择。通常的情况下如果不用作服务器或者进行网络测试,可以放心的选中该项功能,使其保护计算机。ping命令常用参数如表7-1所示。表7-1ping命令常用参数参数详解-A自适应ping,根据ping包往返时间确定ping的速度-b允许ping一个广播地址-B不允许ping改变包头的源地址-c指定次数后停止ping-d使用Socket的SO_DEBUG功能-f极限检测,快速连续ping一台主机,ping的速度达到100次/秒-iinterval设定间隔几秒发送一个ping包,默认一秒ping一次-Iinterface指定网卡接口、或指定的本机地址送出数据包-lpreload设置在送出要求信息之前,先行发出的数据包-L抑制组播报文回送,只适用于ping的目标为一个组播地址-n不要将ip地址转换成主机名7.2.1使用ping命令2.ping命令工作流程【实例2】查看本机IP地址、默认网关、dns地址。使用ping命令查看本机和默认网关是否可以通信。使用ipaddr命令查看本机的ip地址。[root@localhost~]#ipaddr1:lo:<LOOPBACK,UP,LOWER_UP>mtu65536qdiscnoqueuestateUNKNOWNgroupdefaultqlen1000link/loopback00:00:00:00:00:00brd00:00:00:00:00:00inet/8scopehostlovalid_lftforeverpreferred_lftforeverinet6::1/128scopehostvalid_lftforeverpreferred_lftforever2:ens33:<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdiscpfifo_faststateUPgroupdefaultqlen1000link/ether00:0c:29:58:94:9bbrdff:ff:ff:ff:ff:ffinet00/24brd55scopeglobalnoprefixrouteens33valid_lftforeverpreferred_lftforeverinet6fe80::3e91:78e3:be4f:d6e3/64scopelinknoprefixroutevalid_lftforeverpreferred_lftforever7.2.1使用ping命令使用iprouteshow命令查看本机的默认网关。[root@localhost~]#iprouteshowdefaultviadevens33protostaticmetric100/24devens33protokernelscopelinksrc00metric100/24devvirbr0protokernelscopelinksrc可以看出,默认网关为。使用ping命令测试本机与默认网关()和DNS的连通性。[root@localhost~]#pingPING()56(84)bytesofdata.64bytesfrom:icmp_seq=1ttl=128time=0.398ms64bytesfrom:icmp_seq=2ttl=128time=0.281ms64bytesfrom:icmp_seq=3ttl=128time=0.189ms[root@localhost~]#pingPING()56(84)bytesofdata.64bytesfrom:icmp_seq=1ttl=128time=76.3ms64bytesfrom:icmp_seq=2ttl=128time=50.4ms64bytesfrom:icmp_seq=3ttl=128time=48.1ms64bytesfrom:icmp_seq=4ttl=128time=53.7ms发现本机与网关和DNS是可以正常通信。7.2.1使用ping命令【实例3】查看本机与连通性。[root@master~]#pingPING()56(84)bytesofdata.64bytesfrom():icmp_seq=1ttl=128time=16.5ms64bytesfrom():icmp_seq=2ttl=128time=21.3ms64bytesfrom():icmp_seq=3ttl=128time=10.5ms以上通过ping命令测试了本机与网关和DNS可通信,测试了与Internet上的主机可以通信,说明该主机网络正常。7.2.2使用netstate命令netstat命令是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。netstate命令常用参数如表7-2所示。表7-2netatst命令常用参数参数详解-a显示所有选项。-t仅显示tcp相关选项。-u仅显示udp相关选项。-n拒绝显示别名,能显示数字的全部转化成数字。-l仅列出处于监听状态的端口。-p显示建立相关链接的程序名7.2.2使用netstate命令【实例4】使用netstat命令查看网络接口状态信息。(1)使用-t选项列出TCP协议的连接。[root@compute~]#netstat-atActiveInternetconnections(serversandestablished)ProtoRecv-QSend-QLocalAddressForeignAddressStatetcp00:sunrpc:*LISTENtcp00:x11:*LISTENtcp00compute:domain:*LISTENtcp00:ssh:*LISTENtcp00localhost:ipp:*LISTENtcp00localhost:smtp:*LISTENtcp00compute:sshcontrol:54862ESTABLISHEDtcp600[::]:sunrpc[::]:*LISTENtcp600[::]:x11[::]:*LISTENtcp600[::]:ssh[::]:*LISTENtcp600localhost:ipp[::]:*LISTENtcp600localhost:smtp[::]:*LISTEN7.2.2使用netstate命令(2)使用-u先选项列出UDP协议的连接。[root@compute~]#netstat-auActiveInternetconnections(serversandestablished)ProtoRecv-QSend-QLocalAddressForeignAddressStateudp00:puparp:*udp00compute:domain:*udp00:bootps:*udp00:sunrpc:*udp00:mdns:*udp00:37626:*udp00localhost:323:*udp600[::]:puparp[::]:*udp600[::]:sunrpc[::]:*udp600localhost:323[::]:*7.2.2使用netstate命令(3)使用-l选项列出正在监听的套接字。[root@compute~]#netstat-tnlActiveInternetconnections(onlyservers)ProtoRecv-QSend-QLocalAddressForeignAddressStatetcp00:111:*LISTENtcp00:6000:*LISTENtcp00:53:*LISTENtcp00:22:*LISTENtcp00:631:*LISTENtcp00:25:*LISTENtcp600:::111:::*LISTENtcp600:::6000:::*LISTENtcp600:::22:::*LISTENtcp600::1:631:::*LISTENtcp600::1:25:::*LISTEN7.2.2使用netstate命令(4)使用-p选项查看进程名、进程号以及用户ID。[root@compute~]#netstat-tnlpActiveInternetconnections(onlyservers)ProtoRecv-QSend-QLocalAddressForeignAddressStatePID/Programnametcp00:111:*LISTEN1/systemdtcp00:6000:*LISTEN6815/Xtcp00:53:*LISTEN7253/dnsmasqtcp00:22:*LISTEN6766/sshdtcp00:631:*LISTEN6765/cupsdtcp00:25:*LISTEN6940/mastertcp600:::111:::*LISTEN1/systemdtcp600:::6000:::*LISTEN6815/Xtcp600:::22:::*LISTEN6766/sshdtcp600::1:631:::*LISTEN6765/cupsdtcp600::1:25:::*LISTEN6940/master7.2.3配置hosts文件【实例5】配置任务一中主机1名称为control,主机2名称为compute,实现通过ping主机名的方式进行网络通信。1.设置主机名使用hostnamectl-sethostname设置主机1和第主机2的计算机名称。[root@localhost~]#hostnamectlset-hostnamecontrol[root@localhost~]#bash[root@control~]#hostnamecontrol
通过hostnamectlset-hostname命令设置主机1名为control,通过bash开启一个子shell或者重新登录使配置生效。[root@control~]#hostnamectlset-hostnamecompute[root@control~]#bash[root@compute~]#hostnamecompute通过hostnamectlset-hostname命令设置主机2名为compute,通过bash开启一个子shell或者重新登录使配置生效。7.2.3配置hosts文件2.配置/etc/hosts文件在linux下,解析主机名称有两种方法,一是配置/etc/hosts文件,二是配置DNS服务器,这里使用配置hosts文件的方式解析主机名称。首先打开/etc/hosts文件。[root@control~]#vi/etc/hostslocalhostlocalhost.localdomainlocalhost4localhost4.localdomain4::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain600
control00compute打开文件后,输入IP地址与计算机名称的对应关系。这时,00和control、00和compute可以等同使用了,需要注意的是在第二台主机上需要做同样的配置,因为两台主机都需要解析这两个名称。7.2.3配置hosts文件3.使用名称测试连通性[root@control~]#pingcomputePINGcompute(00)56(84)bytesofdata.64bytesfromcompute(00):icmp_seq=1ttl=64time=0.411ms64bytesfromcompute(00):icmp_seq=2ttl=64time=0.570ms64bytesfromcompute(00):icmp_seq=3ttl=64time=1.64ms64bytesfromcompute(00):icmp_seq=4ttl=64time=2.49ms[root@compute~]#pingcontrolPINGcontrol(00)56(84)bytesofdata.64bytesfromcontrol(00):icmp_seq=1ttl=64time=0.795ms64bytesfromcontrol(00):icmp_seq=2ttl=64time=1.42ms64bytesfromcontrol(00):icmp_seq=3ttl=64time=0.583ms64bytesfromcontrol(00):icmp_seq=4ttl=64time=1.86ms在control上,发现pingcompute可以ping通了,在compute上测试pingcontrol同样可以ping通,说明主机名称和IP地址已经实现了一一对应。7.2.4免密码交互【实例6】在control主机登录到compute主机,登录后,在compute主机的/root目录创建control.txt文件,然后退出。[root@control~]#sshroot@computeTheauthenticityofhost'compute(00)'can'tbeestablished.ECDSAkeyfingerprintisSHA256:u7wbTDQBSrKGhc/necD2TdZdfmzmkM35Spd+U3oXECDSAkeyfingerprintisMD5:38:91:ac:a2:d7:fa:72:ba:18:8b:28:26:56:1e:46:5e.Areyousureyouwanttocontinueconnecting(yes/no)?yesWarning:Permanentlyadded'compute,00'(ECDSA)tothelistofknownhosts.root@compute'spassword:Lastlogin:MonFeb2721:57:482023[root@compute~]#touchcontrol.txt[root@compute~]#lsanaconda-ks.cfginitial-setup-ks.cfg模板图片下载桌面control.txt公共视频文档音乐[root@compute~]#exit登出7.2.4免密码交互Connectiontocomputeclosed.由于两台主机都默认安装了ssh服务,所以在control主机上,可以使用sshroot@compute命令,登录到compute(00)上,首先输入yes,然后输入compute上root用户的密码,实现登录操作,使用exit退出登录,在compute主机可以使用相同的方法登录到control主机。实现服务器间免密码交互是很有必要的,因为我们在通过脚本实现夜间文件复制或者备份的时,不可能再去与服务器进行交互,输入密码,而且在部署集群时,每次复制文件都要输入密码很繁琐,因此有必要实现免密码交互。7.2.4免密码交互【实例7】使用免交互的方式,即不需要输入对方用户的密码,实现control和compute的相互登录。(1)在control主机上生成公钥和私钥文件。[root@control~]#ssh-keygenGeneratingpublic/privatersakeypair.Enterfileinwhichtosavethekey(/root/.ssh/id_rsa):Enterpassphrase(emptyfornopassphrase):Entersamepassphraseagain:Youridentificationhasbeensavedin/root/.ssh/id_rsa.Yourpublickeyhasbeensavedin/root/.ssh/id_rsa.pub.Thekeyfingerprintis:SHA256:jpjuScuXQFEWsWnntU3/cfz0mOpsYSwgVUmlzkKIuCAroot@controlThekey'srandomartimageis:+---[RSA2048]----+|.=oooo.||..o+...||E...=.oo.||......+.++..||...S.+....+||.oo..+==||+....o.o+||+oo...||.*.o+|+----[SHA256]-----+7.2.4免密码交互[root@control~]#cd/root/.ssh/[root@control.ssh]#ls-l总用量
12-rw-------.1rootroot16752月2722:27id_rsa-rw-r--r--.1rootroot3942月2722:27id_rsa.pub-rw-r--r--.1rootroot5472月2722:17known_hosts使用ssh-keygen命令后直接默认回车即可在/root/.ssh目录生成2个文件,一个是私钥id_rsa.另一个是共钥id_rsa.pub,然后把自己的公钥发送给想要免密码登录的主机,实现公钥加密,私钥解密,即实现了免密码登录。(2)把control上的公钥复制给compute。复制control的公钥给compute主机,操作如下。[root@control.ssh]#ssh-copy-idroot@compute/usr/bin/ssh-copy-id:INFO:Sourceofkey(s)tobeinstalled:"/root/.ssh/id_rsa.pub"/usr/bin/ssh-copy-id:INFO:attemptingtologinwiththenewkey(s),tofilteroutanythatarealreadyinstalled使用ssh-copy-idroot@compute将生成的id_rsa.pub公钥复制给compute主机。(3)在control上登录compute主机[root@control.ssh]#sshroot@computeLastlogin:MonFeb2722:17:142023fromcontrol再次登录时,发现已经不需要输入root用户的密码了,实现了免密码登录,在使用scp和rsync同步文件时,也不需要输入密码了。需要注意的是,现在只实现了从control到compute单向的免密码交互,需要在compute上进行同样的操作,才可以实现compute到control的免密码交互。7.2.5复制远程文件【实例8】在control主机上,使用scp命令将compute主机/root目录下的control.txt文件复制到control主机的/root目录下。[root@control~]#scproot@compute:/root/control.txt.control.txt100%00.0KB/s00:00[root@control~]#lsanaconda-ks.cfgcontrol.txtinitial-setup-ks.cfg公共模板视频图片文档下载音乐桌面在control主机上,使用scproot@compute:/root/control.txt.把compute上的文件复制到了本机的当前目录,其中scp命令是网络复制命令,后面有两个选项,第一个是想要复制的目录和文件名,第二个是复制到的路径,这里使用.代表当前路径,如果需要复制目录的话,需要加-r参数,这里的scp同样是默认安装的ssh服务提供的命令。【示例9】在compute主机上,使用scp命令将compute主机/etc/yum.repos.d目录复制到control的/root目录下。[root@computeyum.repos.d]#scp-r/etc/yum.repos.d/root@control:/rootCentOS-Base.repo
100%16641.7MB/s00:00使用scp-r命令实现了目录复制,这里把想要复制的目录或者文件作为scp的第一个选项,拷贝到的路径作为第二个选项。7.2.5定时同步远程文件rsync和scp同样可以在远程和本地之间复制文件,但rsync比scp的强大之处在于它可以实现文件的增量复制,即第一次复制完成后,第二次复制目录或者文件的时候,只是把目录或文件增加的内容进行复制,而不是复制整个目录或文件,这样就极大了提升了备份文件的效率。rsync命令常用的选项如下所示。l-a:归档模式,表示以递归方式传输文件,并保持文件所有属性。l-v:详细模式输出l-z:对备份的文件在传输时进行压缩处理【示例10】在control主机上,使用rsync命令同步compute主机上的/etc目录到/root目录下。(1)在control和compute主机上安装rsync服务。[root@control~]#yuminstallrsync–y[root@compute~]#yuminstallrsync-y在两台主机上分别使用yuminstall安装rsync服务。(2)在control主机上使用rsync服务。[root@control~]#rsync-avzroot@compute:/etc/rootsent52,506bytesreceived11,573,966bytes1,223,839.16bytes/sectotalsizeis31,642,667speedupis2.72使用rsync命令实现把compute上的/etc目录同步到本机/root目录下,这次同步文件数量是11,573,966bytes。[root@control~]#rsync-avzroot@compute:/etc/rootreceivingincrementalfilelistsent799bytesreceived80,975bytes54,516.00bytes/sectotalsizeis31,642,667speedupis386.95再次同步的时候,发现receivingincrementalfilelist的意思是同步增加的文件,这次只同步了增加的80975bytes内容。本任务注意点(1)在进行hosts文件配置和免密码交互配置时,在两台主机上都要配置。(2)使用scp和rsync同步目录或文件时,把要复制的文件作为第一个选项。任务拓展训练(1)在control主机上,将compute主机上的/etc目录备份到/root目录下。(2)在compute主机上,配置到control主机root用户的免密码交互。(3)在compute主机上,将control主机的/etc/yum.repos.d目录备份到/root目录下。(4)在每天晚上11点,将control的/etc目录同步到compute的/tmp目录下。(5)在每周日的1点,将control的/var/log目录同步到compute的/root目录下。补充知识ping命令工作流程ping命令使用ICMP协议,该协议是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息,控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息,这些控制消息并不传输用户数据,但对于用户数据传递起到重要作用。ICMP协议是一种面向无连接的协议,用于传输出错报告控制信息。它是一个非常重要的协议,它对于网络安全具有极其重要的意义。它属于网络层协议,主要用于在主机与路由器之间传递控制信息,包括报告错误、交换受限控制和状态信息等。当遇到IP数据无法访问目标、IP路由器无法按当前的传输速率转发数据包等情况时,会自动发送ICMP消息。Ping本机IP地址,是为了检查本机的IP地址是否设置有误。Ping本网网关或本网IP地址,是为了检查硬件设备是否有问题,也可以检查本机与本地网络连接是否正常。Ping本地DNS地址,是为了检查本地DNS服务器是否工作正常。Ping远程IP地址,这主要是检查本网或本机与外部的连接是否正常。补充知识1.在同一网段内假设本机是0,在本机上运行“Ping0”后,都发生了些什么呢?首先,Ping命令会构建一个固定格式的ICMP请求数据包,然后由ICMP协议将这个数据包连同地址“0”一起交给IP层协议(和ICMP一样,实际上是一组后台运行的进程),IP层协议将以地址“0”作为目的地址,本机IP地址作为源地址,加上一些其他的控制信息,构建一个IP数据包,并想办法得到0的MAC地址(物理地址,这是数据链路层协议构建数据链路层的传输单元——帧所必需的),以便交给数据链路层构建一个数据帧。关键就在这里,IP层协议通过机器B的IP地址和自己的子网掩码,发现它跟自己属同一网络,就直接在本网络内查找这台机器的MAC,如果以前两机有过通信,在A机的ARP缓存表应该有B机IP与其MAC的映射关系,如果没有,就发一个ARP请求广播,得到B机的MAC,一并交给数据链路层。后者构建一个数据帧,目的地址是IP层传过来的物理地址,源地址则是本机的物理地址,还要附加上一些控制信息,依据以太网的介质访问规则,将它们传送出去。主机B收到这个数据帧后,先检查它的目的地址,并和本机的物理地址对比,如符合,则接收;否则丢弃。接收后检查该数据帧,将IP数据包从帧中提取出来,交给本机的IP层协议。同样,IP层检查后,将有用的信息提取后交给ICMP协议,后者处理后,马上构建一个ICMP应答包,发送给主机A,其过程和主机A发送ICMP请求包到主机B一模一样。补充知识2.不在同一网段内在本机上运行“ping00”后,开始跟上面一样,到了怎样得到MAC地址时,IP协议通过计算发现主机D与自己不在同一网段内,就直接将交由路由器处理,也就是将路由的MAC取过来,至于怎样得到路由的MAC,跟同一网络一样,先在ARP缓存表找,找不到就广播。路由器得到这个数据帧后,再跟主机D进行联系,如果找不到主机D,就向主机A返回一个超时的信息。练习题1.选择题(1)Linux系统中,查看自己主机的IP地址,使用的命令()。A.hostnameB.ifconfigC.host
D.ping(2)网卡配置文件/etc/sysconfig/network-scripts/ifcfg-ens33,以下哪个选项是激活网卡()。A.BOOTPROTOB.IPADDRC.ONBOOTD.PREFIX(3)使用ping命令检测网络连通性,以下哪项参数是设置回应返回的次数()。A.-cB.-fC.-iD.-n(4)可以使用()命令来追踪网络数据包的路由途径。A.nslookupB.ipC.netstatD.traceroute(5)测试自己的主机和其它主机是否能正常通信,可以使用()命令。A.hostB.pingC.ifconfigD.nslookup2.简答题(1)如何配置本地的IP地址以及修改本机的主机名?(2)如何使用ip命令来查看本地的IP、路由等信息?
Linux操作系统项目式教程目录CONTENTS项目1初识Linux操作系统项目2Linux操作系统基础项目3用户组群和权限管理项目项目4配置和管理磁盘项目5安装软件项目6编写Shell脚本统项目7配置和管理网络系统项目8配置和管理Linux服务项目8配置和管理Linux服务任务1配置和管理Apache服务器任务2配置和管理Nginx服务器任务3配置和管理MariaDB服务器任务4搭建单机动态Web应用8.1.1Apache服务器概述ApacheHTTPServer(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,是目前世界上使用最广泛的一种Webserver。它以跨平台、高效和稳定而闻名,可以运行在几乎所有广泛使用的计算机平台上。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。Apache是用C语言开发的基于模块化设计的web应用,总体上看起来代码的可读性高于PHP代码,它的核心代码并不多,大多数的功能都被分割到各种模块中,各个模块在系统启动时按需载入。Apache支持SSL技术,支持多个虚拟主机。Apache是以进程的Prefork模式(还有基于线程的Worker模式)为基础的结构,进程要比线程消耗更多的系统开支,不太适合于多处理器环境,因此,在一个ApacheWeb站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。8.1.2安装并设置Apache服务器1.安装Apache服务器[root@localhost~]#yuminstallhttpd-y已安装:httpd.x86_640:2.4.6-98.el7.centos.6
作为依赖被安装:apr.x86_640:1.4.8-7.el7apr-util.x86_640:1.5.2-6.el7httpd-tools.x86_640:2.4.6-98.el7.centos.6mailcap.noarch0:2.1.41-2.el7
完毕!Apache服务器需要安装的软件是httpd。2.设置防火墙和selinux[root@localhost~]#setenforce0[root@localhost~]#firewall-cmd--add-service=http--permanent//永久放行http[root@localhost~]#firewall-cmd--reload[root@localhost~]#firewall-cmd--list-servicessshdhcpv6-clientsambaftpnfsdhcphttpApache服务器使用的是http协议,防火墙需要放行http就可以了。8.1.3配置默认网站目录1.启动服务[root@localhost~]#systemctlstarthttpd启动服务后,使用浏览器输入http://服务器的IP地址并按Enter键,就可以访问Apache服务器的默认主页了,如图8-1所示。图8-1Apache服务器默认主页2.测试自己制作网页Apache的配置文件在/etc/httpd/conf文件夹下,配置文件名称是httpd.conf,打开配置文件后,观察119行[root@localhost~]#cd/etc/httpd/conf[root@localhostconf]#lshttpd.confmagic[root@localhostconf]#vihttpd.conf119DocumentRoot"/var/www/html"提示网站根目录是/var/www/html,将自己制作的网站上传到这个目录下,就可以进行访问了,可以在这个目录下制作一个简单页面,进行访问。[root@localhostconf]#echoHelloLinux>/var/www/html/index.html在/var/www/html下,制作主页index.html,写入内容“HelloLinux”,如图8-2所示。图8-2浏览自己制作的网页8.1.3配置默认网站目录3.修改默认网站目录Apache的默认网站目录是/var/www/html,因为是默认的,所以通常不够安全,可以通过修改配置文件的方法修改默认网站目录。[root@localhost~]#mkdir
–p/home/www[root@localhost~]#echoThisismyfirstApachewebsite>/home/www/myweb.html首先在/home/目录下创建www文件夹,在www文件夹中创建myweb.html,写入内容ThisismyfirstApachewebsite。[root@localhost~]#setenforce0[root@localhost~]#vihttpd.conf……119DocumentRoot"/home/www"//修改文档根目录124<Directory"/home/www">//网站数据目录的权限AllowOverrideNoneRequireallgranted</Directory>131<Directory"/home/www">OptionsIndexesFollowSymLinksAllowOverrideNoneRequireallgranted</Directory><IfModuledir_module>164DirectoryIndexmyweb.html//修改默认主页</IfModule>……[root@localhostconf]#systemctlreloadhttpd8.1.3配置默认网站目录然后取消selinux,打开httpd.conf配置文件,将119行、124行、131行中的目录位置修改为/home/www;将164行的默认主页名称修改为myweb.html,保存配置。重启服务,再使用浏览器访问,就可以访问/home/www目录下的网页了,如图8-3所示。
图8-3修改默认网站目录需要说明的是119行,定义的就是网站的根目录,131定义的是这个目录的访问权限,一般设置为<Directory"/home/www">
OptionsIndexesFollowSymLinks//该目录没有index页面时,显示目录本身AllowOverrideNone//忽略.htaccess文件
Requireallgranted//授权所有主机可以访问</Directory>8.1.4配置虚拟主机在一台Apache服务器上通常需要运行多个网站,这就需要配置服务,实现需求。在用户端看,每个网站都是一个主机,但实际上,这些网站都是在一台服务器上的,所以叫虚拟主机。Apache虚拟主机的配置方法通常有三种,分别是基于IP的、基于域名的、基于端口的。基于IP和端口的通常使用在局域网中,基于域名的通常使用在Internet上。1.基于IP地址的虚拟主机(1)给服务器配置多个IP地址[root@localhost~]#ipaddradd01devens33[root@localhost~]#ipaddr1:lo:<LOOPBACK,UP,LOWER_UP>mtu65536qdiscnoqueuestateUNKNOWNgroupdefaultqlen1000link/loopback00:00:00:00:00:00brd00:00:00:00:00:00inet/8scopehostlovalid_lftforeverpreferred_lftforeverinet6::1/128scopehostvalid_lftforeverpreferred_lftforever2:ens33:<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdiscpfifo_faststateUPgroupdefaultqlen1000link/ether00:0c:29:16:b4:83brdff:ff:ff:ff:ff:ffinet00/24brd55scopeglobalens33valid_lftforeverpreferred_lftforeverinet01/32scopeglobalens33valid_lftforeverpreferred_lftforeverinet6fe80::20c:29ff:fe16:b483/64scopelinkvalid_lftforeverpreferred_lftforever8.1.4配置虚拟主机(2)创建web1和web2目录,建立主页文件[root@localhost~]#mkdir-p/home/www/web1[root@localhost~]#mkdir-p/home/www/web2[root@localhost~]#echoThisismyweb1>/home/www/web1/index.html[root@localhost~]#echoThisismyweb2>/home/www/web2/index.html(3)配置基于IP地址的虚拟主机设置/的访问权限时granted,打开/etc/httpd/conf下的httpd.conf文件,第将104行设置成Requireallgranted。102<Directory/>103AllowOverridenone104Requireallgranted105</Directory>在文件的最后加上如下代码:<Virtualhost00:80>ServerName00
DocumentRoot/home/www/web1</Virtualhost><Virtualhost01:80>
ServerName01
DocumentRoot/home/www/web2</Virtualhost>重新启动httpd服务。[root@localhostconf.d]#systemctlrestarthttpd8.1.4配置虚拟主机(4)测试配置启动浏览器,输入00可以访问/home/www/web1的index.html,如图8-4所示。
图8-4访问web1的index.html输入01可以访问/home/www/web2的index.html,如图8-5所示。
图8-5访问web2的index.html8.1.4配置虚拟主机2.基于端口的虚拟主机使用同一个IP地址,但配置不同的端口号,同样可以实现在一个Apache服务器上发布多个网站。(1)创建web1和web2目录,建立主页文件[root@localhost~]#mkdir-p/home/www/web1[root@localhost~]#mkdir-p/home/www/web2[root@localhost~]#echoThisismyweb1>/home/www/web1/index.html[root@localhost~]#echoThisismyweb2>/home/www/web2/index.html(2)配置基于端口的虚拟主机将监听的8000和8080端口加入到主配置文件中。打开/etc/httpd/conf/httpd.conf,在42行后加入以下两行。43Listen800044Listen8080在文件最后加上如下配置。<Virtualhost00:8000>ServerName00DocumentRoot/home/www/web1</Virtualhost><Virtualhost00:8080>ServerName00DocumentRoot/home/www/web2</Virtualhost>重新启动htt
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 销售经理工作计划
- 二年级第一学期语文教学计划
- 航空领域航空器维修维护计划
- 2024年二手房产买卖意向金协议3篇
- 保安公司经理月度工作计划
- 2024人力资源管理期望培训与员工能力提升服务协议3篇
- 财务个人鉴定范文10篇
- 2024年度信息技术咨询协议2篇
- 个人年终工作总结-15篇
- 2024年出海东南亚研究报告:宏观篇
- GB/T 22080-2016信息技术安全技术信息安全管理体系要求
- GB/T 1094.1-2013电力变压器第1部分:总则
- 担保法律操作实务课件
- 跌倒和坠床的健康教育专业知识课件
- 320-导热油安全技术说明书
- 抗血小板药物讲解课件
- 拉森钢板桩支护施工
- 做成功父母 培养优秀的孩子课件
- DB37-T 4190-2020 规划水资源论证技术导则
- 卡通绘本愚公移山成语故事寓意故事PPT
- 医嘱执行查对记录本
评论
0/150
提交评论