我想在我的自签名CA创建脚本中包含basicConstraints=CA:TRUE,pathlen:0
约束,如果我不必创建配置文件和所有文件夹,那么简化我的过程会有很长的路要走。适当的CA的结构。
我正在尝试创建一个只能签署最终证书的中间证书,而不是其他CA.我将使用bouncycastle签署所有进一步的证书,无论如何我都不需要为正确的CA创建文件夹结构。
答案 0 :(得分:10)
您不需要创建OpenSSL配置文件或任何文件夹结构,以使用OpenSSL创建自签名证书。
例如,以下是最小的OpenSSL配置文件可能包含的内容,用于设置基本约束扩展,如下所示:
[req]
distinguished_name=dn
[ dn ]
[ ext ]
basicConstraints=CA:TRUE,pathlen:0
在这里,我使用OpenSSL从Bash shell创建一个带有“配置文件”的自签名证书,只有它不是文件 - 它是一个shell变量:
CONFIG="
[req]
distinguished_name=dn
[ dn ]
[ ext ]
basicConstraints=CA:TRUE,pathlen:0
"
openssl req -config <(echo "$CONFIG") -new -newkey rsa:2048 -nodes \
-subj "/CN=Hello" -x509 -extensions ext -keyout key.pem -out crt.pem
祝你好运!
答案 1 :(得分:2)
basicConstraints
的{{1}} 我无法避免如何完全使用它,但是使用默认配置并注释掉命令行中设置的任何内容似乎足够有效。
openssl.cnf
可以多次使用鉴于已经存在的-addext
并警告 eg privkey.pem
并没有相互矛盾的说明,以下内容似乎可以做到而没有强烈的批评< / strong>。
/etc/ssl/openssl.cnf