如何在CentOS上安装一个自定义CA证书?

我试图在一系列CentOS系统上为我的内部证书服务器安装一个证书,而且我发现这个文档几乎不存在。

我的最终目标是能够对内部安全服务器使用gitcurl和其他方法,而不会出错。

在Ubuntu上很简单,你把证书扔到一个文件夹中,然后运行一个命令来生成一系列的链接,将CA证书添加到证书path中。

我不能在我的生活中find如何在CentOS上做这些事情。大量信息可用于信任随机证书。 (也就是说,在/etc/pki/tls/certs创build一个符号链接到PEM编码的证书文件中,并用证书的散列来命名。我的CA没有工作,因为上述应用程序仍然无法validation证书由CA签字)。

你如何在CentOS系统上安装一个新的根CA?

不幸的是,我不认为在CentOS中有一个集中的方法来做到这一点。 我花了很多时间去完成同样的事情。 主要的pki tls证书商店被使用了很多,但绝对不是一切。

我的解决scheme是维护一个puppet模块,它会将更新的证书存储推送到每个产品使用的每个位置。 基本逻辑是如果一个给定的商店存在,然后添加我的自定义条目。

这是不完美的 – 我部署的一些tomcat实例有一个内部Java安装与一个非标准的cacerts目录,但它处理我的大部分需要。

从CentOS 6+开始,有一个工具。 根据本指南 ,可以通过启用系统共享CA存储库来安装证书:

 update-ca-trust enable 

然后将证书信任为CA的/etc/pki/ca-trust/source/anchors/高优先级(不可重写)或/usr/share/pki/ca-trust-source/ (低优先级,可重写),最后更新系统存储:

 update-ca-trust extract 

如此一来,系统工具现在将在build立安全连接时信任这些证书!