openSSL生成证书
- 生成根证书
// Generate CA private key
openssl genrsa -out ca.key 2048
// Generate CSR
openssl req -new -key ca.key -out ca.csr -subj "/C=CN/ST=GD/L=SZ/O=Acme, Inc./CN=Acme Root CA"
// Generate Self Signed certificate(CA 根证书)
openssl x509 -req -days 365 -in ca.csr -out ca.crt -signkey ca.key
- 使用根证书签名用户证书
// private key
openssl genrsa -out server.key 2048
// generate csr
openssl req -new -key server.key -out server.csr -subj "/C=CN/ST=GD/L=SZ/O=Acme, Inc./CN=ssl10.cdnpe.com"
// generate certificate
openssl x509 -req
-in server.csr
-out server.crt
-CA ca.crt -CAkey ca.key -CAcreateserial -days 365
构造场景:
1、构造一个过期证书。调整系统时间
2、构造一个启用日期在当前日期之后的证书。 调整系统时间
openSSL关联多域名
1、生成私钥ca.key
openssl genrsa -out ca.key 2048
2、用ca.key请求csr
openssl req -new -x509 -days 365 -key ca.key -subj "/C=CN/ST=GD/L=SZ/O=Acme, Inc./CN=Acme Root CA" -out ca.crt
3、关联多个域名并生成crt证书(测试csr,无需操作以上步骤2,将生成的csr保存在csr格式的文件中,再使用该命令生成证书)
openssl x509 -req -extfile <(printf "subjectAltName=DNS:*.16tp.com,DNS:*.17tp.com") -days 365 -in bullet1.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out bullet1.crt
注明:设置关联域名(subjectAltName=DNS:域名,DNS:域名,DNS:域名)
第三方机构颁发自签名证书
第三方直接颁发自签名证书:http://www.ssleye.com/self_sign.html
阿里云CSR颁发自签名证书:https://www.chinassl.net/ssltools/free-ssl.html
如何搭建CA颁发机构