首页主机资讯Yum软件包签名验证怎么操作

Yum软件包签名验证怎么操作

时间2025-12-04 08:21:06发布访客分类主机资讯浏览445
导读:Yum 软件包签名验证操作指南 一 启用与配置签名验证 全局启用:在 /etc/yum.conf 中确保 gpgcheck=1,这样安装与更新时会自动校验软件包签名。示例:[main] gpgcheck=1 按仓库配置:在 /etc/...

Yum 软件包签名验证操作指南

一 启用与配置签名验证

  • 全局启用:在 /etc/yum.conf 中确保 gpgcheck=1,这样安装与更新时会自动校验软件包签名。示例:
    [main]
    gpgcheck=1
    
  • 按仓库配置:在 /etc/yum.repos.d/*.repo 的每个仓库段中设置 gpgcheck=1,并通过 gpgkey 指定公钥位置(本地或 URL)。示例:
    [base]
    name=CentOS-$releasever - Base
    baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    
    说明:部分第三方仓库还会使用 repo_gpgcheck=1 来验证仓库元数据签名,可按需开启。以上配置均为 Yum 的标准做法,默认情况下 Yum 会进行签名校验。

二 导入 GPG 公钥

  • 导入系统发行版密钥(示例):
    • RHEL/CentOS 7:
      sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
      
    • Fedora(按版本选择对应密钥文件,如 RPM-GPG-KEY-fedora-):
      sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-<
          version>
          
      
  • 导入第三方仓库密钥(示例:导入 RabbitMQ 与 Modern Erlang 仓库密钥):
    sudo rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
    sudo rpm --import https://packagecloud.io/rabbitmq/erlang/gpgkey
    sudo rpm --import https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
    
  • 提示:导入一次即可,后续安装/更新会自动使用该公钥进行校验。

三 安装与更新的签名校验

  • 正常安装/更新:当 gpgcheck=1 且密钥已导入时,执行以下命令会自动校验签名,无需额外参数:
    sudo yum install <
        package>
        
    sudo yum update
    
  • 安全更新检查与安装:
    sudo yum check-update --security
    sudo yum update --security
    
  • 临时跳过签名校验(不建议,仅用于应急):
    sudo yum install <
        package>
         --nogpgcheck
    
  • 说明:Yum 默认启用签名验证;若签名校验失败,说明软件包可能被篡改或来源不可信,应停止安装。

四 对本地 RPM 包进行签名校验

  • 使用 rpm 校验本地 RPM 文件:
    rpm -K <
        package_file.rpm>
        
    rpmkeys --checksig <
        package_file.rpm>
        
    
  • 期望输出包含 OKGood signature 等字样;若提示 NOT OKBAD signature,请勿安装。
  • 对于非 RPM 的源码包(如 .tar.gz),通常提供 .sig 签名文件,可用 GPG 校验:
    gpg --verify <
        file.tar.gz.sig>
        
    
    若未自动找到数据文件,可显式指定:
    gpg --verify <
        file.tar.gz.sig>
         <
        file.tar.gz>
        
    
  • 建议先导入对应项目的公钥,再进行校验。

五 常见问题与排查

  • 校验失败处理:出现 GPG signature verification failed 时,优先检查是否导入了正确的公钥、仓库 gpgkey 是否配置正确、系统时间是否准确(时间偏差会导致签名验证失败)。
  • 第三方仓库:部分仓库(如 RabbitMQ)需要导入多个密钥,且同时开启 repo_gpgcheck=1gpgcheck=1 更稳妥。
  • 元数据与缓存:修改仓库或密钥后,建议清理缓存并重建元数据索引:
    sudo yum clean all
    sudo yum makecache
    
  • 安全建议:生产环境不要长期关闭 gpgcheck;若必须临时绕过,请在完成安装后立即恢复并重新校验。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Yum软件包签名验证怎么操作
本文地址: https://pptw.com/jishu/763173.html
如何在Linux上安装并配置Compton 如何通过Compton配置实现屏幕缩放

游客 回复需填写必要信息