我想设置自己的OCSP响应器(仅用于测试目的)。这要求我拥有一个根证书以及从中生成的一些证书。
我设法使用openssl创建了一个自签名证书。我想将其用作根证书。下一步将是创建派生证书。我似乎找不到有关如何执行此操作的文档。有人知道我在哪里可以找到此信息吗?
编辑
回想起来,我的问题是还没有完全回答。为了澄清问题,我将这样表示我的证书链:
根-> A-> B-> C-> ...
我目前能够创建ROOT和A证书,但还没有找到如何制作更长链的证书。
我创建根证书的命令是:
openssl req -new -newkey rsa:1024 -nodes -out ca.csr -keyout ca.key
openssl x509 -trustout -signkey ca.key -days 365 -req -in ca.csr -out ca.pem
证书A的创建如下:
openssl genrsa -out client.key 1024
openssl req -new -key client.key -out client.csr
openssl ca -in client.csr -out client.cer
此命令隐式依赖于根证书,该证书会在openssl配置文件中找到所需的信息。
但是,证书B只能依赖未在配置文件中注册的A,因此先前的命令在这里无效。
我应该使用哪个命令行来创建证书B及其更高版本?
编辑
我在本文中找到了答案。可以使用以下两个命令来创建证书B(链A-> B):
# Create a certificate request
openssl req -new -keyout B.key -out B.request -days 365
# Create and sign the certificate
openssl ca -policy policy_anything -keyfile A.key -cert A.pem -out B.pem -infiles B.request
我还更改了openssl.cnf文件:
[ usr_cert ]
basicConstraints=CA:TRUE # prev value was FALSE
这种方法似乎运作良好。