Debian存储库的GPG密钥是否应在其维护者之间共享?


3

我正在按照本教程设置Debian存储库

https://wiki.debian.org/SettingUpSignedAptRepositoryWithReprepro

该存储库将由我和我的同事管理。我们要对软件包和仓库本身进行签名,因此我需要一个GPG密钥。自然,我不应该使用自己的GPG密钥,否则我的同事将无法管理该存储库。因此,我想到了专门为此存储库创建一个新的GPG密钥,然后与同事共享私钥。

这是由许多人管理回购的正确方法吗?我不喜欢共享私钥的想法(而且我认为对于由很多人管理的存储库来说,扩展规模不大),但是另一方面,我看不到另一种方法可以做到。

我猜有一个简单的解决方案,但是我对这种服务器缺乏经验并没有帮助。

编辑:此处提到共享私钥http://irtfweb.ifa.hawaii.edu/~lockhart/gpg/(最底部的用例2)

Answers:


0

我还没有使用Debian软件包来做到这一点,但是这是我们在上一份工作中对RPM所做的事情:我们制作了一个拥有私钥的签名服务器,没有人可以直接访问它。(好吧,除了我们这些人是该系统的系统管理员;根据您的安全需求,您可以使此“防火墙”更强壮。)

签名服务器具有一个保管箱区域。您可以通过ssh密钥或密码或其他任何方式来限制它,或者,由于下一步,您甚至可以将其公开。

监视保管箱区域中的新文件。当它们出现时,检查它们是否已使用维护者之一的有效密钥签名。如果不是,请删除它们。然后,通过其他所需的检查,检查它们是否为有效的软件包文件,然后将其复制到为签名服务保留的用户帐户下的暂存区域。通过验证后,签名服务器会使用其自己的密钥(同样不能直接读取)将软件包签名。

而且由于方便,我们让同一台服务器实际运行存储库创建工具。由于与RPM不同,您的存储库本身是签名的,因此这似乎特别方便,因为您可以在此处添加该签名,再次使用没有人可以直接访问的私钥。

稍强一些的版本将删除自动提取,并让签名者每次都键入密钥的密码。这样,维护系统的人员甚至可能无法通过作弊和直接访问来对软件包进行签名。(当然,他们可以对系统进行特洛伊木马程序,但是让我们对另一个主题保持那种偏执。或者,您可以决定知道自己仍然必须信任系统管理员并通过策略强制执行此操作,从而为删除操作带来了便利-盒子方法。)


有趣,这是一个自定义解决方案,还是您使用现有的rpm软件包进行了此设置?
Marcelo Diniz 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.