WEB开发网
开发学院操作系统Linux/Unix Linux服务器管理Shell命令 阅读

Linux服务器管理Shell命令

 2012-06-09 13:36:26 来源:WEB开发网   
核心提示: 1.站点根目录下查找是否被放置webshell木马根据语句判断是不是PHP木马脚本# find ./ -name “*.php” |xargs egrep “phpspy|c99sh|milw0rm|eval\(gunerpress|eval\(base64_decode|spid

 1.站点根目录下查找是否被放置webshell木马根据语句判断是不是PHP木马脚本
# find ./ -name “*.php” |xargs egrep “phpspy|c99sh|milw0rm|eval\(gunerpress|eval\(base64_decode|spider_bc”>/tmp/php.txt
# grep -r –include=*.php ‘[^a-z]eval($_POST’ > /tmp/eval.txt
#grep -r –include=*.php ‘file_put_contents(.*$_POST\[.*\]);’ > tmp/file_put_contents.txt

2.统计服务器访问日志中所有不同ip出现的次数
# cat access.log |awk ‘{print $4}’| sort | uniq -c |sort -rn
或者
#cat access.log | awk ‘{print $4}’ | sort -n | awk ‘{S[$NF]++} END {for(a in S) {print a”\t” S[a]}}’ | sort +1 -2nr
awk ‘{print $4}’ : 通过管道将第四个字段也就是ip地址筛选出来。
sort -n :将ip地址进行排序
awk ‘{S[$NF]++} END{for(a in S) {print a”\t” S[a]}}:
$NF是awk里的一个变量,代表最后一个字段的内容,由于这晨只有一个字段, 即:IP地址,所以$NF代表IP地址。
S[$NF]++里的S代表一个数组,然后统计IP地址出现的次数. 后面是一个for in 循环语句,将这个数组里的值和键打印出来。
sort +1 -2nr:以第二个字段,也就是每个IP的访问次数进行排序

3.分析出现次数最多的ip对网站的具体数据访问情况
# grep -e IP access.log > filename
# cat filename |awk ‘{print $8}’|sort|uniq -c|sort -rn

4.访问次数最多的文件或页面,取前20
# cat access.log|awk ‘{print $11}’|sort|uniq -c|sort -nr|head -20

5.列出传输最大的几个exe文件(分析下载站的时候常用)
# cat access.log |awk ‘($7~/\.exe/){print $10 ” ” $1 ” ” $4 ” ” $7}’|sort -nr|head -20

6.列出输出大于200000byte(约200kb)的exe文件以及对应文件发生次数
# cat access.log |awk ‘($10 > 200000 && $7~/\.exe/){print $7}’|sort -n|uniq -c|sort -nr|head -100

7.如果日志最后一列记录的是页面文件传输时间,则有列出到客户端最耗时的页面
# cat access.log |awk ‘($7~/\.php/){print $NF ” ” $1 ” ” $4 ” ” $7}’|sort -nr|head -100

8.列出最最耗时的页面(超过60秒的)的以及对应页面发生次数
# cat access.log |awk ‘($NF > 60 && $7~/\.php/){print $7}’|sort -n|uniq -c|sort -nr|head -100

9.列出传输时间超过 30 秒的文件
# cat access.log |awk ‘($NF > 30){print $7}’|sort -n|uniq -c|sort -nr|head -20

10.统计网站流量(G)

1 2 3  下一页

Tags:Linux 服务器 管理

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接