当前位置:Gxlcms > PHP教程 > 如何防止单个IP下载刷流量?

如何防止单个IP下载刷流量?

时间:2021-07-01 10:21:17 帮助过:14人阅读

各位请教个问题
我的服务器 一天被人下载了300G的流量
看了IP是单个IP下载的 但是第二天又是另一个IP下载的 过一天换一个IP

没几天服务器就欠费停机了
这个问题怎么防止啊

用PHP 或者JAVA 要怎么判断处理一下呢

回复内容:

各位请教个问题
我的服务器 一天被人下载了300G的流量
看了IP是单个IP下载的 但是第二天又是另一个IP下载的 过一天换一个IP

没几天服务器就欠费停机了
这个问题怎么防止啊

用PHP 或者JAVA 要怎么判断处理一下呢

单个下载链接被攻击还是不固定的?

如果是不停更换下载地址造成攻击,可以考虑使用Liunx环境下的防火墙iptables或第三方流量控制软件

以下是推荐的几个iptables配置博文,可以参考下。

iptables自动屏蔽恶意高流量ip
iptables 设置肯限制流量
如何用IPtables限制网络流量(4)

把ip放到一个map里面,每天0点清一次这个map,下载的时候你可以判断有没有下载过,当然这个次数你也可以控制一下,下载了多少次了,就不能下载了

这个问题我给研究了一下,看见nginx有这个功能模块,https://www.nginx.com/resourc...,英文我就不翻译了。
+++分割线1,时间:2016-10-9 10:30:34+++
感觉问题还是回答得不够完美,http请求的流量应该分为request和response两种,通过nginx的限制访问功能只能解决指定ip来的request不处理,response不返回数据的功能,大概能减少90%左右的流量,那么剩下的10%左右的request的流量越早处理越好,看到别人回答使用iptables进行限制,这个比nginx处理早一步,是一种解决方案,但还不够完美,还有没有更好的解决办法呢?刚刚说了,越早处理越好,可以叫服务器供应商在路由层面进行ip过滤限制,嗯,这个需要比较大的权限才能做到,还可能与你使用的服务器供应商的网络规划灵活性有关,那么有没有更牛逼的方式呢,当然有,每次给他重定向到一个国内大型互联网公司大文件(已经CDN加速)的下载地址,这个地址我就不好说了哈,现在就可以一行代码搞定header("Location: https://www.qunimabi.com/bigf... ")。
+++分割线2,时间:2016-10-9 10:46:05+++
上面说使用一个代码搞定,感觉还是不科学,最好使用nginx的 lua模块判定指定ip是否在blacklist中然后再add header重定向到大文件下载地址。

人气教程排行