为什么签名的deb软件包说他们在复制到我的私人deb repo时没有经过身份验证?

Modified on: Thu, 01 Aug 2019 18:40:03 +0800

快速版

我已经建立了一个私有的deb存储库,并将一些已签名的deb软件包复制到其中。我已在本地安装了签名密钥。但是当我尝试从repo安装时,我得到了这个警告:

WARNING: The following packages cannot be authenticated!

手动安装时,我可以按 y 但我想使用puppet自动安装这些软件包,但是失败了。

那么问题是什么?我是否需要使用我控制的密钥来重新签名包裹?有没有更好的方法来确保我安装了特定版本的木偶?

更多详情

我从puppet debian repository -http://apt.puppetlabs.com/我只是复制包裹(用于清除) )此目录

然后使用脚本更新存储库,该脚本为每个存储库运行以下命令:

cd /var/www/html/apt/ubuntu/lucid
dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
dpkg-scansources sources /dev/null | gzip -9c > sources/Sources.gz

我已在客户端安装了签名密钥。

$ sudo apt-key list
/etc/apt/trusted.gpg
--------------------
...
pub   4096R/4BD6EC30 2010-07-10 [expires: 2016-07-08]
uid                  Puppet Labs Release Key (Puppet Labs Release Key) <info@puppetlabs.com>
...

这样做的理由是我希望所有木偶客户端都是相同的版本。所以所有机器都应该使用/etc/apt/preferences.d/puppet中的以下引脚从我的存储库中获取包:

Package: puppet puppet-common facter
Pin: origin deb.example.org
Pin-Priority: 1001

(我们目前正在使用puppet 2.6.x,因此我需要优先级1001才能将精确客户端从2.7.x降级。)

我已阅读有关持有套餐的内容,但这并不能帮助我更改套餐版本

欢迎所有建议。

最佳答案

您确定包已签名吗?我不确定,但我想应该有适当的签名文件。我们正在签署我们的整个存储库,因此整个树只有一个签名,我们让reprepro为我们做这个。

作者:Michuelnik

相关问答

添加新评论