IIS 上使用 OpenSSL 的不受信任的证书

Posted

技术标签:

【中文标题】IIS 上使用 OpenSSL 的不受信任的证书【英文标题】:Untrusted certificate on IIS using OpenSSL 【发布时间】:2013-03-10 03:08:46 【问题描述】:

我使用 OpenSSL 来避免付费。在我的服务器上运行的是 IIS 8 和 Windows Server 2012。

我以这种方式创建了我的证书:

    使用 IIS 创建证书请求

    使用以下命令创建 RSA 私钥

    openssl genrsa -des3 -out cakey.pem 2048

    之后我使用此命令生成证书

    openssl req -new -key cakey.pem -x509 -days 1825 -extensions v3_ca -out ca.crt

    最后我用这个签署了证书请求:

    openssl x509 -req -days 365 -in certreq.txt -CA ca.crt -CAkey cakey.pem -CAcreateserial -out iis.cer

但是当我导航到该网站时,我收到一个“错误”,告诉我这是一个“不受信任的证书”:此网站提供的安全证书不是由受信任的证书颁发机构颁发的。

【问题讨论】:

【参考方案1】:

您从 OpenSSL 工具获得的是自签名证书。当然它不被任何浏览器信任,谁能说你值得信任。

如果您想建立一个公共网站,请购买证书。这是您必须支付的费用,就像公共域名一样。

相反,如果您要为公司托管内部网站,则可以通过多种方式设置您自己的 CA,例如使用 Microsoft Active Directory 证书服务。

2018 年更新:今天有更多获取免费证书的选项,例如Let's Encrypt。检查它们并充分利用它们。

【讨论】:

【参考方案2】:

在尝试访问运行您在 CA 层次结构下生​​成的证书的 IIS 服务器之前,您是否在浏览器中安装了 CA 证书?这是一些information about that step。

【讨论】:

以上是关于IIS 上使用 OpenSSL 的不受信任的证书的主要内容,如果未能解决你的问题,请参考以下文章

使用 Alamofire 的不受信任的证书。我已经尝试了所有我能找到的答案

WCF 自签名证书在客户端上不受信任

Qt QSslSocket“证书是自签名的,不受信任”

颁发不受浏览器信任的SSL证书

IIS服务器安装SSL证书后提示不可信怎么办

如何解决不受信任的证书错误?(TFS2013 Build and deploy to IIS)