恶意机器人唤醒了Heroku免费应用程序并用尽了所有dyno小时

时间:2019-06-26 13:24:36

标签: ruby-on-rails heroku bots

我在heroku上托管了一个应用程序,该应用程序在过去5年中在免费的dyno小时上表现良好。只有一个用户,而且整天没有多大用处。

截至最近几个月,我们似乎已成为创建伪造帐户的机器人的目标。我们现在有很多这样的机器人,以至于他们频繁地唤醒我们的应用程序,以至于它消耗了我们的免费动态时间。

有人知道如何摆脱他们吗?我曾尝试使用invisible_captcha,但这似乎无济于事。

2 个答案:

答案 0 :(得分:2)

您应该考虑使用RackAttack https://github.com/kickstarter/rack-attack

这是一个中间件,允许您阻止/允许请求。 例如,如果他们为每个新注册使用相同的电子邮件域,则每小时只能接受该域的十个注册(因为这不是一个大网站),直到他们平静下来。

或者,如果它们来自同一地方,则可以通过其IP限制该国家/地区的请求

编辑: 如果您根据IP地址检查国家/地区,则测功机将被唤醒(因为您将致电外部服务来获取信息),因此在这种情况下,这不是一个好的解决方案

答案 1 :(得分:0)

简单的解决方案: 如果只有一个用户,请考虑将应用程序托管在一个不会被抓取的秘密子域上。而且每次遇到这样的问题时,您都可以更改子域并通知您的用户。

更复杂的解决方案: 使用类似cloudflare的解决方案,并防止不必要的流量进入应用程序。