【云小课 】CDN第3课 5分钟了解CDN安全防护

举报
小肆 发表于 2020/06/08 10:30:37 2020/06/08
【摘要】 华为云CDN提供了URL鉴权、Referer防盗链、HTTPS安全加速、IP黑白名单等不同级别的安全措施,保障您的源站资源全链路安全传输。


前两期云小课已经介绍了如何将域名接入CDN,以及如何通过CDN加速OBS桶托管的网站,最近有同学担心域名接入CDN后是否安全,源站是否存在风险,是否会遭受各种网络攻击?


不用担心,CDN提供了强大的安全防护措施,下面就给大家介绍华为云CDN几种常见的安全防护。


HTTPS安全加速


通过配置加速域名的HTTPS证书,并将其部署在全网CDN节点,实现HTTPS安全加速。

HTTP和HTTPS的区别是什么呢?

  • HTTPHTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读取其中的信息。

  • HTTPS为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

优势:HTTPS数据传输过程是加密的,安全性较好,能防止传输内容被窃取。

不足:HTTP传输方式响应速度快于HTTPS,因为HTTP使用TCP三次握手,客户端 和服务器只需要交换3个包,而HTTPS还需要加上SSL握手9个包。


配置HTTPS安全加速前,需要准备SSL证书,CDN支持使用自有证书,也可以前往 SSL证书管理 购买证书或管理托管证书

CDN HTTPS安全加速具体配置方法请戳这里~


Referer防盗链



通过配置referer黑白名单对访问者身份进行识别和过滤,实现限制访问来源的目的。

防盗链功能基于 HTTP 协议支持的 referer 机制,通过referer跟踪来源,对来源进行识别和判断。用户访问加速域名网站内容时,访问请求到达CDN节点后,CDN节点会根据配置的referer黑白名单,对访问者的身份进行识别和过滤,符合规则的可以顺利访问到该内容。如果不符合规则,该访问请求将会被禁止,返回403禁止访问的错误信息。




优势:可以控制访问请求的来源,比如某些页面或域名过来的请求可以访问,某些不能访问,根据自己的需求灵活定制。

不足:referer信息可以伪造。

referer防盗链的具体配置方法请戳这里~

IP黑白名单


配置IP黑白名单,通过设置过滤策略,对用户请求IP地址进行过滤,从而限制访问来源。

设置黑名单之后,除了黑名单中的IP地址都能访问;设置白名单之后,只有白名单中的IP地址能访问。



优势:方法简单,效果明显,能屏蔽可疑IP地址。

不足:有局限性,使用时必须知道访问者的IP地址,适用的场景有限。

IP黑白名单的具体配置方法请戳这里~



URL鉴权


CDN分发的内容默认为公开资源,URL鉴权功能主要用于保护用户站点资源,防止资源被恶意用户下载盗用。华为云CDN提供了3种URL鉴权配置。


校验方法:

  1. 是否携带鉴权参数。如果没有携带鉴权参数,认为请求非法,返回HTTP 403错误。

  2. 时间校验:判断系统当前时间是否在区间[timestamp, timestamp+有效时间]内。超出该区间,认为过期失效并返回HTTP 403错误。

  3. 加密串校验:时间校验通过后,则以sstring方式构造出一个字符串。然后使用md5算法算出HashValue,并和用户请求中带来的md5hash进行对比。结果一致则认为鉴权通过并返回文件,否则鉴权失败返回HTTP 403错误。


3种鉴权方式的URL组成和鉴权串的加密算法有所差异。

  • A类鉴权的访问URL构成:http://DomainName/Filename?auth_key=timestamp-rand-uid-md5hash

  • B类鉴权的访问URL构成:http://DomainName/timestamp/md5hash/FileName

  • C类鉴权的访问URL构成:

    格式一:http://DomainName/{<md5hash>/<timestamp>}/FileName

    格式二:http://DomainName/FileName?md5hash=<md5hash>&timestamp=<timestamp>


优势:鉴权通过后才被认定为合法请求,否则视为非法请求,拒绝访问。能有效保护CDN站点资源。

详细的URL鉴权配置以及参数说明请参考URL鉴权


CDN和WAF联合配置


WAF的作用

Web应用防火墙(Web Application Firewall,WAF),通过对HTTP(S)请求进行检测,识别并阻断SQL注入、跨站脚本攻击、网页木马上传、命令/代码注入、文件包含、敏感文件访问、第三方应用漏洞攻击、CC攻击、恶意爬虫扫描、跨站请求伪造等攻击,保护Web服务安全稳定。

购买Web应用防火墙后,在WAF管理控制台将域名添加并接入WAF,即可启用Web应用防火墙。启用之后,您网站所有的公网流量都会先经过Web应用防火墙,恶意攻击流量在Web应用防火墙上被检测过滤,而正常流量返回给源站IP,从而确保源站IP安全、稳定、可用。

CDN+WAF配置原理

先将域名解析到CDN,再将CDN回源地址修改为WAF的“CNAME”,这样流量才会被CDN转发到WAF,WAF再将流量转到源站,实现网站流量检测和攻击拦截。配置完成后,流量会先经过CDN,再转发至WAF,实现联动防御。






优势:能有效识别并阻断SQL注入、跨站脚本攻击、网页木马上传、命令/代码注入、文件包含、敏感文件访问、第三方应用漏洞攻击、CC攻击、恶意爬虫扫描、跨站请求伪造等攻击。

CDN+WAF联合配置指导请看这里~


华为云“DDoS高防+CDN”联动


如果您的网站(如视频、电商平台)有大量图片或视频等静态资源为客户展示,希望提高静态资源的访问速度,同时提高客户登录平台和支付能力等动态资源的网络能力,保证平台稳定运行,可以使用华为云“DDoS高防+CDN”联动方案。


动态资源和静态资源的区分如下表所示:

表1-1 动态资源与静态资源

类别

定义

举例

解决方法

动态资源

服务器端在应答客户请求前需要和数据库进行交互的业务。

  • 支付

  • 登录

动态资源的域名解析到高防的CNAME。高防防护能够保证登录、支付等功能平台稳定运行不中断。

静态资源

客户可以直接在对象存储中获取的固定资源。

  • 图片

  • 视频

静态资源的域名解析到CDN的CNAME。CDN加速使客户能够快速获取视频、图片等资源,提升客户体验。




温馨小提示:

如果平台业务系统的动静态资源采用一套域名,没有做动静态资源分离,这种情况无法使用高防+CDN联动解决方案。


扩展问答


流量能否先过CDN再过高防,或先过高防再过CDN?


以上两种均不可以。

  •  第一种情况:流量先经过CDN再经过高防,即高防串联在CDN后面。

    结果:高防的DDoS防护功能失去意义。

    原因:攻击流量先到达CDN,CDN被攻击用户无法访问,攻击流量不会到达高防,高防没有做流量清洗的机会。



  • 第二种情况:流量先经过高防再经过CDN,即CDN串联在高防后面。

    结果:CDN的加速功能失去意义。

    原因:CDN加速能力的工作原理是使用户可以就近访问分散在各地的CDN节点,客户直接访问高防则无法使用CDN就近访问的加速能力。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。