asp.net - 如何在 IIS 中启用 https?
问题描述
我为我的网站申请了免费证书,并成功在证书存储中安装了证书。并且 CN 与我的域相同(颁发给 mydomain)。
我还设置了站点绑定并使用免费证书添加了 https 绑定。
端口 443 对入站和出站均开放。
Windows 网络故障排除检测到资源(我的域)在线但未响应连接尝试。
但我仍然从浏览器收到ERR_CONNECTION_TIMED_OUT错误。
我错过了任何步骤吗?如何在 IIS 中启用 https?
2018 年 11 月 14 日更新
JexusManager
我已经使用@Lex Li 的建议运行了绑定诊断和 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”的主机标头。为whatever.com 启动DNS 查询。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=Domain Validated SSL,O="TrustAsia
技术公司”,C=CN
有效期:从 2018 年 11 月 11 日下午 4:00:00 到 2019 年 11 月 12 日凌晨 4:00:00
序列号:0B365B8ABC8118CD7F818FD5B7BB485C
DS 映射器用法:已禁用
存档:错误
主题备用名称:DNS 名称=whatever.com DNS 名称=www.whatever.com
密钥用法:KeyEncipherment、DigitalSignature
增强的密钥用法:服务器身份验证 (1.3.6.1.5.5.7.3.1)、客户端
身份验证 (1.3.6.1.5.5.7.3.2)
基本约束:主题类型=结束实体,路径长度约束=无
证书已验证。
而且,我还运行了 SLL Checker,它返回:
what.com 解析为 My.Public.IP.Address
服务器类型:Microsoft-IIS/8.5
在whatever.com 上找不到SSL 证书。确保名称解析到正确的服务器,并且 SSL 端口(默认为 443)在服务器的防火墙上打开。
证书通过了 SSL 诊断,但存在一些问题。我没明白。如何为我的网站启用 https 协议?非常感谢!
解决方案
问题解决了。
正如@John Wu 所说,这不是编程问题,而是网络网关问题。
首先,证书没有问题,服务器/防火墙设置也没有问题。
问题出现在云服务商的网络网关阻塞了443端口的进出。就我而言,我使用的是阿里云服务器,它阻止了从公共网络通过 443 端口的每个请求。这就是为什么我只能通过服务器上的浏览器访问 SSL 网站的原因。
解决方案非常简单。唯一需要做的就是通知云服务商开放443端口。就我而言,我只是在云服务器的控制面板中添加了 443/443 端口授权,然后一切都修复了。
推荐阅读
- html - 悬停在各个链接上时如何设置“下划线”
- python - 如何跟踪和显示同一级别的访问节点?
- vue.js - 使用 vuejs 和 fetch() 在 Promise 调用中显示数据
- python - 如何从包含带有标签和子标签的列的数据透视表中删除行
- google-forms - 自动填写或自动化 Google 表单
- elasticsearch - 为什么 ElasticSearch 中的“More Like This”不尊重单个术语的 TF-IDF 顺序?
- php - 如何在 prestashop 中重命名自定义模块
- python - 如何将一个图像粘贴到python中特定文件夹的每个图像上?
- android - 如何在 ViewPager 的 TabLayout 中设置分隔符
- javascript - 石头、纸、剪刀如果语句不起作用