对nginx服务器进行日志分析并且封IP

简单的日志分析排除命令,不过建议使用goacess日志分析视图化观察比较好,面对一些爬虫攻击,可以在nginx.conf配置文件里调用limit requst模块来限制连接数,如限制每秒钟的请求数:rate=10r/s,这是要依据业务情况来设置的。

  1. 1  分析日志封IP

cd /nginx/logs

[[email protected]]# awk ‘{print $1}‘ blog-access_log |sort|uniq -c|sort -rn -k1

280 "192.168.183.1"

74 192.168.183.130

67 192.168.183.1

1 192.168.183.180

  1. 2  把出现280次数最多的192.168.183.1这个IP封掉

iptables-t filter -I INPUT -p tcp -s 192.168.183.1 --dport 80 -j DROP

[[email protected]]# iptables -I INPUT -p tcp -s 192.168.183.1 --dport 80 -j DROP

[[email protected]]# iptables -L -n

ChainINPUT (policy ACCEPT)

target     prot opt source               destination

DROP       tcp --  192.168.183.1        0.0.0.0/0           tcp dpt:80

ChainFORWARD (policy ACCEPT)

target     prot opt source               destination

ChainOUTPUT (policy ACCEPT)

target     prot opt source               destination

时间: 2024-11-11 11:48:07

对nginx服务器进行日志分析并且封IP的相关文章

nginx和apache日志记录用户真实ip:X-Real-IP

如果结构里有个反向代理,那后端机器的日志记录的就会是代理的ip,真实的ip看不到了,后端代码可以通过在header里设置真实ip来解决,nginx加入下面一段即可: proxy_set_header X-Real-IP $remote_addr; 后端通过X-REAL-IP或者HTTP_X_REAL_IP变量获取. 日志记录的话,nginx可以定义$http_x_real_ip变量,例如:    log_format main '$http_x_real_ip - $remote_user ' 

Linux服务器access_log日志分析及配置详解(二)

默认nginx / Linux日志在哪个文件夹? 一般在 xxx.xxx.xxxx.com/home/admin 路径下面的error.log文件和access.log文件error_log logs/error.log; #错误日志access_log logs/access.log; #访问日志 1. access_log 访问日志 access_log为访问日志,记录所有对apache服务器进行请求的访问,它的位置和内容由CustomLog指令控制,LogFormat指令可以用来简化该日志

Linux服务器access_log日志分析及配置详解(一)

nginx的log日志分为access log 和 error log 其中access log 记录了哪些用户,哪些页面以及用户浏览器.ip和其他的访问信息 error log 则是记录服务器错误日志 错误日志的形式如下: 1 2 201.158.69.116 - - [03/Jan/2013:21:17:20 -0600] fwf[-] tip[-] 127.0.0.1:9000 0.007 0.007 MX pythontab.com GET /html/test.html HTTP/1.

Mosquitto服务器的日志分析

启动Mosquitto后,我们可以看到Mosquitto的启动日志: 1515307521: mosquitto version 1.4.12 (build date 2017-06-01 13:03:46+0000) starting 1515307521: Config loaded from /mosquitto/conf/mosquitto.conf. 1515307521: Opening ipv4 listen socket on port 1883. 1515307521: Ope

ELK + Filebeat +Nginx 集中式日志分析平台(一)

一.环境准备 本次我们采用 yum 官方仓库进行安装,之前采用 rpm 包安装的文档大家请看 http://blog.51cto.com/wzlinux/2175836 . 1.软件版本 Filebeat 6.5.1Logstash 6.5.1Elasticsearch 6.5.1Kibana 6.5.1JDK 1.8.0_181 2.服务器准备 IP 系统 角色 172.18.8.200 CentOS 7.5 Minimal Elasticsearch + Kibana 172.18.8.20

nginx服务器的日志太多:定期执行脚本删除

#!/bin/bash find /usr/local/nginx/logs/ -mtime +15 -type f -name *.log | xargs rm -f 脚本名字autodellog.sh 设置定时器(每天凌晨一点执行) [[email protected] ~]# crontab -e 00 01 * * * /bin/bash /root/shell/autodellogs.sh [[email protected] ~]# service crond restart

Nginx服务器学习之 Nginx的基本配置

本文使用 Linux centos系统 一.Nginx虚拟主机的配置 虚拟主机:通常情况下,为了使每个服务器可以供更多用户使用,可以将一个服务器分为很多虚拟的子服务器,每个子服务器都是互相独立的.这些服务器是根据虚拟化技术分出来的,这样,一台服务器就可以虚拟成很多台子服务器.我们把子服务器叫做虚拟主机.我们搭建好Nginx服务器之后,此时只有一台Nginx服务器,这时如果我们对这台服务器进行虚拟主机配置,就可以将一台Nginx服务器分割为多台独立的子服务器. Nginx中配置虚拟主机的步骤主要有

Nginx Access Log日志统计分析常用命令

Nginx Access Log日志统计分析常用命令 Nginx Access Log日志统计分析常用命令 IP相关统计 统计IP访问量 awk '{print $1}' access.log | sort -n | uniq | wc -l 查看某一时间段的IP访问量(4-5点) grep "07/Apr/2017:0[4-5]" access.log | awk '{print $1}' | sort | uniq -c| sort -nr | wc -l 查看访问最频繁的前100

转 Nginx Access Log日志统计分析常用命令

Nginx Access Log日志统计分析常用命令Nginx Access Log日志统计分析常用命令IP相关统计 统计IP访问量 awk '{print $1}' access.log | sort -n | uniq | wc -l 查看某一时间段的IP访问量(4-5点) grep "07/Apr/2017:0[4-5]" access.log | awk '{print $1}' | sort | uniq -c| sort -nr | wc -l 查看某个时间点的IP访问量(