用Hashicorp Vault作为中级CA

Hashicorp Vault提供了一个简单的X.509证书API,可以自动化签发证书。本文简述配置证书API、创建中级CA以及和Active Directory Certificate Services的交互过程。

前提条件:

由于证书的有效期通常长达数个月至数年,而Vault默认情况下不支持这么长时间的lease,我们需要事先配置Vault的最长lease时间,即在配置文件中加入:

然后重启Vault服务器以应用配置。

配置CA

接下来我们来初始化CA。登录到Vault,这个不用多说:

首先我们新建一个PKI类型的secret engine并生成密钥:

把获得的CSR保存成一个.req文件。想办法把这个文件复制到rootCA上,然后我们去root CA那边签发证书。

选择需要使用的CA,点击确定,会给你一个Request ID。然后打开certsrv.msc,在Pending Request里面找到刚提交的请求,右键->Issue。最后我们用刚刚获得的Request ID取回签好名的证书:

再次点击刚选择的CA,确定后会提示保存。如果你不是用certreq导出的证书,而是在certsrv.msc里面点击右键导出的二进制数据,则需要转换一下:

回到Vault导入签好名的证书:

设置一下root CA的URL和CRL distribution point:

加一个role:

签发证书

接下来就可以签发证书啦。

如果需要把签发的证书导入Windows,那么需要OpenSSL做一下转换:

输入两次密码即可获得能被Windows识别的p12格式证书文件。


参考:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据