Nginx防盗链
发布:Admin 日期:2010-01-23
特别是做下载的站 不限制下客户端的连接线程数和客户端的下载带宽 web服务器有限的连接资源以及服务器带宽资源很快被耗尽 如今下载工具越来越强大 对做下载站的同仁都是比较棘手的事情 不仅如此 被其他工具或者其他网站盗链也是很头痛的事情 防盗链的方法相信各位都有高招应付 这里记录一下自己用nginx做下载用的服务器防盗链和限制线程和带宽的方法
先说防盗链
防盗链很多都是做rewrite,判断referer是否有效,对图片类比较有效,对web服务器来说,apache有rewrite模块支持
nginx则有ngx_http_referer_module模块支持,配置简单,nginx举例
引用
location ~* \.(gif|jpg|png)$ {
valid_referers none blocked www.askwan.com baidu.com;
if ($invalid_referer) {
rewrite ^/ http://www.askwan.com/error.html;
}
}
但referer的伪造都很easy,所以这种方式的防盗链层次较浅
在nginx 的wiki站了解到一个第三方模块ngx_http_accesskey_module,通过自己测试,能有效的防盗链,特别是对于文件下载站的防盗链非常有效。
有关这个模块的一些文档在这里去看:http://wiki.codemongers.com/NginxHttpAccessKeyModule
举例一个
引用
location /download {
accesskey on;
accesskey_hashmethod md5;
accesskey_arg “key”;
accesskey_signature “mypass$remote_addr”;
}
根据每个客户端的IP,加上“信号处理”中的噪声“mypass”,然后用MD5加密 产生一个32位MD5值,
只有配对的才可以下载 无配对的统一返回“403 Forbidden”
定期修改一下mypass或者key,下载地址就变了,而下载目录都不变动 还不错的说
再说一下
nginx的线程限制和带宽限制
这里有nginx的标准模块ngx_http_limit_zone_module
这个模块可以针对条件,进行会话的并发连接数控制。
举例:
引用
server {
location /download/ {
limit_conn one 2;
limit_rate 32k;
}
只允许一客户端2个线程,每线程最大下载速度32k bytes
先说防盗链
防盗链很多都是做rewrite,判断referer是否有效,对图片类比较有效,对web服务器来说,apache有rewrite模块支持
nginx则有ngx_http_referer_module模块支持,配置简单,nginx举例
引用
location ~* \.(gif|jpg|png)$ {
valid_referers none blocked www.askwan.com baidu.com;
if ($invalid_referer) {
rewrite ^/ http://www.askwan.com/error.html;
}
}
但referer的伪造都很easy,所以这种方式的防盗链层次较浅
在nginx 的wiki站了解到一个第三方模块ngx_http_accesskey_module,通过自己测试,能有效的防盗链,特别是对于文件下载站的防盗链非常有效。
有关这个模块的一些文档在这里去看:http://wiki.codemongers.com/NginxHttpAccessKeyModule
举例一个
引用
location /download {
accesskey on;
accesskey_hashmethod md5;
accesskey_arg “key”;
accesskey_signature “mypass$remote_addr”;
}
根据每个客户端的IP,加上“信号处理”中的噪声“mypass”,然后用MD5加密 产生一个32位MD5值,
只有配对的才可以下载 无配对的统一返回“403 Forbidden”
定期修改一下mypass或者key,下载地址就变了,而下载目录都不变动 还不错的说
再说一下
nginx的线程限制和带宽限制
这里有nginx的标准模块ngx_http_limit_zone_module
这个模块可以针对条件,进行会话的并发连接数控制。
举例:
引用
server {
location /download/ {
limit_conn one 2;
limit_rate 32k;
}
只允许一客户端2个线程,每线程最大下载速度32k bytes
评论: 0 | 引用: 0 | 查看次数: 5322
发表评论
上一篇
下一篇

文章来自:
Tags: 
