我正在尝试使用 SSL Endpoint 插件为我的 Heroku 应用设置 Geotrust SSL 证书,并按照以下说明进行操作:https://devcenter.heroku.com/articles/ssl-endpoint。
我使用以下方法从我的私钥生成了我的公钥:
openssl rsa -in server.orig.key -out server.key
并添加到 heroku 证书中:
heroku certs:add server.crt server.key
一切似乎都很好。heroku certs 仅列出了我的证书的更正信息Trusted = false
。
如果我去https://tokyo-2121.herokussl.com
浏览器说:
You attempted to reach tokyo-2121.herokussl.com,
but instead you actually reached a server identifying itself as www.mydomain.com.
正如预期的那样,证书显然识别了正确的域,但是当我将 CNAME 设置为给定的tokyo-2121.herokussl.com
并访问我的子域时,浏览器显示:
www.mydomain.com uses an invalid security certificate.
The certificate is only valid for the following names:
*.herokuapp.com , herokuapp.com
如果我运行 curl-kv https://www.mydomain.com
我得到:subjectAltName does not match www.mydomain.com
答案1
我再次尝试了这个过程,看来我的错误就在这一步:
openssl rsa -in server.orig.key -out server.key
我已经在 server.orig.key 中拥有私钥,不需要生成它。我只需要将我的 Geotrust .crt 和 .key 文件附加到 heroku ssl 端点。