nginx防恶意ip访问控制

业务分析:考虑到存在恶意用户频繁访问系统,采用nginx限制ip的访问!

描述:用户请求浏览器,经过后台的nginx层,路由到gateway网关层,由网关对应到后端的微服务。其中nginx层可以统计用户请求的日志信息,例如用户的请求ip,地址,请求的url,参数,时间等。日志信息会存储到access.log,考虑到高并发场景,通过flilebeat的日志分析,将分析的日志数据通过kafka的生产者发送出去,由kafka的消费者消费日志消息,如果日志消息需要持久化,可以将日志消息存储到elasticsearch、redis、clickhouse中,此时不考虑关系型数据库mysql,因为性能不高,影响系统的使用,数据库崩溃,请求超时,日志消息数据通过flink进行流式处理,分组,统计,开窗,聚合等,统计出ip对应的数据在指定开窗的范围下请求的次数,把数据作为redis的key和value的形式存储到redis中。Key=ip,value=次数。有效期可以设置30分钟,然后通过Openresty+lua或xxl-job定时从redis中取数据,对于黑白名单的数据(每分钟大于1万次请求被认为是黑名单),筛选出来存放到blacklist.conf文件中,内容格式:deny 192.168.1.101;最后在通过nginx重新加载配置就会生效!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雪豹_黑狐

谢谢大家的支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值