手机端下拉列表
400-002-9968

博客 > Plesk上网站安装SSL证书后部分浏览器不能打开的问题

Plesk上网站安装SSL证书后部分浏览器不能打开的问题

  • 标签:
  • plesk
  • 干货
  • SSL证书

浏览量:6226次评论:0次

作者:Ray时间:2019-09-06 01:55:23


随着苹果、微信、微博等都开始要求使用https安全协议,越来越多的站长开始为自己的站点添加证书。Plesk用户通常能很轻松地安装SSL证书,因为Plesk上提供了免费数字证书的插件Let’s Encrypt,以及部分Plesk上可能预装了亚洲诚信发的免费数字证书插件TrustAsiasslTool。但是有用户反馈,使用Let’s Encrypt安装数字证书后,在chrome,IE等浏览器上用https访问正常,但部分版本的火狐,chrome,360浏览器上显示错误,如下图



从火狐的错误提示来看是因为安全等级太低了,火狐主动终止了连接。这里的安全等级主要是指https使用的密钥套件(Cipher Suite)是什么版本,如果产生这个Cipher Suite是火狐不认可的话,连接就会被火狐中断。


通过SSLLabs这个网站可以方便地检测目标网站支持的Cipher Suite。部分截图如下:



以及这个网站所做的握手模拟(Handshake Simulation):



 


在火狐47版本上报错,提示使用了黑名单中的算法——TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,发现它果然在一份公开的黑名单列表中。TLS 1.2 Cipher Suite Black List:


(列表太长,只罗列部分) 


• TLS_ECDH_RSA_WITH_RC4_128_SHA 


• TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA 


• TLS_ECDH_RSA_WITH_AES_128_CBC_SHA 


• TLS_ECDH_RSA_WITH_AES_256_CBC_SHA 


• TLS_ECDHE_RSA_WITH_NULL_SHA 


• TLS_ECDHE_RSA_WITH_RC4_128_SHA 


• TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA 


• TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA 


• TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA 


• TLS_ECDH_anon_WITH_NULL_SHA 


• TLS_ECDH_anon_WITH_RC4_128_SHA 


• TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA 


• TLS_ECDH_anon_WITH_AES_128_CBC_SHA 


• TLS_ECDH_anon_WITH_AES_256_CBC_SHA 


• TLS_SRP_SHA_WITH_3DES_EDE_CBC_SHA


解决的方法可以从浏览器端和服务器端两方面考虑,前者可以关闭浏览器对http2的支持 


从中我们也知道了Plesk Onyx是默认支持http2的,而火狐也优先选择建立http2的连接



后者可以修改浏览器认可的cipher list(火狐可以使用插件Toggle Cipher Suites)


 



下面讲更好的修改服务器端的方法。简单说只需要执行下面的命令让测试中的火狐,360浏览器等都访问正常


RedHat/CentOS系统 


/usr/local/psa/bin/http2_pref enable 


Debian/Ubuntu系统 


/opt/psa/bin/http2_pref enable


注意事项:


要求安装了Plesk12.5.30#28及以上版本;


确保你的Nginx正常运行,且版本不低于1.9.14


通过SSLLabs可以看到,这个命令执行前,Cipher Suite顺序:



执行后,Cipher Suite顺序:



比较两张图可以知道 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA 的排位更加靠后了,所以和浏览器的连接中更容易选中位于它前面的更安全的Cipher Suite,这时浏览器就不提示错误了。 


这一点也可以从support.plesk.com的一个回答中得到验证:


Q:After enabling of HTTP/2 some browsers are not able to connect to my web site. Why? 


A: HTTP/2 protocol specification defines that TLS 1.2 must be used for any implementation.Also it recommends to use strong ciphers list for encrypted connections. Check RFC #7540 for detailshttps://tools.ietf.org/html/rfc7540. Based on our security team research and opinion of Plesk experts community we choose a very balanced ciphers list that provides support for all modern browsers and “A” category in terms of security on SSLLabs: https://www.ssllabs.com/ssltest/index.html at the same time.If you have enought technical expertize on this you can simply customize ciphers list to allow support for old browsers.


翻译: 


问:在启用HTTP/2之后部分浏览器不能链接到我的网站,为什么呢? 


答: HTTP/2协议规范定义了它是建立在 TLS 1.2 协议之上的。它同时建议使用使用强度高的cipher列表用户加密传输。请查看RFC #7540获取详情。在我们安全研究团队和Plesk社区专家的建议下我们选择了一个比较平衡的cipher列表,并在SSLLabs上面对所有现代浏览器进行测试全部取得了A的评级。如果你在这方面有充分的技术经验,你可以自定义这份cipher列表去支持陈旧的浏览器。


总结:


如果用证书加密网站后在大部分浏览器中可以正常访问,只在部分浏览器中不能访问,并且有NS_ERROR_NET_INSDEQUATE_SECURITY(加密安全等级不够)之类的提示,可以先尝试下面的命令来解决问题


RedHat/CentOS系统 


/usr/local/psa/bin/http2_pref enable 


Debian/Ubuntu系统 


/opt/psa/bin/http2_pref enable


我的评论

还未登录?点击登录

微信扫码沟通
微信扫码沟通

微信扫码沟通

售前咨询
合作
售后
return head