云服务器免费试用

如何通过PHP进行简单的DDoS防御

服务器知识 0 626

告诉你如何通过路由器搭建自己的VPN呢?

如何通过PHP进行简单的DDoS防御

建设VPN,路由VPN

当一个人的网站第一次遇到ddos时候,其个人确实十分慌张,内心也会引起震动。“居安思危”是十分有必要的,我们需要积累一些相关防御DDoS的知识。

DDoS分布拒绝攻击,简略的来说DDoS主要针对DDoS网络层,IP-TCP-HTTP,DDoS应用层进行攻击。当请求流量远远大于服务器的处理能力,使服务器的负载超过服务器的配额资源因此站点就无法进行访问。

如果您的服务器遭遇了DDoS,那我在这里也要为您庆贺一番,这证明您的业务达到了一定的高度。说话说的好:“不遭人妒是庸才。”下面笔者为大家介绍两种类型的DDoS,并且可以通过PHP和JavaScript就能有效处理。

机器人进行请求访问

其实我们发现很多站点都加了验证码,其任务是尽可能过滤掉对站点的所有不必要的请求。因为机器人比较愚蠢,它们并不会识别验证码!同时还能保证正常用户能够访问该站点并且不会对DDoS保护机制感到不舒服。

机器人有集中类型,第一种是搜索引擎的蜘蛛,如果我们建站搜索引擎的蜘蛛来爬行肯定是好事。另一种则是有害的机器人,它们爬行您的网站可能是为了弄清您的网站目录,以此来寻找DDoS攻击的机会。在.htaccess中过滤掉无用的机器人,有用的机器人不予拦截。

不允许有害机器人到后端,我们可以减少服务器上的负载。

有害机器人可以分为两种类型:智能机器人(理解cookie和javascript)和非智能机器人。有一种观点认为没有DOS机器人可以理解javascript,但这是针对严重的网络DDoS攻击。在我们的条件下,即使是过度活跃的匿名蜘蛛也会正式成为ddos-bot,必须予以抵消。

我们如何写PHP后端代码给与保护呢?

我们不会给出保护代码,它很简单。在PHP上几十行;比这篇文章更短更简单。我们来描述逻辑,我们将向客户端写一个cookie(检查cookie的方法甚至用于防御强大的DDoS攻击)。使用任何名称和任何内容,您可以使用站点已设置的站点。

为简单起见,我们假设该站点有一个入口点,我们在那里嵌入了ddos-shield。立即检查我们的cookie的查询:如果是 – 我们当然跳到该网站。如果没有,则将对ip和用户代理作为单独的文件写入单独的目录/疑似。该文件名为ip-ua.txt,其中user-agent为dechex(crc32($ _ SERVER [“HTTP_USER_AGENT”]))只是用户代理的简短哈希。

在文件本身我们通过分离查询时间,查询页面,用户代理来编写,你仍然可以使用Sypex Geo或注册maxmind.com,并且可以免费访问他们的geoip数据库五天 – 通过ip他们发布一个地理位置,它也在这个文件中。

如果已存在具有相同名称ip-ua.txt的文件,则将新请求的所有此信息添加到文件末尾。

另一点是我们网站的AJAX请求。如果是,那么它们也必须无条件地跳过,由它们的标签定义。机器人也会碰到它们的可能性很小。

现在是缺失的步骤 – 在我们编写或附加ip-ua.txt之前,我们检查来自此ip的请求已经来了,而且,我们不注意User-Agent:

count(glob(__ DIR __。“/ suspected/$ip-*.txt”))> 0

关键是我们给每个ip一次获取cookie的机会。如果第二次没有它,那么这种不平等就会起作用,我们将客户端重定向到一个单独的页面check-human.php,在那里他将在Google Recyclers的帮助下使用展示和车辆进行图灵测试。如果它没有通过 – 再见(再次回顾),如果通过 – 在另一个特殊目录/白名单中创建文件ip-ua.txt。在开始时,连同验证cookie,我们还检查我们/白名单中ip-ua对的命中 – 当然,这些也是我们跳过的。有了这个策略,我们就可以在网站上为那些在浏览器中禁用了cookie并启用了javascript的人提供机会,反之亦然 – javascript被禁用,但cookie正在运行。

原则上,就是这样。大量机器人被过滤,现在很聪明。对于智能和方法已经是智能的 – 打开目录/疑似,按大小排序文件。在上面,最大的是数十和数百千字节的持续尝试通过我们。我们打开并查看,我们确信这实际上是一个机器人。查询时间,查询周期,查询页面,用户代理更改,通常很容易看到,一切都在你面前眼睛。原则上,您可以选择所有文件,例如10次不成功的尝试,并通过.htaccess将它们发送到禁令。但它并不好,最好将它们发送到验证码,毕竟,有几个人通过一个ip进入互联网。

猜您可能会感兴趣

云计算环境安全至关重要,如何防御DDoS攻击是关键 -08-07

在威胁形势继续发展的同时,安全技术也在发展。随着云计算时代的来临,云安全成为防御DDOS攻击的一种最佳措施。

查看更多→

DDOS攻击与防御思路浅谈 -11-19

网络空间在创造机遇的同时,也带来了威胁,其中 DDoS 就是最具破坏力的攻击。

查看更多→

DDoS攻击不用怕,云高防IP与高防云服务器帮您解决一切 -08-02

若用户以在云或其他平台部署完成业务,暂无完成迁移,而需要DDoS服务的情况下,建议用户选择DDOS高防IP产品,DDOS高防IP可应用与任何网站和应用之上

查看更多→

如何免费领取海外云服务器 -05-06

注册账号后,可免费试用海外高性能云服务器2核4G 1M 40GB 1个月,可用来搭建cloud VPN, GitHub加速,云开发等,且注册分享送美金哦

查看更多→

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942@qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何通过PHP进行简单的DDoS防御
本文地址: https://solustack.com/62812.html

相关推荐:

网友留言:

我要评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。