Google App Engine - Dos配置如何运作?

时间:2017-09-19 01:49:42

标签: google-app-engine

我正在阅读有关针对DOS攻击的配置Java应用程序的dos.xml。 我不明白这个配置是如何工作的。 我知道DOS和DDOS,但在这种情况下它让我很困惑。

  • 当我配置IP或子网黑名时,是否会阻止所有请求?我认为只有当GAE收到太多相同IP的请求时才应该阻止

  • 在我的登录页面中防止过多请求(恶意请求)的最佳方法是什么?我不能拥有IP白名单,因为该应用程序适用于世界上任何地方。

  • 两个文件中的黑色IP与App Engine防火墙中的块IP有什么区别?

谢谢!

1 个答案:

答案 0 :(得分:1)

  
      
  1. 当我配置IP或子网黑名时,是否会阻止所有请求?我认为GAE应该只在收到相同IP的请求太多时才会阻止
  2.   

是的,这就是它的工作方式:只有当AppEngine认为他们滥用你的资源时(无论这意味着什么),IP地址才会被阻止。 See more here

  

不要将此服务用于安全性,因为来自黑名单用户的某些请求仍然可以通过您的应用程序。此服务专为定量滥用预防而设计,例如仅防止DoS攻击。

不幸的是,没有明确的算法描述它是如何处理它的,因此最好不要依赖它。

  
      
  1. 在我的登录页面中防止过多请求(恶意请求)的最佳方法是什么?我不能拥有IP白名单,因为该应用程序适用于世界上任何地方。
  2.   

您必须自己实施某种速率限制(通过IP地址或被访问的帐户)。通过在每次身份验证尝试中递增一些memcache密钥的值并将其设置为在N分钟内过期(或任何最适合您的方法),应该不是很困难。

  
      
  1. 在two.xml中的黑色IP和App Engine防火墙中的块IP之间有什么区别?
  2.   

想到dos.yaml和AppEngine防火墙之间的一些区别:

  • AppEngine防火墙可以完全阻止来自指定IP地址的访问,而dos.yaml中列出的地址可能仍会覆盖您的应用
  • AppEngine防火墙允许最多1,000条规则,而dos.yaml最多只能处理100条
  • 使用AppEngine防火墙,您可以设置白名单(即只允许您的应用访问您公司的网络而不是其他人)

另外,根据AppEngine文档正在使用的措辞来判断 - 似乎dos.yaml不是推荐的方法,所以你可能需要自己实现一些东西。