文章目录
- 前言
- https 自签证书相关生成csr文件、p12文件、crt文件、jks文件、key文件、pem文件
- 1, 检查openssl的版本
- 2. 生成私钥和证书签署请求 (CSR)
- 3. 生成自签名证书
- 4. 将证书和私钥转换为 PKCS12 格式的密钥库
- 5. 创建信任库 (Truststore)
- 6. 将 PKCS12 文件转换为 JKS 文件
- 7. 生成 PEM 文件
- 8. 查看证书
- 9. 查看服务器支持的 TLS 版本
前言
如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!
https 自签证书相关生成csr文件、p12文件、crt文件、jks文件、key文件、pem文件
1, 检查openssl的版本
因为较旧版本的 OpenSSL 可能存在已知的漏洞和安全问题。使用最新版本可以确保你利用了最新的安全修复和功能改进,目前3版本是安全的,1和2 已经被确认是有漏洞的。
2. 生成私钥和证书签署请求 (CSR)
openssl.cnf:
生成私钥和证书签署请求 (CSR),并添加证书主题:
openssl req -newkey rsa:2048 -nodes -keyout yzy.key -out yzy.csr -config openssl.cnf
[ req ]
default_bits = 2048
default_keyfile = privkey.pem
distinguished_name = req_distinguished_name
req_extensions = req_ext
x509_extensions = v3_ca
string_mask = utf8only
[ req_distinguished_name ]
countryName = Country Name (2 letter code)
countryName_default = CN
stateOrProvinceName = State or Province Name (full name)
stateOrProvinceName_default = Beijing
localityName = Locality Name (eg, city)
localityName_default = Beijing
organizationName = Organization Name (eg, company)
organizationName_default = yzy
organizationalUnitName = Organizational Unit Name (eg, section)
commonName = Common Name (eg, fully qualified host name)
commonName_max = 64
[ req_ext ]
subjectAltName = @alt_names
[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = CA:true
keyUsage = keyCertSign, cRLSign
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = yzy.tool.com
3. 生成自签名证书
使用 CSR 生成自签名证书,有效期 36500 天:
openssl x509 -req -days 36500 -in yzy.csr -signkey yzy.key -out yzy.crt -extensions v3_ca -extfile openssl.cnf
4. 将证书和私钥转换为 PKCS12 格式的密钥库
生成包含私钥和证书的 PKCS12 文件:
openssl pkcs12 -export -in yzy.crt -inkey yzy.key -out yzy.p12 -name yzy -password pass:yzy@yzy
5. 创建信任库 (Truststore)
keytool -import -file yzy.crt -alias yzy -keystore truststore.p12 -storetype PKCS12 -storepass changeit -noprompt
6. 将 PKCS12 文件转换为 JKS 文件
使用 keytool
将 PKCS12 文件导入到 JKS 文件中:
keytool -importkeystore -srckeystore yzy.p12 -srcstoretype PKCS12 -destkeystore yzy.jks -deststoretype JKS
7. 生成 PEM 文件
将证书和私钥合并成一个 PEM 文件:
cat yzy.crt yzy.key > yzy.pem
8. 查看证书
查看证书详细信息:
openssl x509 -in yzy.crt -text -noout
9. 查看服务器支持的 TLS 版本
openssl s_client -connect ip:port