防盗链


  • 什么是盗链
    客户端向服务器请求资源时,为了减少网络带宽,提升响应时间,服务器一般不会一次将所有 资源完整地传回给客户端。比如在请求一个网页时,首先会传回该网页的文本内容,当客户端 浏览器在解析文本的过程中发现有图片存在时,会再次向服务器发起对该图片资源的请求,服 务器将存储的图片资源再发送给客户端。在这个过程中,如果该服务器上只包含了网页的文本 内容,并没有存储相关的图片资源,而是将图片资源链接到其他站点的服务器上,就形成了盗 链行为

  • referer
    HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器藉此可以获得一些信息用于处理。通过该头域的值,我们可以检测到访问目标资源的源地址

  • 对象存储中防盗链

    • 对于私有的bucket,因为访问控制的原因,基本不存在大规模盗链的可能性,对于公开空间,因为没有访问权限控制,需要进行防盗链设置
  • 友商防盗链做法

    • 七牛
      七牛对于公开空间的防盗链做法主要是通过设置白名单、黑名单和空referer是否可以访问来实现的
      设置选项(白名单和黑名单不会同时生效)有:白名单、黑名单、关闭三个选项

      七牛防盗链.png

      七牛采用三个参数来实现防盗链:
      <RefererType>: 防盗链类型:黑名单(black)|白名单(white)
      <RefererValue>: 防盗链黑白名单列表:以逗号(,)分割
      <NullReferer>:是否允许空referer

    • AWS
      AWS也是通过bucket的访问控制来实现防盗链的
      AWS通过bucket Policy中的condition来先设置不同请求的权限

    上面的例子就是说,允许匹配的域名和ip拥有bucket:mybucket GetObject的权限


    AWS_bucket_policy.png
  • 初步设想

    • 采用类似七牛的方式设置白名单、黑名单来实现防盗链
    • 通过http请求中的referer确定请求的来源,如果http请求中没有referer为空,这里对于referer为空是否允许访问也可以设置
    • 在我们bucket访问控制中加入字段
      <referer类型>: 防盗链类型:白名单 | 黑名单 | 关闭
      <白名单列表> 域名(ip)匹配,以逗号隔开
      <黑名单列表> 域名(ip)匹配,以逗号隔开
      <NullRefere> 是否支持空referer
    • 第一个版本先不支持共同支持白名单和黑名单同时设置,这个接口要留下
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容

  • 背景 A是网站站长,在A的网站的网页里有一些图片和音频视频的链接,这些静态资源都保留在服务器上。B是另一个网站的站...
    Charlot阅读 1,080评论 0 3
  • 一.盗链的定义: 某内容不在自己服务器上,而通过技术手段,绕过别人放广告有利益的最终页,直接在自己的有广告有利益的...
    繁天涯阅读 13,220评论 2 9
  • 关于防盗链与跨域访问 最近用阿里云的时候发现一些防盗链与跨域访问的一些坑,填完坑之后稍微整理一下。 防盗链 防盗链...
    LibX阅读 2,519评论 0 0
  • nginx防盗链的方法 一般,我们做好防盗链之后其他网站盗链的本站图片就会全部失效无法显示,但是您如果通过浏览器直...
    很少更新了阅读 8,514评论 1 3
  • 场景 最近公司项目需求中涉及到需要引用微信朋友圈中的图片资源,结果被腾讯的防盗链系统拦截,所有的图片都变成了令人尴...
    皱凯凯凯凯阅读 1,858评论 1 10