我的注册机构Gandi给我提供了一个中间证书以安装,因此我有3个文件:
- 私钥文件(server.key)
- 证书文件(mycert.crt)
- 中间证书(GandiSomething.pem)
我正在Heroku上使用SSL Beta服务。Heroku CLI heroku _certs:add
需要精确的两个参数,即CRT和KEY。我如何安装中间证书?
保罗是正确的,您可以组合证书:
cat ssl.crt middle.crt root.crt > all.crt
请确保证书文件末尾有换行符!
然后将其上传到Heroku(如果尚未拥有SSL终端,请使用add
):
heroku certs:update --app $YOUR_APP --confirm $YOUR_APP all.crt private.key
但是还有一些小技巧你可能忘了:
这里的解决方案是将中间证书和生成的证书合并到一个文件中,如此处所述。由于该链接不太可靠,以下是合并后证书文件的样子:
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIEOGPe+DANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChML
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
wfsm5p9GJKaxB825DOgNghYAHZaS/KYIoA==
-----END CERTIFICATE-----
那么,这个命令将起作用:
heroku _certs:add --app 我的应用名称 file-with-combined-certs.crt myserver.key
只需将其作为参数传递即可。将中间结果放在中间,它会将其视为另一个参数。然后检查Heroku证书,如果不起作用,请报告回来。