在 Ubuntu 14.04 下我无法让它工作。
我们的 PCI 审计员告诉我们,我们无法直接出站访问 Ubuntu 存储库,因此我使用 reprepro 镜像它们。同样,我们也无法出站访问 keyserver.ubuntu.com。
我已尝试将以下各项添加到/etc/apt/apt.conf.d/99local
:
APT::Get::AllowUnauthenticated "true";
APT{Ignore {"gpg-pubkey"; }};
APT { Get { AllowUnauthenticated "1"; }; };
读取软件包后,仍然会返回“apt-get update”:
W: GPG error: hkp://sa1.dal.some-company.com trusty InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 082BCA0181FE8E68
W: GPG error: hkp://sa1.dal.some-company.com trusty-backports InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 082BCA0181FE8E68
W: GPG error: hkp://sa1.dal.some-company.com trusty-security InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 082BCA0181FE8E68
W: GPG error: hkp://sa1.dal.some-company.com trusty-updates InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 082BCA0181FE8E68
如何才能让它工作?我在文档中没有找到有关如何禁用密钥检查的任何信息。
答案1
由于安装了本地存储库而禁用签名验证就像由于用栅栏围住花园而拆除门锁一样。请勿这样做,尤其是在需要增强安全性的环境中!
您无需访问密钥服务器即可安装用于在 reprepro 中签名数据包的公钥。只需将密钥文件复制到相应的机器,然后使用以下命令将其导入:
sudo apt-key add [publickey]
而[publickey]
是包含 ID 为 的密钥的文件082BCA0181FE8E68
。您可以在生成密钥的计算机上生成这样的文件
gpg --armor --export 082BCA0181FE8E68 >082BCA0181FE8E68.asc
公钥可以任意共享,因为它只能用于验证使用私钥颁发的签名。使用存储库的每台机器只需添加一次密钥。