CDN的HTTPS配置及常见问题

简介: 本文主要介绍如何在阿里云CDN上配置HTTPS证书以及一些常见问题的解答。

什么是HTTPS?

HTTP协议以明文方式发送内容,不提供任何方式的数据加密。HTTPS协议是以安全为目标的HTTP通道,简单来说,HTTPS是HTTP的安全版,即将HTTP用SSL/TLS协议进行封装,HTTPS的安全基础是SSL/TLS协议。HTTPS提供了身份验证与加密通讯方法,被广泛用于万维网上安全敏感的通讯,例如交易支付。
根据2017年EFF(Electronic Frontier Foundation)发布的报告,目前全球已有超过一半的网页端流量采用了加密的HTTPS进行传输。更多HTTPS的信息请参考阿里云CDN官方帮助文档什么是HTTPS加速

CDN如何HTTPS加速

使用了CDN以后,域名解析到了CDN,因此必须要在CDN侧配置HTTPS证书。如果CDN上没有配置HTTPS证书,则CDN只支持HTTP访问;如果CDN上配置了HTTPS证书,则CDN支持HTTP和HTTPS访问。具体配置请参考帮助文档“配置HTTPS证书”。

源站已经配置了HTTPS,CDN上是否还需要配置

HTTPS是客户端和服务端的交互,没有用CDN前,是客户端直接和源站交互,因此源站需要配置HTTPS。使用CDN以后,是客户端和CDN交互,因此如果需要HTTPS访问CDN,则CDN上必须要配置HTTPS证书。源站配置了HTTPS证书只是支持CDN以HTTPS回源到源站。

为什么配置了HTTPS,客户端还是HTTP访问的

客户端是HTTP访问还是HTTPS访问完全是客户端的行为,如果希望客户端强制用HTTPS访问,可以在CDN上开启强制HTTPS跳转

申请CDN免费HTTPS证书失败

在阿里云CDN控制台中申请免费HTTPS证书时,存在一些限制。您可以参考“在CDN的HTTPS设置中申请免费证书失败”的文档去排查和解决。

CDN配置HTTPS以后还是无法访问

(1)如果是购买证书以后自定义上传的情况,需要特别注意SSL证书根据其适用范围可以分为:通配符域名、单个域名和多个域名。根据其名称即可查看购买的证书分别适用于主域名下某个级别的全部子域名、单个域名或者多个域名。用户是需要保证购买的证书必须适用于加速域名后续才可以添加在CDN中生效。如下图所示的即是添加的SSL证书(适用于www域名)与CDN加速域名(video的子域名)是不相匹配的,因此会抛出NET::ERR_CERT_COMMON_NAME_INVALID的错误。

image.png

(2)CA机构提供的证书为了兼容性可能会提供多种形式的证书,CDN支持的证书仅有PEM格式,并且私钥需要RSA格式。如果客户获取得到的是其他格式的证书是需要转换后然后提交到CDN服务中的,常见格式切换格式请参考:CDN 证书格式说明,而其中的私钥文件如果是-----BEGIN PRIVATE KEY-----, -----END PRIVATE KEY-----样式的话是需要通过如下命令转换成RSA格式:
openssl rsa -in old_server_key.pem -out new_server_key.pem

(3)CDN是不支持设置密码的私钥。如图3所示即是经过加密的私钥,这类私钥文件是需要经过解密后才可以正常使用,因此CDN是无法正常使用的。
image.png

(4)证书链需要补全中间证书。对于中级CA机构提供的证书,那么拿到的证书将包括多份证书,而CDN需要添加的是包括中间证书的完整证书链,拼接规则为:服务器证书放第一份,中间证书放第二份,中间不要有空行。另外有一些中间证书CA机构提供了不同的服务器使用的证书,由于CDN是基于Tengine提供服务的,因此用户是需要使用Nginx对应的证书到视频中心的。

(5)CDN的HTTPS技术是基于SNI技术实现的。SNI技术主要是用来在同一台服务器上配置多个证书的需求,而SNI是需要客户端发送请求的时候带有SNI的信息以标识是哪个域名的SSL请求,因此SNI技术对客户端有一定的要求,部分低版本系统中的低版本浏览器不满足该要求。SNI技术对于客户端的限制详细请参考:SNI对客户端浏览器限制

