关键字: 自建CA, openssl, https证书,带有多域名
通过自建CA签发证书
- 准备
创建目录保存新生成的秘钥,证书等文件
mkdir cas-server
- 生成私钥
openssl genrsa -out cas-server/cas-server.key 1024
- 生成证书签发申请
openssl req -new -sha256 \
-days 10000 \
-key cas-server/cas-server.key \
-subj "/C=CN/ST=BeiJing/L=Beijing/O=CAS/OU=cas-server/CN=www.cas-server.com" \
-out cas-server/cas-server.csr
- 通过CA签发证书
openssl ca \
-in cas-server/cas-server.csr \
-md sha256 \
-cert root/ca.crt \
-keyfile root/ca.key \
-extensions SAN \
-config <(cat openssl.cnf \
<(printf "[SAN]\nsubjectAltName=DNS.1:cas-server.com,DNS.2:*.cas-server.com,DNS.3:www.cas-server.com")) \
-out cas-server/cas-server.crt
因为设置了不同的State和organizationName的信息,需要修改配置文件openssl.cnf中关于State和organizationName匹配的策略,否则在签发中会出现异常
# For the CA policy
[ policy_match ]
countryName = match
stateOrProvinceName = optional #match
organizationName = optional #match
organizationalUnitName = optional
为了在应用中能安全的使用所创建的证书,还需要为其设置对应的格式,并通过设置password对证书进行安全保护。相关内容可参考后续文章。
网友评论