首页 > 运维 > linux运维 > 正文

如何在Linux中验证软件包签名 Linux rpm --checksig验证

P粉602998670
发布: 2025-08-31 10:16:01
原创
887人浏览过
RPM签名验证是确认RPM包来源可信和完整性的重要手段。使用rpm --checksig 包名.rpm命令可检查包的GPG签名和完整性,输出中显示“OK”表示验证通过。该命令默认检查GPG签名、PGP签名及SHA1/MD5摘要,确保包未被篡改且由可信方发布。可通过--nosignature仅验证完整性,或--nodigest仅验证签名。若系统未导入对应GPG公钥,需先使用rpm --import导入官方密钥(如Fedora的34EC9CBA.txt),否则验证会失败。验证失败可能因密钥未安装、包被修改或签名失效。注意该命令仅对本地文件生效,不自动下载密钥。正确使用rpm --checksig结合可信密钥管理,能有效保障软件包安全性。

如何在linux中验证软件包签名 linux rpm --checksig验证

在Linux系统中,验证软件包签名是确保软件来源可信、防止安装被篡改包的重要步骤。对于使用RPM包管理器的发行版(如RHEL、CentOS、Fedora等),可以使用

rpm --checksig
登录后复制
命令来验证RPM包的完整性和签名。

什么是RPM签名验证

RPM包可以附带GPG数字签名,用于证明该包由可信的开发者或组织发布,并且在发布后未被修改。通过验证签名,你可以确认包的来源和完整性。

使用rpm --checksig验证签名

基本语法如下:

rpm --checksig 包名.rpm

例如,验证一个名为

example-package-1.0-1.x86_64.rpm
登录后复制
的包:

rpm --checksig example-package-1.0-1.x86_64.rpm

输出示例:

example-package-1.0-1.x86_64.rpm: rsa sha1 (md5) pgp md5 OK

如果看到

OK
登录后复制
,说明签名和包完整性验证通过。

验证的具体内容

--checksig
登录后复制
会检查以下几项:

  • PGP签名:确认RPM包是否由可信私钥签名
  • GPG签名:现代RPM通常使用GPG签名
  • 包完整性(SHA1/MD5):验证文件未被修改

你可以指定只验证某一项,例如:

百度文心百中
百度文心百中

百度大模型语义搜索体验中心

百度文心百中 22
查看详情 百度文心百中
rpm --checksig --nosignature example-package.rpm # 只验证完整性,不验证签名
rpm --checksig --nodigest example-package.rpm # 只验证签名,不验证完整性

导入GPG密钥以验证签名

如果系统未安装对应的GPG公钥,即使包有有效签名,验证也会失败。你需要先导入发行方的GPG密钥。

例如,导入Fedora的GPG密钥:

sudo rpm --import https://fedoraproject.org/static/34EC9CBA.txt

导入后再次运行

--checksig
登录后复制
,应能正确识别签名。

查看系统已安装的GPG密钥:

rpm -q gpg-pubkey

常见问题与说明

如果验证失败,可能原因包括:

  • 未导入正确的GPG公钥
  • 包被修改或损坏
  • 签名过期或被撤销

注意:

--checksig
登录后复制
仅验证本地RPM文件,不会自动下载或更新密钥。确保你从官方渠道获取密钥和软件包。

基本上就这些。使用

rpm --checksig
登录后复制
是验证RPM包真实性的标准方法,配合正确的GPG密钥管理,能有效提升系统安全性。

以上就是如何在Linux中验证软件包签名 Linux rpm --checksig验证的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号