如何在IIS中启用https?

时间:2018-11-14 02:24:01

标签: asp.net ssl iis https ssl-certificate

  1. 我已为我的网站应用了免费证书,并已成功将证书安装在证书存储中。并且CN与我的域相同(发给mydomain)。

  2. 我还设置了网站绑定,并使用免费证书添加了https绑定。

  3. 打开了入站和出站端口443。

  4. Windows网络疑难解答检测到资源(我的域)在线,但未响应连接尝试

但是我仍然从浏览器中收到 ERR_CONNECTION_TIMED_OUT 错误。

我错过任何步骤了吗?如何在IIS中启用https?

更新11/14/2018

我已经使用@Lex Li建议的JexusManager运行绑定诊断和SSL诊断,并获得了以下更多信息:

绑定诊断:

  

绑定:https *:443:whatever.com

     

如果该网站可以吸引外部流量,

     
      
  • TCP端口443必须在Windows防火墙(或任何其他等效产品)上打开。

  •   
  • 来自网络浏览器的请求必须路由到该计算机上的以下端点,

         
        
    • [:: 1]:443。
    •   
    • 我的私有IP地址:443。
    •   
  •   
     

此站点可以在127.0.0.1:443处获取本地流量。

     

此站点可以在[:: 1]:443处获取本地流量。

     
      
  • Web浏览器应使用URL https://whatever.com:443。请求必须具有“ whatever.com”的主机标头。   启动DNS查询what.com。   DNS查询返回1个结果。      
        
    • 127.0.0.1
    •   
  •   
     

绑定诊断程序不验证证书和其他与SSL / TLS相关的设置。

     

请在服务器级别运行SSL诊断,以分析SSL / TLS配置。

然后我按如下所示运行SSL诊断:

  

绑定:https *:443:whatever.com

     

SSLCertHash:2962cd5b2b450403bce520169c268de1f17a6216

     

SSL标志:无

     

测试端点:127.0.0.1

     

证书名称:whatever.com

     

版本:3

     

您具有与此证书对应的私钥。

     

签名算法:sha256RSA

     

密钥交换算法:RSA-PKCS1-KeyEx密钥大小:2048

     

主题:CN = whatever.com

     

颁发者:CN = TrustAsia TLS RSA CA,OU =域验证的SSL,O =“ TrustAsia

     

Technologies,Inc。”,C = CN

     

有效期:从11/11/2018 4:00:00 PM到11/12/2019 4:00:00 AM

     

序列号:0B365B8ABC8118CD7F818FD5B7BB485C

     

DS映射器用法:已禁用

     

已归档:错误

     

主题备用名称:DNS名称= whatever.com DNS名称= www.whatever.com

     

密钥用法:密钥加密,数字签名

     

增强的密钥用法:服务器身份验证(1.3.6.1.5.5.7.3.1),客户端

     

身份验证(1.3.6.1.5.5.7.3.2)

     

基本约束:主题类型=最终实体,路径长度约束=无

     

证书已验证。

而且,我还运行了SLL Checker,它返回:

  

whatever.com解析为My.Public.IP.Address

     

服务器类型:Microsoft-IIS / 8.5

     

在what.com上没有找到SSL证书。确保名称解析为正确的服务器,并且服务器的防火墙上已打开SSL端口(默认为443)。

证书通过了SSL诊断,但存在一些问题。我没听懂如何为我的网站启用https协议?非常感谢!

1 个答案:

答案 0 :(得分:0)

问题解决了。

正如@John Wu所说,这不是编程问题,而是网络网关问题。

首先,证书没有问题,服务器/防火墙设置也没有问题。

该问题发生在云服务提供商的网络网关中,该网关阻止了443端口的入站和出站。就我而言,我使用的是AliCloud服务器,它阻止了来自公共网络通过443端口的每个请求。这就是为什么我只能通过服务器上的浏览器访问SSL网站的原因。

解决方案非常简单。唯一需要做的就是通知云服务提供商打开443端口。就我而言,我只是在云服务器的控制面板中添加了443/443端口授权,然后所有问题都已解决。