通常在服务器级别阻止DDoS(分布式拒绝服务攻击),对吗?
有没有办法在PHP级别上阻止它,或者至少减少它?
如果没有,阻止DDoS攻击的最快,最常见的方法是什么?
DDOS是一系列攻击,它们淹没了数据中心的关键系统,其中包括:
在开始构建DDOS防御之前,请考虑一下最坏情况下的风险价值是什么。对于小型社区的非关键,免费使用的服务,总的风险价值可能是花生。对于已建立的数十亿美元业务的付费,面向公众的,关键任务系统,其价值可能就是公司的价值。在后一种情况下,您不应该使用StackExchange
:)无论如何,要防御DDOS,您需要一种深度防御方法:
使用最新的安全补丁更新 所有系统和软件包-我的意思是所有它们:
拥有良好的 网络监控工具 -这可以帮助您了解:
攻击可能只是大量使用合法的网站服务(例如,击中运行查询的“合法” URI或插入/更新/删除数据)-来自成千上万个不同IP地址的成千上万个请求会将网站带到其膝盖 另外,某些服务可能运行起来非常昂贵,以至于只有很少的请求会导致DOS-想想一个非常昂贵的报告。因此,您需要对正在发生的事情进行良好的 应用程序级别监视 :
调用了哪些服务以及发送了哪些参数/数据(即,登录应用程序)
您的应用程序中的合理约束和限制 。例如,您可能会:
使用负载平衡器中的QoS功能,将所有匿名会话发送到群集中的单独应用程序服务器,而已登录用户则使用另一组。这样可以防止应用程序级匿名DDOS吸引有价值的客户
最后但并非最不重要的一点是,编写 DOS响应计划 文档,并由所有相关方进行内部审查:业务,管理,软件开发团队,IT团队和安全专家。编写文档的过程将使您和您的团队仔细考虑问题,并帮助您准备好在一天假的凌晨3点发生最坏的情况。该文件应涵盖(除其他事项外):
有什么风险以及业务成本
因此,撇开序言,这里有一些具体答案:
DDOS通常在服务器级别被阻止,对吗?
并非如此-大多数最严重的DDOS攻击都是低级(在IP数据包级别),并由为处理DDOS攻击而开发的路由规则,防火墙和安全设备来处理。
有没有办法在PHP级别上阻止它,或者至少减少它?
一些DDOS攻击针对应用程序本身,发送有效的URI和HTTP请求。当请求率上升时,您的服务器开始出现问题,并且SLA中断。在这种情况下,您可以在PHP级别上执行以下操作:
应用程序级别监视:确保每个服务/页面都以可以查看正在发生的方式记录请求(以便您可以采取措施减轻攻击)。一些想法:
具有一种日志格式,您可以轻松地将其加载到日志工具(或Excel或类似工具)中,并使用命令行工具(grep,sed,awk)进行解析。请记住,DDOS将生成数百万行的日志。您可能需要对日志进行切片(尤其是关于URI,时间,IP和用户),以弄清正在发生的事情,并需要生成如下数据:
正在访问哪些URI
记录每个请求的IP地址。请勿反向DNS-具有讽刺意味的是,这样做的成本使攻击者更容易使用DDOS
记录整个URI和HTTP方法,例如“ GET http://example.com/path/to/service?arg1=ddos ”
用于匿名访问的验证码:对所有匿名请求实施验证码,以验证用户是个人,而不是DDOS僵尸程序。
阻止DDOS攻击最快,最常见的方法是什么?
最快的可能是屈服于勒索,尽管这可能是不希望的。
否则,您要做的第一件事就是联系您的托管和/或CDN提供商并与他们合作(如果他们还没有联系您,则已经在问这到底是怎么回事…)。发生DDOS时,可能会附带影响托管服务提供商的其他客户,并且提供商可能会承受相当大的压力,仅出于保护他们的资源的目的而关闭您的站点。准备与提供者共享您的日志(任何和所有信息);这些日志及其网络监视器可以共同提供足够的信息来阻止/缓解攻击。
如果您期望使用DDOS,则最好让您的主机提供商在其提供的保护级别上合格。他们应该具有DDOS经验和减轻它的工具-
了解他们的工具,过程和升级程序。还询问托管服务提供商 从其 上游提供商那里 获得
了哪些支持。这些服务可能意味着更多的前期或每月费用,但是将其视为保险单。
在受到攻击时,您将需要获取日志并进行挖掘-尝试找出攻击的模式。您应该考虑关闭匿名访问并在受到攻击的情况下限制服务(即降低应用程序对服务的速率限制)。
如果幸运的话,您有一个固定的小型客户群,则可以确定有效的客户IP地址。如果是这种情况,您可能会在短时间内切换到白名单方法。确保所有客户都知道这种情况在继续,以便他们在需要从新IP访问时可以打电话:)
问题内容: 我以前偶尔会抓取电子商务网页以获取产品价格信息。我有一段时间没有使用过使用Scrapy构建的刮板,而昨天却试图使用它-我遇到了机器人防护问题。 它使用的是CloudFlare的DDOS保护,基本上是使用JavaScript评估来过滤掉禁用了JS的浏览器(因此是抓取器)。评估功能后,将生成带有计算数字的响应。作为回报,服务会发回两个身份验证Cookie,这些身份验证Cookie附加在每个
最近,我一直在使用AWS API gateway,在那里我创建了一个API,并用API key和Cognito(OAuth)保护它。 有一天,我发现我的API被访问了10K次,但失败了,因为攻击者没有访问它的权限。 任何帮助都很感激...
Anti DDOS | BASH SCRIPT Programming Languages : BASH System : Linux Explanation : Anti-DDOS project is an open source software project developed to protect against DOS and DDoS attacks. The project wa
DoS Deflate 是一个轻量级的 bash shell 脚本,旨在协助阻止拒绝服务攻击的过程。它使用以下命令创建连接到服务器的 IP 地址列表及其总连接数。在软件层面,它是最简单、最容易的安装解决方案之一。 netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n 具有超过预先配置连接数量的 IP 地址会
启用触摸保护 把 Yubikey-manager 安装在一个绝对路径:【译者注:homebrew 是 macOS 平台的包管理软件】 ❯ brew install libu2f-host libusb swig ykpers ❯ git clone git@github.com:Yubico/Yubikey-manager.git ❯ git submodule update --init --r