Linux环境下生成openssl证书注意细节介绍
大家好,本篇文章主要讲的是Linux环境下生成openssl证书注意细节介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
一、环境:CentOS7,Openssl1.1.1k。
二、概念:
根证书:是生成服务器证书和客户端证书的基础,也可以叫自签发证书,即CA证书
服务器证书:由根证书签发,配置在服务器。
客户端证书:由根证书签发,配置在客户端。也可以配置在web服务器,安装在浏览器。
对称加密:用一个密码加密文件,然后解密也用同样的密码。
非对称加密:加密用的一个密码,而解密用另外一组密码。包括以下两种情况:
用于加密数据时:公钥加密,私钥解密
用于文件签名时:私钥签名,公钥验签
三、步骤:
1、查看openssl的配置文件openssl.cnf
1 | vim /etc/pki/tls/openssl .cnf |
2、创建为根证书CA所需的目录及文件
1 2 3 4 5 6 7 | cd /etc/pki/CA #创建配置文件信息中所需的目录及文件 mkdir -pv {certs,crl,newcerts,private} touch {serial,index.txt} |
3、指明证书的开始编号
1 | echo 01 >> serial |
4、生成根证书
1 2 3 4 5 6 | # 生成CA私钥(ca.key) openssl genrsa -des3 -out ca.key 2048 # 生成CA证书签名请求(ca.csr) openssl req -new -key ca.key -out ca.csr # 生成自签名CA证书(ca.cert) openssl x509 -req -days 3650 - in ca.csr -signkey ca.key -out ca.crt |
5、生成服务器证书
1 2 3 4 5 6 | # 生成服务端私钥(server.key) openssl genrsa -des3 -out server.key 2048 # 生成服务端证书签名请求(server.csr) openssl req -new -key server.key -out server.csr # 使用ca证书签署服务端csr以生成服务端证书(server.cert) openssl ca -days 3650 - in server.csr -out server.crt -cert ca.crt -keyfile ca.key |
6、生成客户端证书
1 2 3 4 5 6 | # 生成客户端私钥(client.key) openssl genrsa -des3 -out client.key 2048 # 生成客户端证书签名请求(client.csr) openssl req -new -key client.key -out client.csr # 使用ca证书签署客户端csr以生成客户端证书(client.cert) openssl ca -days 3650 - in client.csr -out client.crt -cert ca.crt -keyfile ca.key |
7、查看证书内容
1 | openssl x509 - in server.crt -noout -text |
8、将crt转换为pem
1 2 3 4 5 | openssl x509 - in ca.crt -out ca.pem -outform PEM openssl x509 - in server.crt -out server.pem -outform PEM openssl x509 - in client.crt -out client.pem -outform PEM |
9、剥离私钥key的密码
1 2 3 | openssl rsa - in server.key -out serverkey.pem openssl rsa - in client.key -out clientkey.pem |
生成后的证书列表:
到此这篇关于Linux环境下生成openssl证书注意细节介绍的文章就介绍到这了
原文链接:https://blog.csdn.net/sunkaijie123/article/details/121727545