一、基本知识
rpm包的合法性验正: 包制作者制作完成之后会附加数字签名于包上; 来源合法性 包的完整性
包的制作者使用单向加密提取原始数据的特征码,而后使用自己的私钥加密这段特性码,附加原始数据后面。 验正过程: 前提:必须有可靠机制获取到包制作者的公钥; 1、使用制作者的公钥解密加密的特征码,能解密则意味着来源合法; 2、使用与制作者同样的意向加密算法提取原始数据的特征码,并与解密出来的特征作比对,相同,则意味着完整性没问题;
二、基本命令
rpm包来源合法性及完整性检验:
前提:在当前系统上导入包的制作者的公钥 导入: rpm --import /path/to/key_file
# rpm -qa gpg-pubkey* 显示所有已经导入的gpg格式的公钥
# rpm -qi gpg-pubkey-NAME 显示密钥的详细信息
检查包:安装过程中会自动执行
手动检查: rpm -K /path/to/package_file rpm --checksig /path/to/package_file
不检查包完整性: rpm -K --nodigest 不检查来源合法性: rpm -K --nosignature
三、实验
导入公钥认证 gpg-key
今天遇到一个问题是配置的yum源安装包,突然提示要导入公钥才给安装,不然不给。可是我的yum源设置时是不检查公钥的,好奇怪,因为本人是重新克隆虚拟机,才报错的,那就导入公钥试一下吧。
1、yum源配置配置没有检测gpgcheck
2、提示要导入公钥不然不给安装软件
3、公钥的导入,查询
4、重新安装软件没有提示
5、手动检测公钥
四、总结
在生产环境下yum源的配置是基础服务,不一定要会安装yum源服务器,但是一定要会配置本地yum源,而导入公钥认证时必须要会的,安全很重要,像上面那样如果不导入不给你装软件你不是game over啦。