【问题标题】:apt-get install quiet and --assume-yes but checking if package is signedapt-get install quiet 和 --assume-yes 但检查包是否已签名
【发布时间】:2016-03-15 20:56:26
【问题描述】:

大家! 我有 debian 设备,我希望它从我的存储库中自动升级。 为此,我只需从 cron 调用 apt-get: apt-get --assume-yes --force-yes 安装 mypackage 但在这种情况下,如果它无法检查签名,它将安装包事件。安装前如何检查签名?

【问题讨论】:

    标签: authentication debian signature apt-get deb


    【解决方案1】:

    GPG 签名有两种类型:

    1. APT 存储库元数据上的 GPG 签名,以及
    2. Debian 软件包上的 GPG 签名。

    为了验证 APT 存储库元数据,您需要导入签名者的公共 GPG 密钥,如下所示:

    sudo bash -c 'wget -O - https://url/key' | apt-key add -

    为了验证 Debian 包签名,它要复杂得多,并且大多数包提供者(如 Ubuntu 和 Debian)不签署包。您尝试安装的软件包很可能没有签名。

    但是,如果包已签名并且您想对其进行验证,则需要:

    1. 确保您已安装 debsig-verify
    2. 创建用于验证包签名的 XML 策略文档。
    3. 修改/etc/dpkg/dpkg.cfg以启用包签名验证。注意 您应该确保启用此选项不会破坏未签名软件包的软件包安装(如 Ubuntu 和 Debian 提供的软件包)。
    4. 使用apt-get 安装时将验证包签名。

    查看我写的这篇名为 GPG sign and verify deb packages and APT repositories 的博文,它解释了您需要了解的有关验证 debian 软件包和 APT 存储库的所有信息,并包括一些 debsig-verify 的示例配置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-24
      • 2020-12-22
      • 1970-01-01
      • 1970-01-01
      • 2012-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多