00:00
大家好,欢迎大家继续收看上硅谷的云计算课程,我是沈超老师,这节课我们继续来学习二全包管理,那这节课我们来学习一下验证。呃,什么是验证啊啊,这我们待会敲两下你就知道了,非常简单,那我们先看一下它的命令格式啊,第一个RPM验证使用的选项是杠大类,那如果后面加A,它是代表验证所有的系统当中已经安装的软件包,那我们说这个不行,没用,为啥?验证的东西太多,或者输出的内容量太大,它就会这个掩盖掉你的干扰项,就是你要用的这个内容,内容太多,你很难从里面找到你真正需要的东西,所以我们说一般不建议这个验证所有,而且消耗资源这样做,那常用的是这两个内润。RPM杠大V加一个报名。诶,注意我验证的是已安装包,所以后面跟的是包名,OK,然后呢,V的意思是这个单词啊,这个呃,这个验证的单词,然后呢,这是验证单个软件包,也可以按验证单个的系统文件,当然我再强调这个文件必须是系统文件,换句话说,必须是通过RPM包安装出来的,才能通过这种方法来验证,如果你手工新建的或者源码包安装的都是不行的,OK。
01:23
好,那命令知道了,我们验一下就知道了。那这里啊,啊,刚刚我是稍微做了点修改啊。那这里呢,我们看啊,当我第一次来验证这个。阿帕细胞的时候,他没有任何输出。那是由于什么?我的这个包是新装的,我什么都没有干过,所以呢,它是没有输出的,但如果我打开它的配置文件来,我们都知道这个配置文件是属于这个包了,对吧?我做了点修改,我改啥了,看着我加了一行空白,行。这个时候你就会发现什么,当我再去验证它的时候,它就会有一些提示,那各位后面是告诉你。
02:05
这里边这个文件,这个包装的这个文件有点不太对,跟正常的就是跟装完的系统文件不一样,那到底哪些不一样呢?这些字母代表了它不同不一样的地方,OK,那这些字母是啥含义呢?看一下。首先大小发生了改变,如果有S,那各位我刚刚是不是在这个文件里加了一个空白行对吧?啊,我提前加了一下一样的,就是加了空白号,那这种情况下。多了一行,那是不是大小肯定变了对吧?其次呢,如果有全限的改变,就会有M这个字符出现,那这里我们没改权限,所以这里没有M,就证明这个权限没变。后边还有个五,这个五代表MD校验和改变。我说可以看成文件内容是否改变,什么是MD?五、我们举个例子啊,我们举个例子。
03:03
各位MD5是一种加密方式,是一种加密方式,但是呢,我们现在用这种东西来做,可以做什么?完整性校验,完整性校验。什么叫完整性,各位,我们从网上随便找个工具,这个工具我们也会提供给大家,然后呢,来。我再随便新建一个普通文件。然后呢,我里边写点内容随便写。然后我把它复制一下,粘贴多大一点,多多粘点,然后全选复制粘贴,全选复制粘贴,多粘点,粘大点好保存一下。我们看一下这个文件已经。6064K可以吧,然后呢,来我把这个文件拖过来。他会用这个MD5的这个加密算法,给他算一个这个随机的16进制数的这样一串这个MD5码。
04:03
那这个码是什么?只要你文件内容不变,不论你在谁的电脑上算,他都应该是这个码,在我的电脑里是这样,你的电脑里拖过来他应该也是这样啊,一致的。那为什么用这样的一个东西,原因我们经常有什么上网的时候需要下载一些数据,对吧?那为了保证你从我这下载回去的文件跟我给你的是一个文件,那怎么办?我先算一遍我的,在我电脑里算一遍MMD5码,然后呢?我把这个码扒在扒在了网页上。然后呢,你下载回去,你再用工具把它再算一遍,然后拿你算出来这个码和我在网站上的码对比。如果一致证明你下的东西没有任何变化,是我给你就是我给你给的。如果不一致,那么你可能就要重新下载,证明你这个文件最少在安装的时候或者下载的时候丢包了,那也就是说只要文件内容不变,不论在谁的电脑里算他的这个码都是这样。
05:09
但是如果变了,你看着我就加一个空格。这么大的一篇文档,我什么都没变,我就加了条空格保存。我们的学员可能会以为,如果是这样的话,可能大多数内容都一样,后面两个符号或者几个符号不一样,不是啊,你看一下,他只要内容发生经点变化,你看算出来的东西就没有一点和前面的一样。那我们用M第五加密的这种特性。这其实是MD5算法的特性,就是说MD5的标准算法,它是只要它的内容不变,不论谁谁算,在谁的电脑里算,它的这个MD5码都是一致的,但是只要发生经典变化,这个值就完全不一样。所以我们日常生活中,我们用这种特性,在网站上用它来做什么?完整性校验就是你确定你下载的东西和我给你的是一样,所以你们如果讲完课,你们如果注意一下很多提供下载软件的这个网站。
06:12
它上面都会加这个MD5码,我们的学员可能原先没见过,他可能就不知道这东西是干什么用的,哎,这回学完之后,你以后你也会找一个MD5工具啊,随便找这个工具满天飞啊,我当时当然我们也会把这个软件到时候提供给大家啊,好了,这就是MD5的验证,那换句话说,我说。如果这个码变了,你就可以看成是文件内容发生了改变,如果内容不变,M9码换算它结果就一定一致。那有人说老师。我已经验证了大小改变了,我为什么还要验证内容改变?各位,很简单,有可能我没改大小,比如说它里面本来有一个A字母,我改成B字母,大小没变,但是内容变了吗?变了,所以。
07:00
不光要验证大小,还要验证内容是否。那我们这里可以看到。我加了个空白行嘛,那肯定大小变了,内容是不是肯定也变了,那其他这些是不是都没变了,这些什么?呃,这个文件的路径啊,这个设备的代码呀,包括所有者呀,没有,但是这个气垫啊,为啥。这是文件的修改时间,哎,那我改了吗?我还保存了,那时间肯定变了,对吧?好,其次这个C这个C。是标识,我当前这个文件是一个配置文件,标识文件类型的,还常见的有这样一些类型,小心啊。正常情况下绝不会出现鬼文件,这是ghost就是鬼的意思,各位,什么叫鬼文件?这个软件包里不应该有这个文件,结果呢,它多出来这样一个文件,不应该存在还是回,所以这种情况一般都证明这个鸦片包是出现问题了,OK,这种情况很少见啊。那好各位,这就是校验软件包,当然你也可以校验某一个系统文件,这都是可以的,用于判断什么这个文件有没有被别人人为修改过,当然如果像配置文件这种东西,肯定我们都改,对吧,就算你以后你想我们现在是新系统,所以改完能看到。
08:19
但你想你要是用了五六年,你里面是不是不是大多数配置文件都被改过,但是一些重要的系统文件,比如说像内核啊,呃,像启动项啊,这样的东西,有可能我们多少年都不会动,那这种情况下验证,如果发现有问题,那你可能就要查一下到底是什么东西出了问题,OK,好。这是脚印。这是校验,其实也很简单啊,非常简单的一个东西,其次我们来说一下数字证书,哎,各位。刚刚校验的时候。他和谁对比?才能发现什么我的内容变了。他是不是得有一个原始值来和他对比,他是不是才能发现啊,这个内容和原始值是不是不一样。
09:04
对吧,所以我们说啊各位。呃,我们。我们每一个RPM包当中其实都会包含这样一套原始值,用来保证验对验。校验的时候能有一个提醒,但是问题来了,什么?他是和它的原始值去对比,发现不对,然后给你提供这个这个这个报错信息,但是如果这个原始值就被别人改了。你下载的这个安全包不是从官网正常下载,你是从某个不知名网站下载的这个包,可能又他本来就是开源的,它自己封了一个自己的安全包,自己打,自己组装了一大天包给你了,里边可能就是攻击程序。那这种情况下,你校验可能也不会出问题,因为它原始值就是有问题了。那这个时候谁来保证原始值的安全呢?各位,就出现了一个数字证书的东西,哎,数字证书。
10:03
各位,数字证书我们被广泛应用啊,这个东西相对来说原理稍微复杂,等我们讲了阿帕奇讲到数字证书的时候,我们再来说可以。那你现在是可以这样理解是吧,在官方的官方。原厂它会提供一个数字证书的公钥文件,你只要把它装上,各位这个公钥在哪,或者说这个数字证书在哪,在两个地方都有一个在光盘里。有叫做默认的就是这个。还有一个在ETC下的P,就是你装的系统当中这里也有这两个是一个东西,装哪一个东西光盘里也有,呃,系统当中默认就有,OK,那也就是说你首先必须先要把这个证书安装进去。那么。这个安装证书之后的目的是啥?你校验时候的这种它会干嘛?再安装RPM的时候,你会把提取RPM包装证书失物信息和我安装了证书信息进行对应。
11:07
然后如果两个一致参与,选中啥意思?我们之前校验,我说他是不是会跟这个包中的原始值是吧,来进行对比。那这个原始值有可能有问题啊,那怎么办?我系统当中事先装好一个证书。这个证书用来保证这些原始值是没有问题的,哎,只有你的这个软件包当中的这些原始值都通过我的证书校验,通过我的证书的认证,我才允许你装这个包,否则就直接就会报错。更不要在提你什么校验的时候,发现这里边有问题,或者他被动了手脚,那也就是说如果这个值被动手脚,只要系统中装了证书这个,他的这个证书认证他说通不过,然后你的安装就会失败,哎,那这样的话是不是就可以保证,如果我的。如果你的校验有问题,或者你下载的软件包有问题,那么他就直接会拒绝你安装。
12:04
各位小心啊,这个事儿就会提醒你了,他会要求你们必须安装。各位。这么小的一个命令,也就是说你必须安装完系统之后,你要记得干嘛把这个数字证书是手工导入进来,安装一遍,才能保证你以后的二钱包是安全的,对吧?那这个事儿就是一件事是吗?这么小的一条命令,你会不会忘?各位,别说你忘我也忘,每次只有讲到这儿我才能想起来,所以我一直在说什么,你要自己写一个服务器手册,管理手册,这个手册写什么,新装完的服务器我要配哪些东西,比如说我先要配IP,配防火墙,配这个安全证书,把数字证书导进来做一些,比如说关闭服务,做一些基本优化,各位。然后呢,把它写好,你一开始学的时候碰到有东西,你先写进去慢慢更新,等到毕业的时候,你自己是不是就会有一定的经验了,经验我说就是这么来的。
13:05
对吧,所以像这样的东西你记得一定干嘛要导进来。别忘了其次啊,各位导进来之后你能感觉到吗?各位,正常情况下,你的这个包只要是正常包,你从官方下了包,你啥都感觉不到,正常装正常就跟平常一样,但是呢,这个事是啥?不起作用则已。他要真的只要起一次作用,就会救你消兵。各位,这么多年啊,因为我们Windows啊,咱们绝大多数的包其实都是从官方下载的,所以工作的这么多年,我只碰到过一次,触碰到过一次IP包下载回来这个数字证书直接报错到不让我这个安装,他当时报的错就是数字数字证书验证不通过。哎,那我就说这种情况下,就是不不报错则已,或者不起作用则已,起了作用是不是就救命证明你下的这个包是补的最少是不是原厂包。
14:01
对吧,所以啊,这个事儿你就记得这个命令非常简单干嘛。你记得手工把这个证书导进来就行,使用选项杠杠1PORT。其次我再说证书在哪都有,光盘里也有,日期事前也有,都可以啊,随便都可以,那我们看看光盘里的了。I7下CD room当中,然后开啊,不用到开,开是包,那这里这就是证书,后面还有一些其他的这,但是这都用不着了,这都是调试的,安全的,还有测试的啊,我们就这个就行。那把它导进来就行,RPM啊,先别倒先干嘛,先查一下,先查查看。RPM-QA是不是查询所有的包在里面去搜JPG public就是数字动输的公钥,JPG公钥默认是找不着了,因为我没导,是需要你导完查一下它有了证明它是正常,我们试试啊啊QA。Graph里边去找JPG就行,不用再加这个public,你看啊,有一些什么JPG的东西,但是没有JPG public,我们说没有这个包。
15:09
对吧。没有吧?因为我们是不是还没有导入,那导入时候怎么办?大M杠杠port。Port,然后加这个包名就行了,RPM杠三到S6就行,好,啥都没发生,RM-QA查一下这里边有了吧,行了,这事就结束。你可能这辈子你都没看到这个东西起作用,但是我就说他只要起一次作用,就有可能会救一条命,就是这条服务器这条命不是救人的命啊,OK,所以这个就是什么。官方说这玩意儿有用,你信不信?那你如果没有特殊情况下,那你是不是就肯定得信对吧?再一个这么小的单条命令,你今天知道了,你你想想你半年之后毕业了,呃,找工作了,工作当中你能想起来这事吗?所以服务器手册一定要记得,这是工作中的一个重要的法宝,不断的去更新它,OK。
16:10
好,这节课呢,我们学习一下验证啊,这个其实哎知道就行,其实一般没有太大的作用,反而这个导入数字证书,别看这东西好像什么都没发生,但是这个东西重要度更高啊,各位,这就是这节课的内容,我们下节课再见。
我来说两句