大家都知道在使用HTTP协议进行内容传输时,内容都会以明文发送,不会提供任何方式的数据加密。如果您希望业务的敏感数据在网络上传输时能够以密文传输,则需要使用HTTPS协议。毕竟HTTPS作为HTTP的安全版,将HTTP用SSL/TLS协议进行封装,其安全基础正是SSL/TLS协议。HTTPS提供了加密通讯方法,现在被广泛用于万维网上安全敏感的通讯,例如交易支付。
全民加速节钜惠来袭,CDN爆款产品低至0元起,850元代金券限时领
现在网站基本都用上了CDN加速,而使用阿里云CDN的小伙伴,如果业务需要HTTPS访问,还需要在解析前后配置HTTPS功能,如果域名有业务正在服务,推荐解析添加前进行配置,完成灰度测试后再调整解析。这里搬主题就分享一下阿里云CDN及HTTPS配置超详细图文教程。
1.已创建完成的CDN域名。
步骤一:暂无证书时购买流程(可选)
步骤二:外部证书导入流程(可选)
步骤三:开启HTTPS安全加速
提示:在开启HTTPS安全加速后,如果您还需要对其他HTTPS相关配置项进行了解和配置,可以继续参考下文中HTTPS功能介绍的内容。
如果您已经在其他平台购买了证书,可以在 阿里云控制台 – 数字证书管理服务 上传外部证书。
· 证书私钥:填写证书私钥内容的PEM编码。私钥证书的后缀为.key,使用文本编辑器打开复制并粘贴,或直接点击上传按钮选择本地文件。
如果域名申请时,选择的是单域名证书
如果域名申请时,选择的是泛域名证书
全民加速节钜惠来袭,CDN爆款产品低至0元起,850元代金券限时领
HTTPS相关功能配置项为非必要的优化功能,主要用于优化传输效率或调整安全限制策略,您可以根据业务诉求判断是否开启。
HTTP/2也被称为HTTP 2.0,相对于HTTP 1.1新增了多路复用、压缩HTTP头、划分请求优先级和服务端推送等特性,解决了在HTTP 1.1中一直存在的问题,优化了请求性能,同时兼容了HTTP 1.1的语义。目前,Chrome、Edge、Safari和Firefox等浏览器已经支持HTTP/2协议。
HTTP/2在业务中最大优势体现为提升了TCP多路复用效率,压缩header提升传输效率和速度。劣势体现为HTTP2在多路复用时,可能会由于底层窗口队头阻塞而导致更多上层HTTP请求受影响。
配置项总结:
1. HTTP/2可以提升终端和节点间的效率,但在终端网络环境不佳的情况下,终端耗时表现可能会劣化。
2. 如期望提升HTTP内容的传输效率,建议开启HTTP/2;如您业务中存在较多弱网用户,建议关闭HTTP/2。
阿里云CDN支持配置HTTP和HTTPS强制跳转
场景一:HTTP协议(不安全)请求重定向为HTTS协议(安全)
针对已经配置了HTTPS证书的加速域名,可配置强制跳转后,默认通过301重定向方式,将客户端到CDN节点的HTTP请求强制跳转为HTTPS请求,HTTPS请求更安全。
场景二:HTTPS协议(安全)请求重定向为HTTP协议(不安全)
通过301重定向方式,将客户端到CDN节点的HTTPS请求强制跳转为HTTP请求,无需安全传输。
配置项总结:
启用OCSP Stapling功能后,OCSP信息查询的工作将由CDN服务器完成。CDN通过低频次查询,将查询结果缓存到服务器中(默认缓存时间60分钟)。当客户端向服务器发起TLS握手请求时,CDN服务器将证书的OCSP信息和证书一起发送到客户端,供用户验证,无需用户再向数字证书认证机构(CA)发送查询请求。极大地提高了TLS握手效率,节省了用户验证时间。
配置项总结:
对TLS握手效率有优化需求时,可以开启该配置。
通过强制HTTPS跳转时,仍存在一次HTTP请求的传输过程,如果您希望完全不使用HTTP协议进行连接,并不允许客户接受不安全的证书,您可以开启HSTS功能,强制客户端(例如:浏览器)使用HTTPS与CDN节点创建连接,拒绝所有的HTTP连接并阻止用户接受不安全的SSL证书,降低用户的第一次时访问请求被恶意拦截的风险。
配置项总结:
适用于对安全有强需求,需要阻止客户端发起HTTP连接,并要求客户端校验证书安全性的场景,可以开启该配置。
阿里云CDN提供TLS版本控制功能,您可以根据不同域名的需求,灵活地配置TLS协议版本,低版本的TLS协议将提供对老版本浏览器的支持,但是协议的安全性相对更差一些,高版本的TLS协议将提供更高的安全性,但是对老版本浏览器的兼容性相对差一些。
配置项总结:
通常无需修改,如果您需要适配某些浏览器,或者增强TLS限制时,可以根据版本需要进行调整。
上传/购买的证书无法用于该加速域名的绑定,普遍为加速域名和证书绑定域名不匹配导致,详情可参考本文 配置接入中 开启HTTPS安全加速 相关解释。
客户端是以HTTP访问还是HTTPS访问完全是客户端的行为,如果您希望客户端强制使用HTTPS访问,可以在CDN上开启强制HTTPS跳转,或业务代码中引用链接时使用HTTPS协议。
证书链是由根证书、中间证书、用户证书组成。如果您上传的公钥文件中只有用户证书,部分浏览器无法校验证书合法性导致报错或加载异常(例如提示证书链不完整/无法获取中间证书/无法校验根证书等)。您可以通过证书链补全工具,对公钥的证书链进行补全后,重新上传并更新域名的证书信息即可。
HTTPS是客户端和服务端的交互,未使用CDN之前,是客户端直接和源站交互,因此源站需要配置HTTPS。使用CDN之后,是客户端和CDN交互,如果您需要以HTTPS的形式访问CDN,则必须在CDN上配置HTTPS证书。
不需要。源站的HTTPS证书更新后不会影响CDN上的HTTPS证书,当您在CDN上配置的HTTPS证书将要到期或者已经到期时,您才需要在CDN上更新HTTPS证书。
会额外收费。开启CDN的HTTPS加速,实际开启的是客户端到CDN边缘节点这段链路的HTTPS。因为SSL协议的握手和内容解密都需要计算,所以会增加CDN服务器的CPU资源损耗,但不会增加您源站服务器的资源损耗,因为CDN边缘节点到您源站这段链路使用的仍然是HTTP协议,不会额外增加您源站的损耗。
如果您在步骤一的灰度验证中访问时因HTTPS问题未达到预期,可在配置调整达到预期后再进行验证。以上就是阿里云CDN及HTTPS配置超详细图文教程。