2017-07-21 70 views
0

我有一个生产服务,用于由amazon elastic-beanstalk托管的应用程序使用的瓶子api。每隔几个小时,一名黑客扫描地址寻找易受攻击的路线,如/phpmyadmin。 api只使用我们自己的代码,所以他们不太可能获得访问权限。但问题在于它是在微型实例上托管的,因为我们通常每小时只能获得1000个以上的请求,但是这种扫描会在几分钟内发送数百个请求,导致我们的用户短时间拒绝服务。黑客扫描域导致延迟

所以我在寻找解决方案,到目前为止,我特地用:

  • 设置弹性青苗产卵新实例缩放网络活动,目前只产卵CPU使用率。会产生成本,不好。
  • 阻止IPS,但IP地址总是改变。
  • 在烧瓶处理程序中缓存404请求的ip和块之后的5次尝试。
  • 优化烧瓶错误处理程序,做得太像将错误日志发送到loggly,将它们保存到数据库并发送电子邮件,但问题依然存在。

这些解决方案对我来说似乎都不是最佳的,任何人都有处理这样的问题的经验吗?

+0

与亚马逊交谈?是像'/ phpmyadmin'这样的脆弱路线吗?是的,与编程相比,这更像是一个“管理”问题。 –

回答

0

我很抱歉地说你不能对此做太多的事情。我自己并没有使用弹性beanstalk,但过去我使用fail2ban来阻止IP的垃圾邮件服务器。

即使你设置了一些禁止后,几个404的瓶仍然会处理请求,并具有相同的效果。快速谷歌显示AWS Shield作为AWS的DDOS保护。也许这会有所帮助?

总而言之,您无法停止请求。如果你想避免停机时间,你将需要更多的硬件来处理请求或尝试从AWS,Cloudflare等DDOS保护。

+1

即使禁止请求,您的权利仍然会出现滞后。 Shields默认启用,但它不是一个真正的ddos,所以它不起作用,只是太多的请求从同一个源到资源有限的服务。想想我可以通过WAF和一些URI规则来解决我的问题。只需将eb负载均衡器转换为应用程序负载均衡器即可。不管怎么说,还是要谢谢你。 – T4rk1n