业务分析:考虑到存在恶意用户频繁访问系统,采用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重新加载配置就会生效!

nginx防恶意ip访问控制相关推荐

  1. nginx限制恶意IP处理方法

    思考了几种方案,最终考虑使用ip黑名单的方式: 处理方法: 一.nginx黑名单方式: 1.过滤日志访问API接口的IP,统计每10分钟调用超过100次的IP,直接丢进nginx的访问黑名单 2.具体 ...

  2. nginx防恶意刷新

    今天公司恶意刷新网站导致系统速度缓慢,通过配置nginx来解决 nginx 配置 http配置 limit_conn_zone $binary_remote_addr zone=TotalConnLi ...

  3. nginx 防止恶意域名解析_配置nginx只允许域名访问,禁止ip访问【图文教程】

    平凡也就两个字: 懒和惰;成功也就两个字: 苦和勤;优秀也就两个字: 你和我.跟着我从0学习JAVA.spring全家桶和linux运维等知识,带你从懵懂少年走向人生巅峰,迎娶白富美!每一篇文章都是心 ...

  4. Nginx防止恶意解析-禁止通过IP访问网站

    https://www.jianshu.com/p/0921e033e355 参考链接 : Nginx防止恶意解析-禁止通过IP访问网站https://www.jianshu.com/p/0921e0 ...

  5. Apache防恶意解析—禁止直接通过IP访问网站

    很多人的服务器是可以直接通过IP访问网站的,这种情况尽量去避免.防止恶意解析主要是针对:(一)网站在国内且备案了的,如果恶意解析过来的网站是色情等不健康内容的,估计你要被请去和谐了!(二)如网站有投放 ...

  6. FreeSWITCH mod_cti模块 结合 fail2ban 实现封堵恶意IP(SIP安全,防攻击)

    原文链接 http://www.ddrj.com/callcenter/fail2ban.html 介绍 运行在公网的FreeSWITCH服务器,每天都会接收到很多恶意的呼叫请求和注册请求,尝试盗打电 ...

  7. nginx定时封ip防爬虫

    脚本代码参考:https://blog.51cto.com/tsoagta/1710421 我们公司网站爬虫爬取频次太高,查阅资料后简单写了一个定时获取ip,然后封禁ip 的脚本. 主要思路是:读取n ...

  8. nginx 屏蔽恶意请求

    https://www.xlongwei.com/detail/nginx-%E5%B1%8F%E8%94%BD%E6%81%B6%E6%84%8F%E8%AF%B7%E6%B1%82 nginx可以 ...

  9. nginx中限制IP同一时间段的访问次数

    nginx中限制IP同一时间段的访问次数 如何设置能限制某个IP某一时间段的访问次数是一个让人头疼的问题,特别面对恶意的ddos攻击的时候.其中CC攻击(Challenge Collapsar)是DD ...

最新文章

  1. TensorRT宏碁自建云(BYOC, BuildYourOwnCloud)上集成
  2. 保存数组_面试官:讲一讲你对据结构——数组、链表、栈、队列的理解
  3. 路由器NAT网络地址转换
  4. controller调用controller的方法_SpringCloud Alibaba微服务实战三 - 服务调用
  5. 湖南省计算机二级程序题库,湖南省计算机二级单选题题库(直接打印)
  6. Python编程语言学习:在根目录的py文件内调用某叶目录文件内的包/库或者函数(常用在GUI编程)之详细攻略
  7. java集群_Kafka多节点分布式集群搭建实现过程详解_java
  8. Android线程优先级设置方法技巧
  9. linux whois rpm,CentOS系统安装whois命令的方法
  10. 买卖股票的最佳时机IV
  11. Linux内核分析 - 网络[一]:收发数据包的调用
  12. 软件测试—软件测试基础知识—测试用例设计的方法之场景法、正交试验法和错误推断法
  13. Javascript模块化编程系列二: 模块化的标准化(CommonJS AMD)
  14. oracle 拉链表 计算和,Oracle拉链表和流水表如何按照时间匹配求新的计算项
  15. Datawhale编程学习之排序(3)
  16. 《初级会计电算化应用教程(金蝶KIS专业版)》——1.5 习题
  17. linux平台h5手游源码下载,十年经典大天使之剑H5手游源码手工端+内充+搭建教程...
  18. 按键精灵手机助手之数学函数
  19. 三本毕业,三年嵌入式软件的心路历程
  20. 相比于深度学习,传统的机器学习算法难道就此没落了吗,还有必要去学习吗?

热门文章

  1. python求解四阶微分方程_用Python求解二阶常微分方程组的RungeKutta四阶解
  2. 疫情下的生鲜配送,数字供应链发挥了重大作用
  3. Vue 链接生成二维码
  4. spring2.5.6升级到4.3.7常见问题
  5. Unity与服务器通信方式有哪些?
  6. 关于Verilog 写法
  7. Go语言圣经 - 第11章 测试 - 11.1 go test 11.2 测试函数
  8. 量子计算机有生之年,对话哈佛大学教授Lukin:量子计算将在我们有生之年普及!...
  9. ThingJS-X森可视平台框架源码 java+Netcore版本 旗舰版企业版
  10. 泛泰binx和ota升级包下载工具Android版[2013.6.7提供源代码]