为什么网站开启HTTPS以后显示不全

打开浏览器开发者模式,切换到console页面,如果看到Mixed Content错误,则说明是浏览器安全限制导致的。浏览器要求Https的页面里只能加载Https的地址,不能加载Http的资源。如果您的Https的页面里加载了很多http的资源,这些资源加载不出来的,因此会引起网站显示异常,这种情况需要网站技术人员把htm代码里加载的资源地址都改成https的。
image.png

目录
相关文章
|
数据采集 网络安全 PHP
用PHP抓取HTTPS资源时的常见问题与解决方法
本文探讨了在PHP中抓取HTTPS资源时常见的问题及其解决方案,包括SSL证书验证、反爬机制应对、HTTPS代理设置及提高抓取效率。通过代码示例展示了如何使用代理IP和合理设置请求头等方法,以高效获取贝壳网的房价数据。
210 0
|
机器学习/深度学习 人工智能 监控
视觉智能平台常见问题之http转https便捷的转换如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
153 0
|
缓存 应用服务中间件 网络安全
【CDN 常见问题】CDN HTTPS配置及常见问题
CDN提供了HTTPS的加密传输方式保证在客户端访问CDN的L1节点的链路上对传输数据进行加密避免被恶意查看和篡改。客户通过将自行向证书CA机构申请的SSL证书上传到CDN上,CDN会完成对所有的L1节点的配置同步保证后续所有的L1节点支持HTTPS方式访问。
9897 10
|
网络安全 Python
Python常见问题 - python3 使用requests发送HTTPS请求报certificate verify failed 错误
Python常见问题 - python3 使用requests发送HTTPS请求报certificate verify failed 错误
1203 0
|
缓存 tengine 应用服务中间件
【CDN 常见问题】CDN HTTPS配置及常见问题
CDN提供了HTTPS的加密传输方式保证在客户端访问CDN的L1节点的链路上对传输数据进行加密避免被恶意查看和篡改。客户通过将自行向证书CA机构申请的SSL证书上传到CDN上,CDN会完成对所有的L1节点的配置同步保证后续所有的L1节点支持HTTPS方式访问。
【CDN 常见问题】CDN HTTPS配置及常见问题
|
Web App开发 安全 网络安全
HTTPS 常见问题解答
百度从 14 年开始对外开放了 https 的访问,并于 3 月初正式对全网用户进行了 https 跳转。 很多用户看到这个新闻都比较好奇,在新闻站点,微博,微信和贴吧,知乎等站点进行了热烈的讨论,这里我们也从一个普通用户容易理解的角度来看看大家的问题。
|
10月前
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
275 18
|
10月前
|
网络安全 开发者
如何解决HTTPS协议在WordPress升级后对网站不兼容的问题
以上就是解决WordPress升级后HTTPS协议对网站的不兼容问题的方法。希望能把这个棘手的问题看成是学校的管理问题一样来应对,将复杂的技术问题变得更加有趣和形象,并寻觅出解决问题的方式。希望你的网站能在新的学期得到更好的发展!
262 19
|
10月前
|
JSON 安全 网络协议
HTTP/HTTPS协议(请求响应模型、状态码)
本文简要介绍了HTTP与HTTPS协议的基础知识。HTTP是一种无状态的超文本传输协议,基于TCP/IP,常用80端口,通过请求-响应模型实现客户端与服务器间的通信;HTTPS为HTTP的安全版本,基于SSL/TLS加密技术,使用443端口,确保数据传输的安全性。文中还详细描述了HTTP请求方法(如GET、POST)、请求与响应头字段、状态码分类及意义,并对比了两者在请求-响应模型中的安全性差异。
927 20
|
10月前
|
安全 网络协议 算法
HTTP/HTTPS与SOCKS5协议在隧道代理中的兼容性设计解析
本文系统探讨了构建企业级双协议隧道代理系统的挑战与实现。首先对比HTTP/HTTPS和SOCKS5协议特性,分析其在工作模型、连接管理和加密方式上的差异。接着提出兼容性架构设计,包括双协议接入层与统一隧道内核,通过协议识别模块和分层设计实现高效转换。关键技术部分深入解析协议转换引擎、连接管理策略及加密传输方案,并从性能优化、安全增强到典型应用场景全面展开。最后指出未来发展趋势将更高效、安全与智能。
412 1