根据主机名阻止请求

有没有人在他们的Nginx设置中使用这个模块?

如果是的话,我想知道它的performance。 多less会影响响应时间等

https://github.com/flant/nginx-http-rdns

在处理请求之前,模块基本上会进行反向dns查找以获取主机名。

请让我知道,如果你需要任何其他信息。

编辑:@Kromey,@MichaelHampton,谢谢你的回复。 这是问题的原因:

场景:

我有一个网站,其中包含几个表单。 无论何时填写表格,我都会收到一封包含表格详细信息的邮件。

问题:

过去几天,有人通过机器人提交表格。 我每天收到几千封邮件。 所有的邮件都经过这个主机:

205.47.89.110.broad.pt.fj.dynamic.163data.com.cn。

在开始的IP不断变化,但是,之后的主机名是一样的(我做了主机名ips上的nslookup)。

正如你所猜测的那样,我对此并不高兴。

我看过的解决scheme:

  1. validation码 – 不想执行此操作,因为它基本上是为用户额外的工作
  2. 隐藏字段 – 包含一个普通用户看不到的隐藏字段。 由于bot通常填写表单中的所有字段,所以我可以检查这个字段是否填充,如果字段包含任何值,则拒绝详细信息。请参阅下一个要点,我不想实现这一点。
  3. 测量用户开始填写表格的时间点和用户提交表格的时间点之间的时间。 由于机器人真的很快这样做,拒绝请求,如果测量时间低于一定的阈值 – 我想在用户访问表单之前拒绝请求。 也就是说,在Nginx层本身。 基本上,我试图最小化服务器上​​的带宽和资源消耗。

所以,我所倾向的解决scheme是基于主机名来阻塞。 随意说服我,否则。 我很乐意提供build议。

谢谢