02
2020
12

本地方式将多个SSL证书格式文件转换为单个SSL证书pfx格式文件

啊!这个标题我自己看得都想吐槽- -但是又不知道取啥名字好……


写这篇博客的背景是因为近期拿到一套公司供应商提供的SSL证书,里面包含了cer格式的公钥文件,key格式的私钥文件和crt格式的证书链文件,做过SSL证书部署的朋友们应该都清楚,这是比较标准的一套SSL证书文件了,把相应的文件内容导入到服务器上并配置web应用使用这些证书就可以了,当然有的时候也可能会出现pem格式等等,但是内容都是一样的,部署方式也是没有区别的。

然而,对于Windows服务器来说,部署IIS使用这三个文件似乎就不是那么友好了,对于Windows服务器而言,我相信还是直接导入单个的pfx文件直接方便,那么问题就来了,我们要怎么把这三个文件的SSL证书转换成单个的pfx格式呢?我想到这里肯定会有人说网上一搜不是一大堆工具么?然而作为保守派的我,还是比较抵触把私钥文件传到第三方网站上去的,那么怎么办呢?这里就可以用咱们可能都比较熟悉的OpenSSL应用轻松解决。


只需要在安装了OpenSSL的服务器上运行下面的命令就可以了,其中certificate.cer是公钥文件,privateKey.key是私钥文件,certificate-chain.crt是证书链文件,certificate.pfx就是生成的单个pfx文件了。注意这些文件是有路径的,就是说运行这个命令之前需要将三个文件分别上传到当前路径下。

openssl pkcs12 -export -in certificate.cer -inkey privateKey.key -out certificate.pfx -certfile certificate-chain.crt

命令运行后可能会提示你设置一个密码,按照提示设置好,就可以在同一个目录下看到生成的certificate.pfx文件了,把这个文件复制出来传到Windows服务器上就可以直接安装了。

OpenSSL这个应用在Linux based服务器默认应该都是安装了的,当然最小化安装的OS可能没装,不过也没关系,可以直接用yum -y install openssl命令轻松安装,当然Ubuntu是apt-get install openssl等等,Windows服务器下应该也有openssl.exe的组件的,这里就不展开阐述了。



« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。