技术解析

关于 apache 和 nginx 的 auth 疑问
0
2021-05-27 19:00:52
idczone
有一些服务器用的是apache或nginx
问题是,为了防止暴力破解,想有一个密码错误尝试多大带宽服务器次后不让其继续访问需要auth的页面(所对应的公网ip),但其他的普通网页依然允许访问的功能
我现在自己配置的apache和nginx可以无限重试,感觉太不放心了
auth? 你是指自带的 http auth 模块么
这俩自带的模块好像都没有这个特性
这里有解决方案: http://serverfault.com/questions/421046/how-to-limit-nginx-auth-basic-re-tries

单纯依靠nginx/apache实现不了吧。auth页面自己写逻辑啊,密码错误几次今天内这个ip封掉啊。redis&memcache就好

ngx lua 放到 access_by_lua 阶段,对请求中带 Authorization 头部的 IP 进行计数,在一定时间内超过阀值就触发 403。

现在我是直接Deny All
Allow IP
用fail2ban 把整个IP都给禁了 连普通页面也无法访问
太复杂了吧
能给个样例吗 谢谢

用fail2ban好像就以解决了

一点都不复杂。web server不承担验证逻辑判断的任务。像的方案也是把验证逻辑搬到了nginx里,“验证”这个逻辑和代码部分内容依然还是存在的。

补充一下,如果写到nginx里,那还要考虑到以后的扩展问题,做负载不好做啊 -_-#

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服