Linux Web服务器网站故障分析,具体内容如下

系统连接状态篇:

1.查看TCP连接状态

?

2.查找请求数请20个IP(常用于查找攻来源):

?

3.用tcpdump嗅探80端口的访问看看谁最高

tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"." '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr |head -20

4.查找较多time_wait连接

netstat -n|grep TIME_WAIT|awk '{print $5}'|sort|uniq -c|sort -rn|head -n20

5.找查较多的SYN连接

netstat -an | grep SYN | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr | more

6.根据端口列进程

netstat -ntlp | grep 80 | awk '{print $7}' | cut -d/ -f1

网站日志分析篇1(Apache):

1.获得访问前10位的ip地址

?

2.访问次数最多的文件或页面,取前20

cat access.log|awk '{print $11}'|sort|uniq -c|sort -nr|head -20

3.列出传输最大的几个exe文件(分析下载站的时候常用)

cat access.log |awk '($7~/.exe/){print $10 " " $1 " " $4 " " $7}'|sort -nr|head -20

4.列出输出大于200000byte(约200kb)的exe文件以及对应文件发生次数

cat access.log |awk '($10 > 200000 && $7~/.exe/){print $7}'|sort -n|uniq -c|sort -nr|head -100

5.如果日志最后一列记录的是页面文件传输时间,则有列出到客户端最耗时的页面

cat access.log |awk '($7~/.php/){print $NF " " $1 " " $4 " " $7}'|sort -nr|head -100

6.列出最最耗时的页面(超过60秒的)的以及对应页面发生次数

cat access.log |awk '($NF > 60 && $7~/.php/){print $7}'|sort -n|uniq -c|sort -nr|head -100

7.列出传输时间超过 30 秒的文件

cat access.log |awk '($NF > 30){print $7}'|sort -n|uniq -c|sort -nr|head -20

8.统计网站流量(G)

cat access.log |awk '{sum+=$10} END {print sum/1024/1024/1024}'

9.统计404的连接

awk '($9 ~/404/)' access.log | awk '{print $9,$7}' | sort

10. 统计http status

cat access.log |awk '{counts[$(9)]+=1}; END {for(code in counts) print code, counts[code]}'
cat access.log |awk '{print $9}'|sort|uniq -c|sort -rn

11.蜘蛛分析,查看是哪些蜘蛛在抓取内容。

/usr/sbin/tcpdump -i eth0 -l -s 0 -w - dst port 80 | strings | grep -i user-agent | grep -i -E 'bot|crawler|slurp|spider'

网站日分析2(Squid篇)按域统计流量

zcat squid_access.log.tar.gz| awk '{print $10,$7}' |awk 'BEGIN{FS="[ /]"}{trfc[$4]+=$1}END{for(domain in trfc){printf "%st%dn",domain,trfc[domain]}}'

数据库

1.查看数据库执行的sql

/usr/sbin/tcpdump -i eth0 -s 0 -l -w - dst port 3306 | strings | egrep -i 'SELECT|UPDATE|DELETE|INSERT|SET|COMMIT|ROLLBACK|CREATE|DROP|ALTER|CALL'

系统Debug分析篇

1.调试命令

strace -p pid

2.跟踪指定进程的PID

gdb -p pid

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。

Linux宝塔面板忘记用户名和密码的解决方法
Linux宝塔面板出现CPU负载过高怎么办?

相关推荐

  • linux中eq是什么意思

    linux中eq是什么意思

    在linux中,eq是“相等”的意思;Linux shell编程会用到判断字符串是否相等,而“eq”就可以用于整数比较进行条件判断,测试两个整数是否相等,相等则...

    2022-07-14
    118
  • linux中short有几个字节

    linux中short有几个字节

    在linux中,32位平台和64位平台中的short都占2个字节;linux中只有long长整型、void(c语言中,void为“不确定类型”)在32位中是4个...

    2022-07-14
    93
  • linux中tcp连接不释放怎么办

    linux中tcp连接不释放怎么办

    解决方法:1、利用修改keepalive配置为合适的值可以快速释放端口连接,利用echo设置“设置tcp_keepalive_time”即可,语法为“echo ...

    2022-07-14
    96
  • linux怎么查看哪个文件最大

    linux怎么查看哪个文件最大

    方法:1、用ls命令,该命令可输出文件的大小信息,语法“ls -lSh 指定文件夹 | head -1”;2、用find命令,该命令可查找目录的子目录,语法“f...

    2022-07-14
    106
  • 安卓是linux系统吗

    安卓是linux系统吗

    安卓是基于linux内核的自由及开发源代码的操作系统,但是并不能将安卓直接理解为linux系统;Linux发行版中的软件通常只收录经过开源社区审核过的开源软件,...

    2022-07-14
    98

栏目热门

TAGS标签

笔记本cpu性能排行 苹果全新Mac Pro或搭载定制'Hidra'芯片 三星W25与华为折叠手机mate x6如何选择 dns的服务器地址是多少? Xiaomi 14 Ultra和Xiaomi 13 Ultra有什么区别 消毒柜十大品牌排名 南京一日游路线推荐 中国的非遗文化有哪些? 171号段是哪家运营商 网约车被曝用甩位外挂虚报里程获利 一加推出行业首个电竞Wi-Fi芯片 小米汽车年交付量或破13万台 美团将逐步取消骑手超时扣款 小米civi4pro和小米14哪个好 红魔9S Pro和ROG游戏手机8有什么区别 vivo X100s Pro和魅族21 PRO谁更好? 华硕天选 Air2024 值得买吗? 骁龙8s相当于骁龙多少 加热水龙头·电热水龙头十大品牌 30万的车买什么车最好 华为mate70pro 和荣耀X60 Pro哪款更好? 钉钉进步体 快看世界体 美呗嘿嘿体 优设鲨鱼菲特健康体来 阿里巴巴普惠体 华为Mate 60 Pro手机怎么卫星通话 华为mate60pro参数及价格 小米15/15 Pro/15 定制版各版本参数对比 小米(MI)小米15与华为Mate70有什么区别 红米K80 华为mate70pro和苹果16pro哪个好 华为Mate70与Mate70Pro全面对比 Mate 70和Mate 70 Pro/Pro+哪个更好 华为Mate70系列正式发布 联想拯救者R9000P对决华硕天选5pro酷睿版 4000-5000价位手机有什么推荐的? 华为公布最新芯片封装专利 预算6000-7500游戏本推荐 Xiaomi 15 Pro 修仙手游十大排行榜有哪些? 联想ThinkBook 16p和联想拯救者选哪个好? 骁龙845和骁龙855哪个更好?