HTTPS 加密时代已经来临,近两年,Google、Baidu、Facebook 等互联网巨头,不谋而合地开始大力推行 HTTPS, 2018 年 7 月 25 日,Chrome 68 上线,所有 HTTP 网站都会明确标记为“不安全”。国内外包括大到 Google、Facebook 等巨头,小到个人博客在内的众多网站,以及登陆 Apple App Store 的 App,微信的小程序,都已经启用了全站 HTTPS,这也是未来互联网发展的趋势。

HTTPS 持续优化之路

HTTPS(Hypertext Transfer Protocol Secure )是一种以计算机网络安全通信为目的的传输协议。在 HTTP 下加入了 SSL 层,从而具有了保护交换数据隐私和完整性和提供对网站服务器身份认证的功能,简单来说它就是安全版的 HTTP 。

△ HTTP、HTTPS 差异

网上有不少问题,类似于“HTTPS 要比 HTTP 多用多少服务器资源?”因此,对 HTTPS 的加密优化是又拍云一直努力的方向,近两年我们上线了一系列提升 HTTPS 性能的举措:包括 HSTS(HTTP Strict Transport Security,HTTP 严格传输安全)、HTTP/2( 包括 Server Push)、TLS 1.3 等功能,在国内 CDN 市场一直处于领先地位。近期,我们又一次推出了最低 TLS 版本管理功能。

低版本 TLS 之殇

低版本的 TLS 存在许多严重漏洞,这些漏洞使得网站存在被攻击的风险,其中 POODLE 和 BEAST 这两个漏洞就较大多数人所知。另外根据 Nist(美国国家标准与技术研究院)所说,现在没有补丁或修复程序能够充分修复低版本 TLS 的漏洞,尽快升级到高版本并禁用低版本的 TLS 才是好方法。

随着加密标准的升级,TLS 1/1.1 将逐渐被全行业禁用。目前正处于 TLS 1.2 取代 TLS 1/1.1 的过渡时期,2018 年将会有越来越多的互联网安全企业启用 TLS 1.2,看看下面几个业界的动态就知道低版本 TLS 的现状了。

  • GitHub 于 2018 年 2 月 1 日起,禁用 TLSv1 和 TLSv1.1。
  • Salesforce 于 2018 年 3 月 逐步禁用 TLSv1。
  • 微信小程序要求的 TLS 版本必须大于等于 1.2。
  • 为了符合支付卡行业数据安全标准(PCI DSS)并符合行业最佳实践,GlobalSign 将在 2018 年 6 月 21 日禁用 TLS 1 和 TLS 1.1 。

其中 PCI DSS 新合规标准已于 2018 年 6 月 30 日生效,该标准要求禁用低版本 TLS 协议(例如:TLSv1),HTTPS 配置应实施更安全的加密协议(TLSv1.1 或更高版本,强烈建议使用 TLS v1.2 ),以满足 PCI DSS 新合规标准的要求,从而保护支付数据。

选择的协议级别越高,相应的也就更安全,但是可以支持的浏览器也就越少,有可能会影响终端用户访问,请谨慎选择配置。

高版本 TLS VS 低版本 TLS

这里通过 HTTPS安全等级检测工具 对网站安全性进行了一个测试。

△ 最低 TLS 版本默认为 TLSv1

△ 最低 TLS 版本设置为 TLSv1.1

其中 TLSv1 版本的测试结果中显示,PCI DSS 不合规。开启了最低 TLS 版本管理功能的不存在这个问题。

开启最低 TLS 版本管理功能

登陆又拍云控制台,创建或者选择一个 CDN、云存储服务,选择「配置」,再选择 「HTTPS」,找到「最低 TLS 版本」配置项,点击【管理】按钮即可进入配置界面。

客户可以按照自己网站、App、小程序的实际需求,选择 TLSv1、TLSv1.1、TLSv1.2、TLSv1.3 中的一个,作为最低 TLS 版本。

为了满足某些测试要求,如需设置最低 TLS 版本为 TLSv1.3,需要提前开启 TLS 1.3 功能(TLS 1.3 默认关系,需要手动开启。进入路径:控制台 ⇒ 选择或创建服务 ⇒ 配置 ⇒ HTTPS ⇒ TLS 1.3)。

将来,又拍云会持续对 HTTPS 安全加密进行优化,也会不断推出新的功能以增加灵活性及安全性,为网络安全和进步尽一份力量。