Nginx+iptables屏蔽访问Web页面过于频繁的IP(防DDOS,恶意访问,采集器)
2023-06-13 09:14:25 时间
脚本如下:
复制代码代码如下:
#!/bin/sh
nginx_home=/Data/app_1/nginx
log_path=/Data/logs
/usr/bin/tail-n50000$log_path/access.log\
|awk‘$8~/aspx/{print$2,$13}"\
|grep-i-v-E“google|yahoo|baidu|msnbot|FeedSky|sogou”\
|awk‘{print$1}"|sort|uniq-c|sort-rn\
|awk‘{if($1>150)print“deny“$2″;”}">$nginx_home/conf/vhosts/blockip.conf
/bin/kill-HUP`cat$nginx_home/nginx.pid`
也可以通过分析nginx日志过滤出频繁访问IP,直接用iptables屏蔽这个IP,就用不着重启nginx了,并且屏蔽效果更好。
单个IP的命令是
iptables-IINPUT-s124.115.0.199-jDROP
封IP段的命令是
iptables-IINPUT-s124.115.0.0/16-jDROP
封整个段的命令是
iptables-IINPUT-s194.42.0.0/8-jDROP
封几个段的命令是
iptables-IINPUT-s61.37.80.0/24-jDROP
iptables-IINPUT-s61.37.81.0/24-jDROP
刚才不小心搞的自己都连不上了-_-!!!
iptables-IINPUT-ptcp?dport80-s124.115.0.0/24-jDROP
以后用这种只封80端口就行了,不会出问题!
iptables-IINPUT-ptcp?dport80-s124.115.0.0/24-jDROP
iptables-IINPUT-s61.37.81.0/24-jDROP
解封
iptables-F
清空
iptables-DINPUT数字
相关文章
- Java Web项目 慧心人力资源管理系统[通俗易懂]
- 移动web开发介绍
- Web渗透环境
- 一篇文章带你了解轻量级Web服务器——Nginx简单入门
- 1.零基础如何学习Web安全渗透测试?[通俗易懂]
- 毕业设计So Easy:JSP+layui+MySQL实现Web端图书管理系统
- Nginx 配置,禁止通过ip地址直接访问Web 服务
- Web标准与前端开发 - 笔记
- 微信企业号开发:微信用户信息和web网页的session的关系详解手机开发
- 服务Linux下访问Web服务的指南(linux访问web)
- 检查Linux下Nginx服务是否已启动(linux查看nginx是否启动)
- Linux下如何安全删除Nginx(linux删除nginx)
- 配置Linux下删除Nginx配置的步骤(linux删除nginx)
- XAMPP搭配Redis构建可靠的Web应用(xamp redis)
- Web无法连接Redis服务器(web连不上redis)
- 的优势利用Redis构建Web应用,提升性能与效率(web应用中redis)
- Web开发入门快速学习Redis(web使用redis教程)
- 使用webpy和redis构建高性能Web应用(web.py redis)
- 保障WEB服务器安全的三方面的利器
- web性能优化之javascript性能调优
- Nginx+Lua+Redis构建高并发Web应用