获取openssl.cnf配置文件
# 这个返回的路径,不一定被使用了(经测试,ubuntu18下的openssl似乎未加载任何配置文件)
openssl version -d
生成私钥文件(pem)
# 生成私钥
# genrsa:生成RSA秘钥
# 2048:密钥长度为2048比特
# -out:私钥文件路径名
openssl genrsa -out ca_private.pem 2048
# 生成私钥,且加密
# -aes256:使用aes256对私钥进行加密
openssl genrsa -aes256 -out ca_private.pem 2048
生成根证书签发申请文件(csr)
# req:证书签发请求命令
# -new:是 req 子命令的选项之一,表示创建一个新的 CSR。
# -key:指定私钥文件。
# -out:输出文件路径名
openssl req -new -key ca_private.pem -out ca_csr.pem
签发x509证书
未指定签发者(CA)证书(自签名)
# x509:证书格式为X.509
# -req:证书签发请求命令
# -days:证书有效期(天)
# -sha1:证书摘要签名算法
# -signkey:签名使用的私钥文件
# -in:证书签发申请文件(csr文件)
# -out:输出文件路径名
openssl x509 -req -days 365 -sha1 -signkey ca_private.pem -in ca_csr.pem -out ca_x509.cer
# -extfile:使用指定配置文件(ubuntu18下似乎默认未加载配置文件)
# -extensions:使用指定扩展块(扩展块内可以指定:“basicConstraints = critical,CA:true”)
openssl x509 -req -days 365 -sha1 -signkey ca_private.pem -in ca_csr.pem -out ca_x509.cer -extfile /etc/ssl/openssl.cnf -extensions v3_ca
指定CA签发证书
# -CA:CA机构自己的证书(也可以是多级签发时的中间CA)
# -CAkey:CA机构的私钥
# -CAcreateserial:创建证书序列号文件。该序列号在经由CA颁发的证书中是全局唯一的,可以唯一标识一个证书;创建的序列号文件默认名称为“CA证书名.srl”
openssl x509 -req -days 365 -sha1 -CA ../ca/ca_x509.cer -CAkey ../ca/ca_private.pem -in server_csr.pem -CAcreateserial -out server_x509.cer
验证证书
openssl verify -CAfile ./ca/ca_x509.cer ./server/server_x509.cer
查看证书详细信息
openssl x509 -in ./server/server_x509.cer -noout -text
PKCS#12
生成pkcs#12
# 将私钥和x509证书导出为pkcs#12格式
openssl pkcs12 -export -inkey private_key.key -in myca_computer.com.cer -out computer.p12
# 将私钥和x509证书和证书链导出为pkcs#12格式
openssl pkcs12 -export -inkey private_key.key -in myca_computer.com.cer -chain -CAfile ca.pem -out server.p12
导出私钥
# 导出私钥,会先询问p12的加密密码,再要求设置导出的私钥加密密码
openssl pkcs12 -in x509_private.pfx -nocerts -out p12_expory_private.key
# 不设置私钥加密密码
openssl pkcs12 -in x509_private.pfx -nocerts -out p12_expory_private.key -nodes
导出X509
openssl pkcs12 -in x509_private.pfx -nokeys -clcerts -out x509.pem
导出证书链
openssl pkcs12 -in x509_private.pfx -nokeys -out cert_chain.pem
导出所有到一个文件
openssl pkcs12 -in x509_private.pfx -nodes -out all-in-one.pem
相关参考
如何制作自签名证书
OpenSSL与证书(三)PKCS#12证书
原文地址:https://blog.csdn.net/weixin_40277264/article/details/134687956
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_33576.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。