2010-11-24 204 views
0

我的情况: 我正在使用openssl和rsa-certificates与其他方进行安全通信的应用程序。 所以我们需要交换证书。 迄今为止很好。 大多数合作伙伴证书是来自CA签名证书(不是根证书或自身证书)。我的笔记本上的 (debian)我从发行版中安装了openssl infrastrucutre中安装的最常见的rootCA证书。所以我可以验证大多数合作伙伴证书,因为我拥有issuer-root-certis。openssl,发行者证书链

我的问题: 在我的master-maschine上我没有预先安装root-certis。所以我需要检查的合作伙伴,为CERTI发行人,从网上得到这个,把它放到我的信任CERTI目录中的OpenSSL等......

我的问题: 这是正常的方式去做这个????它有点广泛,如果它是一个更长的链,也有点棘手。

感谢您的帮助!

的问候,克里斯

回答

1

其预装的根证书的目的是因为他们作为信任链的顶端(实际上它更像是一个树,还是树的森林......)。

通过让他们预安装,我们假设(虽然我们都知道人们对假设的看法),他们没有受到损害,并且可以用来验证任何其他证书。虽然有可能通过例如黑客进入FTP服务器并与Linux发行版的DVD映像混淆,这不是很容易,它不会长时间未检测到,也不能针对特定组织。

在你的情况,你应该做下列之一:

  • 安装使用包从你的系统供应商在系统中的根证书。对于相对较高的置信度,您应该从两个不同的位置下载相同的包,最好通过不同的ISP(例如,从家中和工作中)以及两个或三个不同的镜像下载。然后你可以比较下载的文件,这应该是相同的。如果您的系统供应商在线提供其包文件的校验和,则应该验证这些文件。

  • 通过USB驱动器从可信系统取得根证书并将它们传输到您的系统。您应该事先检查可信系统的安全性。从官方安装盘使用原始Linux安装将是一个很好的来源。

  • 安全地安装至少一个根证书(例如通过USB驱动器方法),然后 尝试追踪合作伙伴的颁发者证书。对于每个颁发者证书,您应手动验证并在信任链上安装任何其他证书,直到您达到预先安装的根证书。这可能是一个非常繁琐的程序,您会感到沮丧,因为大多数CA因各种原因使用多个证书,从减少潜在妥协的影响到市场营销和商业原因。

你永远不应该安装从网上下载一个证书作为信任CA,除非你可以验证其有效性高达预先安装的证书。

所以作为对您问题的回答:除非您有足够的时间和耐心,并且有意愿了解更多有关PKI的知识,而不是大多数人想要的,只需找到一种方法在其上安装适当的根证书你的系统。

编辑:

我忘了提,一些操作系统供应商(如SuSE的)在他们的包管理系统预装自己的证书。在这种情况下,使用该软件包管理系统从官方软件仓库下载软件包应该足够安全,以至于您无需担心上述任何情况,以确保根证书软件包的有效性。

+0

非常感谢!克里斯蒂尔问候 – chris01 2010-11-24 20:24:28