【发布时间】:2014-02-19 07:00:34
【问题描述】:
尝试按照各种说明创建用于 localhost 的自签名证书,大多数说明似乎是针对 IIS,但我正在尝试使用 Nodejs/Express。它们都不能正常工作,因为在安装证书时,它不受信任。这是我尝试过的失败:
- How can I create a self-signed cert for localhost?
- https://www.digitalocean.com/community/articles/how-to-create-a-ssl-certificate-on-nginx-for-ubuntu-12-04/
- http://blogs.developerforce.com/developer-relations/2011/05/generating-valid-self-signed-certificates.html
- http://www.robbagby.com/iis/self-signed-certificates-on-iis-7-the-easy-way-and-the-most-effective-way/
有人可以提供可以做到这一点的工作流程吗? 我可以安装证书,但我无法让证书在 chrome (v32) 或 IE (v10) 中受信任。
编辑:在 cmets 中建议问题不是受信任的 cert-root。我通过 IE 安装了证书,但它仍然不受信任。
【问题讨论】:
-
没有一个自签名证书可以被 Web 浏览器信任。它们不是由受信任的签名机构签署的。
-
这不是真的:您可以安装根证书以使您的自签名证书受信任。但是我似乎无法正确执行此操作。我读到您可以在 IE 中安装证书链(而不是在 chrome 中),所以我尝试了,但仍然无法识别。我不知道是因为 localhost 很特殊还是自签名证书不正确。
-
我从来没有在 Chrome 之类的浏览器上使用过自签名证书。这是我的解决方法:我为 local.MYDOMAIN.com 创建了一个指向 127.0.0.1 (localhost) 的 DNS 条目,然后只使用我的生产证书。这具有确保生产证书链等没有问题的额外好处。
标签: node.js express openssl localhost ssl-certificate