一、生成申请证书文件
-
安装OpenSSL
OpenSSL安装连接
两个版本装哪个都行。 -
按如下步骤安装
参考链接先进入安装的openssl文件夹下,否则会报 “openssl不是内部或外部命令,也不是可运行的程序” 的错误。 cd C:\Program Files\OpenSSL-Win64\bin 1.服务器证书申请 1)生成私钥 openssl genrsa -des3 -out server.key 2048 -des3 是算法,2048位强度(为了保密性)。 server.key 是输出密钥文件名 -out 指生成文件的路径和名称 enter pem pass phrase: 这一步要输入一个私钥的密码,这个密码一定要记住,千万别弄丢。 最后生成 server.key 文件 2)创建证书签名请求CSR文件 openssl req -new -key server.key -out server.csr -key的含义是:指定ca私钥 -out的含义是: server.csr 生成证书文件 这一步要求填入以下信息: Country Name (2 letter code) []:CN // 输入国家代码,中国填写 CN State or Province Name (full name) []:Jilin // 输入省份,这里填写 Jilin Locality Name (eg, city) []:Changchuen // 输入城市,我们这里也填写Changchuen Organization Name (eg, company) []:edge // 输入组织机构(或公司名,我这里随便写个edge) Organizational Unit Name (eg, section) []:edge // 输入机构部门 Common Name (eg, fully qualified host name) []:test.com // 输入域名,我这边是 (test.com) Email Address []:3131@qq.com // 你的邮箱地址 Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []:Each is hard // 你的证书密码,如果不想设置密码,可以直接回车.这个密码如果设置了也要 An optional company name []:edge 最后生成 server.csr 文件 3)生成ca证书 openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt x509的含义: 指定格式 -in的含义: 指定请求文件 -signkey的含义: 自签名 2.生成客户端证书 生成客户端证书与生成CA证书相似。 1)生成客户端私钥 openssl genrsa -out client.key 2048 生成client.key文件 2)生成客户端请求文件 openssl req -new -key client.key -out client.csr、 这一步要输入如下信息: Country Name (2 letter code) [AU]:CN State or Province Name (full name) [Some-State]:Jilin Locality Name (eg, city) []:Changchuen Organization Name (eg, company) [Internet Widgits Pty Ltd]:edge Organizational Unit Name (eg, section) []:edge Common Name (e.g. server FQDN or YOUR name) []:edge Email Address []:3131@qq.com Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []:Each is hard An optional company name []:edge 生成client.key文件 3)发给ca签名 openssl x509 -req -days 3650 -in client.csr -signkey client.key -out client.crt 生成client.crt 生成的文件
二、向有关部门申请证书
一般需要两个文件:
服务端文件:server.key、server.csr
客户端文件:client.key、client.csr
.crt文件一般不需要。
三、准备安装证书
-
有关部门颁发的证书文件格式转换
拿到的格式类型视情况而定,一般为.p7b格式文件。
安装到IIS,需要转换为.pfx -
证书格式转换
p7b->pfx 1. p7b -> cer openssl pkcs7 -print_certs -in server.p7b -out server.cer 这一步可能会报错,可以采用把直接把.p7b文件安装,然后按.base64或.der导出都行,最后都能用。 2. cer -> pfx openssl pkcs12 -export -in server.cer -inkey server.key -out server.pfx -in:指定 PKCS#12 的文件名. -inkey: 指定私钥文件名. -out: 指定输出文件. 这一步要用到 创建私钥文件时输入的密码,也就是上面特别让记住的密码。 同时,也需要记住设置的导出密码,IIS导入pfx文件时要用到。
四、IIS导入pfx证书
并将IIS网站绑定的ssl证书切换为新导入的。
五、浏览IIS配置的https网站
至此,不在弹出证书错误问题。
若还弹出就加入信任站点,并将证书安装到该计算机上。