Nginx使用http_accesskey_module防盗链,告别referer,告别伪装

传统的防盗链很多是依赖referer,比如apache的rewrite模块,根据规则判断referer,这个方法是可以伪装的,对现在的下载工具没有丝毫效果了。

我们就来说说http_accesskey_module模块的原理,他通过接受到的参数值判断访问是否合法。这里有一套MD5加密算法。前台的网页根据用户的IP产生一个MD5值,后端的WEB SERVER就来判断这个MD5,对的就放行。不对就拒绝。浏览器上直接访问物理文件,是不能打开的。

现在就开始操作:

下载nginx

http://sysoev.ru/nginx/nginx-0.6.35.tar.gz补丁文件:http://www.ieesee.net:8080/~uingei/nginx-accesskey-2.0.3.diff.bz2tar -xzvf nginx-0.6.35.tar.gzcd nginx-0.6.35bzcat ../nginx-accesskey-2.0.3.diff.bz2 | patch -p1./configure –with-http_accesskey_module ……makemake install

如果中途出现:

unused variable `clcf'

报错信息,我是这么解决的,将src/http/modules/ngx_http_accesskey_module.c 的ngx_http_core_loc_conf_t 删除,重新编译。

编译成功后,在主配置文件加入类似下面的代码:

server{ .....     location /download {         accesskey             on;        accesskey_hashmethod  md5;        accesskey_arg         "key";        accesskey_signature   "mypass$remote_addr";    } }

/download 为你下载的目录。

前台php产生的下载路径格式是:

http://*****.com/download/1.zip?key=<?php echo md5('mypass'.$_SERVER["REMOTE_ADDR"]);?>

这样,当访问没有跟参数时,其他用户打开时,就出现:

基于客户端IP产生的MD5值,换了IP后就打不开了。这样的方法在nginx只做均衡调度工作时,不起作用的。会提示404错误。

转:http://xok.la/2009/03/nginx_http_accesskey_module_referer.html

Nginx使用http_accesskey_module防盗链,告别referer,告别伪装相关推荐

  1. Nginx设置图片防盗链(白名单与黑名单)

    点击蓝字关注这个神奇的公众号- 某些时候可能您会发现,别人网站直接将您的网站图片拿过去使用,导致额外消耗服务器流量和带宽,如果本身服务器带宽和流量就比较小,被人盗链后势必会造成一定影响.这篇文章分享下 ...

  2. 学会Nginx优化与防盗链预防坏蜀黍

    Nginx优化与防盗链 文章目录 一.Nginx优化 1.配置nginx隐藏版本号 修改配置文件 修改源码文件,重新编译安装 2.修改用户与组 3.缓存时间 4.日志切割 5.连接超时 6.更改进程数 ...

  3. Nginx优化之防盗链

    Nginx优化之防盗链 文章目录 Nginx优化之防盗链 前言 实验环境 实验步骤 前言 之前,我们知道了Apache的防盗链,接下来我们来看看nginx的防盗链. 有时候在浏览网页的时候,会遇到某些 ...

  4. Nginx优化与防盗链

    Nginx优化与防盗链 一.隐藏nginx版本号 1.1查看版本号 1.2隐藏版本信息 二.修改用户与组 三.缓存时间 四.日志分割 五.连接超时 六.更改进程数 七.配置网页压缩 八.配置防盗链 8 ...

  5. centos 7.6 —— Nginx 配置网页防盗链FPM参数优化

    centos 7.6 -- Nginx 配置网页防盗链&&FPM参数优化 一.网页防盗链 (1)防盗链端--服务端配置(192.168.75.134) 1.1 服务端配置DNS服务,域 ...

  6. Lamp架构-nginx重定向以及防盗链

    nginx重定向以及防盗链 重定向 防止恶意域名解析到服务器IP,消耗服务器资源 直接返回500 重定向至另一个不影响服务器的域名 重定向至加密站点 网站迁移 www.westos.org/bbs - ...

  7. 【博客312】Nginx防盗链模块referer的使用

    内容: 记录如何使用nginx的referer模块防止盗链 nginx的referer模块配置: 解释: 在referer模块我配置了需要通过访问我的ip:端口/my_data来访问我的静态资源文件: ...

  8. PHP 实现图片防盗链,Nginx实现图片防盗链功能

    很多时候在浏览网页的时候,尤其是图片来自QQ空间之类的,会遇到某些文件(图片等)无法访问的情况,这是因为图片的所有方做了防盗链机制 了解防盗链之前先了解下http referer这个属性,http r ...

  9. nginx配置图片防盗链

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${expires 30d;access_log off;valid_referers none blocked *. ...

最新文章

  1. BERT轻量化:最优参数子集Bort,大小仅为BERT-large16%
  2. shell任务不受意外中断影响的常见方法
  3. 一个用JAVA实现的线段树类--泛型 重构.
  4. 单片机裸机实用组件--软件定时器、时间戳
  5. 你的第一个AngularJS应用--教程二:基架、建立和測试的工具
  6. react-native 打包apk
  7. Postman工具之参数化
  8. 学生用计算机说明方法,15.文中多处运用了作比较的说明方法.请任选一例.说说运用这种方法的作用. 例子: 作用:...
  9. 如果今天完成,ESB会是什么样子?
  10. CentOS7启用SELinux和Firewall修改ssh端口号
  11. 硬盘清零工具_WinHex使用方法与使用WinHex恢复硬盘实例
  12. 两个ExtJs可视化设计器
  13. 背景建模算法比较与ViBe算法论文解读与python代码
  14. JavaSE就业班四----数据库Oracle和JDBC
  15. 学习装黑苹果的正确姿势(小白适用)
  16. springboot志愿者管理系统
  17. 电脑怎么安装xp系统原版镜像
  18. 2021.3.14学习随笔
  19. html背景斜线,巧妙的实现 CSS 斜线
  20. 榆熙教育:电商运营必备关键指标公式

热门文章

  1. Java程序员总结分布式架构,你又了解多少呢?
  2. 数据库历险记(二) | Redis 和 Mecached 到底哪个好?
  3. AJAX 跨域请求 - JSONP获取JSON数据
  4. ios 将矩形图片裁剪成圆形图片
  5. EF code First数据迁移学习笔记
  6. Cocos2d-x3.2 屏幕截图
  7. 优秀程序员应该做的几件事【转】
  8. 如何在命令行下更改ip地址
  9. Git忽略已经被提交的文件
  10. cacti监控批量加,省时省力又省心。