从受信任的 CA(证书颁发机构)获取 SSL 证书通常我们会收到三个证书:SSL 证书、CA Bundle和一个私钥。而导入IIS的证书格式是 .pfx ,之前从百度云申请的免费证书没有这个格式可供下载,这就需要我们将文件做下封装,今天详细分享这一过程。
我们以百度云为例,在申请单域名免费版证书(注意申请时用不带www的顶级域名)时没有提供 .pfx 文件下载的情况下,我们通过 OpenSSL 进行封装,其它云服务商处申请是同理,以下是详细教程。
1、在已购证书列表处找到你申请的域名并下载证书,解压后会得到三个文件,分别是 .cer、.key、.crt。
2、下载 OpenSSL:sourceforge.net/projects/openssl/files/latest/download?source=files,打开下载后解压缩 OpenSSL 文件夹的内容并进入到 bin 文件夹。
3、将先前下载的包含公钥和私钥的 SSL 文件复制到此目录中,只需复制 .cer 跟 .key 这两个文件。
4、我是在服务器 Windows Server 2012 系统下进行操作,这时在 bin 目录下按快捷键 Alt+F 打开 windows powershell,选用管理员身份启动。
5、复制以下命令:
.\openssl.exe pkcs12 -export -in www.krseo.com.cer -inkey www.krseo.com.key -out krseo.pfx
注意:这将创建一个名为 krseo.pfx 的 .pfx 文件,并将保存 bin目录中,请自行将 .cer、.key、.pfx 三个文件名改为你自己的。
6、由于 Windows Powershell 中的快捷键 Crtl+V 并不是粘贴,所以在 Server 2012 系统下按快捷键 Alt+空格 左上角调出下拉菜单,选择编辑→粘贴。
如果是其它Win系统在弹出的菜单中选择属性,编辑选项中勾选第5项开启复制/粘贴功能,如下图:
7、粘贴进命令代码后回车执行,会让你输入一次密码及确认一次密码,这里密码的粘贴方法跟上一步骤一样,最后执行完毕会生成一个 .pfx 文件在 bin 目录中。
自此 .pfx 封装流程已结束,最后一步在宝塔面板,你的域名站点设置SSL中导入 .pfx 文件即可。