Windows下创建OpenSSL自签证书及将Windows已有证书pfx文件转化成key、crt文件

搬运来源: https://blog.csdn.net/snans/article/details/117424407

一、在windows下生成OpenSSL自签证书


1、准备
编译好的OpenSSL下载地址: http://slproweb.com/products/Win32OpenSSL.html
此文下载的是64位的:Win64 OpenSSL v1.1.1k.EXE

安装openssl到E盘,路径为:E:\openssl

打开cmd.exe, cd到E:\openssl\bin下面:


2、首先,生成服务器端的私钥(key文件):
执行代码

openssl genrsa -des3 -out root.key 1024

//两种方法自己选,我用的这个
openssl genrsa -out root.key 2048 

执行结果

进一步操作
输入密码:在些输入的密码为:123456

 

3、请求建立证书的申请文件root.csr:
执行代码

openssl req -new -key root.key -out root.csr

执行结果

 

 进一步操作

输入国家,省份,城市,公司信息,证书发送邮箱地址和证书密码(服务器端):

 

 

4、创立一个为期10年的根证书root.crt
执行代码

openssl x509 -req -days 3650 -sha1 -extensions v3_ca -signkey root.key -in root.csr -out root.crt

执行结果

 

 进一步操作

输入的密码为:123456


5、建立服务器证书秘钥:
执行代码

openssl genrsa -des3 -out server.key 2048

执行结果

进一步操作
密码:123456

 

6、创立服务器证书申请文件,密码仍为123456:
执行代码

openssl req -new -key server.key -out server.csr

执行结果

进一步操作
输入国家,省份,城市,公司信息,证书发送邮箱地址和证书密码:

 

 

7、创立为期两年的服务器证书server.crt, 密码为123456:
执行代码

openssl x509 -req -days 730 -md5 -extensions v3_req -CA root.crt -CAkey root.key -CAcreateserial -in server.csr -out server.crt

执行结果

 

 

8、查看是否建立成功:
路径到E:\OpenSSL-Win64\bin目录下,查看:

 

 

生成root系列和server系列

看到自己刚才建立的连接,表示成功!

 

二、windows已有证书pfx文件转化成key、crt文件
nginx代理的时候,需要填写证书的crt跟rsa文件路径,通过iis导出的证书是pfx文件(不知道nginx能不能直接用pfx文件,没有查看过相关资料),所以要通过pfx文件生成crt、rsa文件。

在第一部分准备中安装openssl,然后把pfx文件拷贝到openssl的bin目录下,使用以下命令:

openssl pkcs12 -in ***.pfx -nodes -out ***.pem
openssl rsa -in ***.pem -out ***.key
openssl x509 -in ***.pem -out ***.crt

 

 

这里有在线转化的链接,可以试试:
SSL证书格式转换工具
OpenSSL在线生成合成PFX文件

posted @ 2022-10-19 13:38  小小小光子  阅读(1130)  评论(0编辑  收藏  举报