[如何在NGINX上阻止GET服务特定目录? (通过引荐或用户代理)

问题描述 投票:0回答:1

我运行的服务器当前正在被垃圾邮件...很难...

IP每隔几个请求都会更改。现在,对于在/ contact /中发布的任何内容,服务器都返回403s,但是垃圾脚本/机器人仍​​在打击服务器,占用了资源和带宽...

我的NGINX日志每分钟显示50次:

123.456.789.012 - - [Month/Day/2020:13:37:05 -0500] "GET /contact/ HTTP/1.1" 200 5057 "-" "-"
123.456.789.012 - - [Month/Day/2020:13:37:04 -0500] "POST /contact/ HTTP/1.1" 403 580 "https://example.com/contact/" "User Agent String"

1。)如何在没有用户代理的情况下阻止GET? (任何没有引荐或用户代理"-" "-"的内容,我认为这对于垃圾邮件制造者正在使用的任何脚本/机器人来说都是非常独特的。2.)我是否正确认为通过阻止GET可以摆脱POST?3.)还有其他方法来处理大量请求吗?还是我必须等到攻击者感到无聊并关闭脚本/机器人后才开始?

nginx https spam-prevention nginx-log
1个回答
0
投票

Nginx内置了一些不错的速率限制,您可以根据Nginx中可用的任何变量进行配置,因此可以将其应用于单个IP地址,一系列IP,任何请求标头或任何其他内容。

您只能在某些位置应用限制,选择如何处理超过限制的请求,等等

查看指南here以获取一些示例。

© www.soinside.com 2019 - 2024. All rights reserved.