注册本站  论坛  繁體中文

电脑技巧
手机 | MP3 | MP4 | 显卡 | 主板 | 显示器 | 光存储 | 笔记本 | 网络设备 | 移动存储 | 数码相机
键鼠 | CPU | 音箱 | GPS | 电视 | 服务器 | 投影机 | 机箱电源 | 品牌电脑 | 办公打印 |
| 网站首页 | Cisco | Windows | Linux | Java | Dotnet | Oracle | 网页设计 | 平面设计 | 安全 | 软件应用 | 电脑维修 | 办公维修 |
您现在的位置: 电脑技巧 >> 安全 >> 安全方案 >> 安全正文

网站高级应用之防盗链

文章来源:IT实验室周报 作者:扶凯 更新时间:2008-8-23 16:12:00 【 】 【加入收藏

版权声明:本作品已刊登在《IT实验室周报》第7期第7版,作者扶凯。版权属于《IT实验室周报》与中国IT实验室网站共同所有,禁止任何媒体、网站或个人在未经书面授权的情况下转载、摘编或利用其它方式使用上述作品。已经授权使用作品的,应在授权范围内使用,并注明“来源:IT实验室周报”。违反上述声明者将追究其相关法律责任。

    现在做网站,都会遇到盗链的问题,包括图片盗链、音乐或视频文件(如mp3、Flash等)盗链.相信很多朋友都曾遇到过网站内文件特别是图片被盗链的情况烦。我们下面就是对这个问题来分析一下原理和解决方法。

    所谓盗链:是指对方网站直接链接您网站上的文件,而不是将其置于自己的服务器上,一般而言,盗链的对象大多为较耗带宽的大体积文件,如图片、视频等,从某种意义上说,这事实上造成了让您为其访问流量买单:不仅您的服务器带宽被无任何回报地占用,而且,往往会在很大程序上影响您网站的访问速度。

    如何盗链:只要用最基本的html知识,比如在发布的文章中使用img嵌套一个图片,href链接一个文件下载等.

    反盗链的原理和实现方法:判断Referer头是不是自己的域名,如我过一会要讲的apache禁止图片盗链的实现,就用了这个方法.

    下面我们就以图片为例子来说明这个.

    实现目的:我们要实现的是不仅屏蔽/禁止非本网站的盗链访问,还将盗链请求转给自身的网站,让读者知道谁是真正的发布者(图片源网站)

    设置 apache的rul重写功能如加入下面的设置到.htaccess,来实现这个功能. 禁止图片盗链.

   

 RewriteEngine on

    打开重写url

   

 RewriteCond %{REQUEST_URI}  !^/allow/.*$

    排除的url.这个相当的重要,因为后面的referer过滤时会过滤这些.所以打开这个可以"盗链",这样才能让用户正确的显示出错的网站.

   

 RewriteCond %{REQUEST_FILENAME} \.(gif|jpeg|png|jpg)$ [NC]

    以上为判断是否为图片文件:您也可以根据自己的需要设置更多的文件类型。也可以是exe之类

   

 RewriteCond %{HTTP_REFERER} !^$

    上面这一行意在允许空"HTTP_REFERER"的访问,即允许用户在浏览器地址栏中直接输入图片地址时图片文件的显示。建议,如果强迫必须具有"HTTP_REFERER"才能访问,可能会带来某些问题,比如直接在url地址栏中输入地址

   

 RewriteCond %{HTTP_REFERER} !chinaitlab\.com [NC]
RewriteCond %{HTTP_REFERER} !google\.com [NC]
RewriteCond %{HTTP_REFERER} !baidu\.com [NC]

    设置允许访问的HTTP来源,包括网站自身、Google、Baidu、等。

   

 RewriteRule (.*) /allow/error.gif [R=301,NC,L]

    将不满足referer条件的访问重定向至error.gif。有没有发现error.gif位于允许"盗链"的目录allow中,要相当注意,不然,警告信息和图片将无法在对方网站上显示。

    如上,就实现了我们要的功能。不仅屏蔽/禁止非本网站的盗链访问,还将盗链请求转给自身的网站,让读者知道谁是真正的发布者(图片源网站)

    其他类型文件的防盗链设定

    如果您的网站上存在其他类似体积较大较耗费带宽的文件如flash、mp3被其他网站盗链,可以同样采取上述策略,比如说,对Flash文件,可用类似如下的设置:

   

 RewriteCond %{REQUEST_URI} ^/allow
RewriteCond %{REQUEST_FILENAME} \.swf$ [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !chinaitlab\.com [NC]
RewriteRule (.*) /allow/error.swf [R=301,NC,L]

    当然,需要事先有声明版权信息的flash文件"error.swf"。其他如mp3文件、压缩文件(zip或rar)盗链的设置和这个一样。

    当然,以上讲的referer有可能有高手造假,那我们还有更加高级的方法.比如加上User-Agent等别的头判断,如Cookie判断等 记录比对来过的IP,控制访问页面时设置session,在访问图片等时判断是否来过等方法.

  • 上一篇安全:

  • 下一篇安全:
  • 最 新 热 门
     准入控制打造终端实名制管理平台
     保护通用操作系统安全的十大方法
     历数云计算为安全带来的七大利好
     降低误杀率 八个技巧改进邮件过滤
     保护云计算安全的三个必备步骤
     云计算的好处多多 危险也多多
     一步到位,杜绝隐患的十个修复方法
     教你杜绝不请自来的垃圾邮件
     巧妙设置让大蜘蛛更高效工作
     企业应当关注SaaS安全方案
    最 新 推 荐
     准入控制打造终端实名制管理平台
     保护通用操作系统安全的十大方法
     历数云计算为安全带来的七大利好
     降低误杀率 八个技巧改进邮件过滤
     保护云计算安全的三个必备步骤
     云计算的好处多多 危险也多多
     一步到位,杜绝隐患的十个修复方法
     教你杜绝不请自来的垃圾邮件
     巧妙设置让大蜘蛛更高效工作
     企业应当关注SaaS安全方案
    相 关 文 章

    麻雀虽小五脏俱全 卡卡6.0高级应用
    Websense:可信赖网站正成为黑客工具
    黑客勾结非法药品网站 网上犯罪生态曝光
    Office漏洞导致访问特定网站执行任意代码
    专家支招 简单有效抵御网站威胁
    奥运警报:网站假冒奥运网发动彩票攻击
    黑客频繁攻击网站 安全标准缺失成为主因
    网站挂马实例分析 提高警惕保护网络安全
    构建安全服务器环境 阻止网站黑客攻击
    警惕恶意软件破坏 网站SQL注入防御实战

    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告

     

    Copyright 2006-2008 pcjx.com All Rights Reserved
    电脑技巧 版权所有 粤ICP备06059145号 地图
    本网站所有内容未经许可不得转载或做其他使用