通常我根本不使用 Internet Explorer。我只在设计时将它用于接口测试(开发机器和未加密的 http)。每周我都会运行 SSL Labs 服务器测试,测试表明 IE11 能够访问我的网站。
今天,我发现我的第 3 方服务之一存在问题。某些特殊功能不适用于 Chrome 或 Firefox,因此我在 Windows 7 机器上启动了 IE11。IE11 向我展示了一个内置的错误页面,女巫基本上只说“页面无法显示”。和典型的 dummy bla bla 比如检查 DNS 等等。整个错误页面上绝对没有任何加密相关问题的迹象(就像普通浏览器一样)。
早在几个月前,这个schannel
问题就阻止了启用 TLS1.2 的 IE 访问 HTTPS 站点。从那时起,我的“IE 的 WTF 清单”包含“禁用 TLS1.2”作为检查点。我应该说什么...在 IE 中禁用 TLS1.2 有效,我的网站再次可用。但我不能在我的访问者浏览器上这样做。
现在回到真正的问题:为什么在 IE 中启用 TLS 1.2 时Internet Explorer 11 无法连接到我的 HTTPS 站点?以及如何在服务器端修复它?SSL Labs 告诉我网站上的一切都很好。
重要编辑:当启用 TLS1.2 时,似乎 IE11 只能处理非前缀域而不是前缀域。没有前缀 (www) 的域有效,而包含前缀 (www) 的域将不起作用。
在服务器端,我使用的是 debian/7 nginx/1.7.8 openssl/1.0.1e
可用的密码是:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:-DES:!RC4:!MD5:!PSK:!aECDH:EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
您是否还启用了 SSL 2.0?
根据http://support.microsoft.com/en-us/kb/2851628 “SSL 2.0 和 TLS 1.2 在 Windows 7 及更高版本的操作系统中相互不兼容。使用客户端证书建立 HTTPS 连接通过 TLS 1.2,您必须禁用 SSL 2.0”。
今天在 Win 7 上使用 IE11 遇到了这个问题(完全更新了重要更新,但不是可选的更新),当使用Mozilla 的中间套件时,该套件在 XP 上与 IE8 配合良好,并且应该与 IE7+ 配合使用。以为我会在这里发布这个问题并没有在谷歌上出现太多其他问题。
花了一些时间使用wireshark 找出使其工作所需的最小修改。免责声明:我不是加密专家,可能有更好的方法来做到这一点。但它根本没有改变我的 ssllabs.com 评级。
将 ECDHE-RSA-AES128-SHA256(第一个适用于 IE11 的)移到 kEDH+AESGCM 和 DHE-RSA-AES128-GCM-SHA256 之上,中间套件会导致:
我找到 的唯一解决方案: http
://www.techsupportall.com/solved-cannot-access-secure-sites-https-websites-not-opening-view/ 有说明如何将 REGSVR 转至 Internet Explorer。