1. 创建CA目录
mkdir demoCA cd demoCA
2. 创建子目录
mkdir certs crl newcerts private
3. 创建文件
touch index.txt echo "01" > serial
4. 创建CA公私钥和证书请求
gmssl ecparam -genkey -name sm2p256v1 -out cakey.pem
gmssl req -new -sm3 -key cakey.pem -out cacsr.pem
5. 移动cakey.pem到private目录
mv cakey.pem ./private
6. CA自签名
gmssl req -x509 -sm3 -days 3650 -key cakey.pem -in cacsr.pem -out cacert.pem
7. 进入父目录,创建用户密钥和用户证书请求
cd ../
gmssl ecparam -genkey -name sm2p256v1 -text -out user.key gmssl req -new -key user.key -out user.req
8. CA签名用户证书
gmssl ca -md sm3 -in user.req -out user.pem -days 3650
9. 显示证书信息
gmssl x509 -text -noout -in user.pem gmssl x509 -text -noout -in cacert.pem
注意:
1. 有可能需要创建index.txt.attr
2. 创建证书请求时域名等信息要保持一致