海运的博客

Nginx/Apache/Lnmp网站常用日记统计命令

发布时间:April 13, 2012 // 分类:日记分析 // No Comments

Nginx配置日记格式为Apache日志格式,便于分析。
1.访问次数最多的前10个IP。

awk '{print $1}' www.haiyun.me.log|sort|uniq -c|sort -rn|head -n 10

2.访问次数最多的10个页面。

awk '{print $7}' www.haiyun.me.log|sort|uniq -c|sort -rn|head -n 10

3.访问最多的时间,取前十个。

awk '{print $4}' www.haiyun.me.log|cut -c 14-18|sort|uniq -c|sort -rn|head -n10

4.查看下载次数最多的文件,显示前10个。

awk '{print $7}' www.haiyun.me.log|awk -F '/' '{print $NF}'|sort|uniq -c|sort -rn|head -n 10
#如统计请求链接去除awk -F '/' '{print $NF}'|sort|

5.统计网站流量,以M为单位。

awk '{sum+=$10} END {print sum/1024/1024}' www.haiyun.me.log

6.统计IP平均流量、总流量。

awk 'BEGIN {print"ip average total"}{a[$1]+=$10;b[$1]++}END{for(i in a)print i,a[i]/1024/1024/b[i]"MB",\
a[i]/1024/1024"MB"}' www.haiyun.me.log |column -t

7.用sed统计特定时间内日志,配合以上使用awk分析。

sed -n '/10\/Feb\/2012:18:[0-9][0-9]:[0-9][0-9]/,$p' www.haiyun.me.log
#截取二月10号18点后所有日志
sed -n '/10\/Feb\/2012:18:[0-9][0-9]:[0-9][0-9]/,/10\/Feb\/2012:20:[0-9][0-9]:[0-9][0-9]/p' \
www.haiyun.me.log
#截取二月10号18点到20点之间日志

8.统计404或403最多的网址。

awk '$9 ~ /403/ {print $7}' www.haiyun.me.log|sort|uniq -c|sort -rn|head -n 80
awk '$9 ~ /404/ {print $7}' www.haiyun.me.log|sort|uniq -c|sort -rn|head -n 80

Linux下常用查看网络连接命令

发布时间:April 13, 2012 // 分类:Linux基础 // 1 Comment

查看所有80端口的连接数

netstat -nat|grep -i  "80" |wc -l

对连接的IP按连接数量进行排序

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

查看TCP连接状态

netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn
netstat -an | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}'
netstat -an | awk '/^tcp/ {++state[$NF]}; END {for(key in state) print key,"\t",state[key]}'
netstat -an | awk '/^tcp/ {++arr[$NF]};END {for(k in arr) print k,"\t",arr[k]}'
netstat -an |awk '/^tcp/ {print $NF}'|sort|uniq -c|sort -rn
netstat -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c

查看80端口连接数最多的20个IP

netstat -anlp|grep 80|grep tcp|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -n20
netstat -ant |awk '/:80/{split($5,ip,":");++A[ip[1]]}END{for(i in A) print A[i],i}' |sort -rn|head -n20

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

tcpdump -i eth0 -tnn dst port 80 -c 1000

查找较多time_wait连接

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

查找较多的SYN连接

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

Linux/Centos下安装配置vsftpd

发布时间:April 12, 2012 // 分类:备份存储 // No Comments

首先安装Vsftpd,本文以Yum方式安装,当然也可以源码方式编译安装Vsftpd,感觉没那个必要。

yum -y install vsftpd

备份默认配置文件

cd /etc/vsftpd
cp vsftpd.conf vsftpd.conf.back
vim vsftpd.conf

添加如下配置:

anonymous_enable=NO #禁止匿名登入
local_enable=YES #允许本地账户登入
write_enable=YES #开启写入权限
local_umask=022 #掩码
dirmessage_enable=YES #欢迎信息
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES #用户chroot至家目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list #不chroot用户写入此文件
listen=YES #以standalone方式启动
pam_service_name=vsftpd
userlist_enable=YES #开启用户列表
userlist_deny=NO #列表内用户可登录FTP
userlist_file=/etc/vsftpd/user_list #将要登入的账号写入此文件,删除默认的账号
tcp_wrappers=YES
pasv_enable=YES #开启被动模式
pasv_min_port=65400 #被动模式监听最小端口
pasv_max_port=65410 #被动模式监听最大端口

如有开启iptalbes防火墙,放行Vsftpd端口:

iptables -A INPUT -p tcp   --dport 21 -j ACCEPT
iptables -A INPUT -p tcp   --dport 65400:65410 -j ACCEPT

启动Vsftpd,配置为开机自启动。

/etc/init.d/vsftpd start
chkconfig vsftpd on

添加用户:

adduser test -s /sbin/nologin -d /home/test
passwd test

XenServer下查找占用硬盘IO较高的虚拟机

发布时间:April 12, 2012 // 分类:虚拟化 // No Comments

首先用iostat查看各个磁盘读写情况,虚拟机磁盘是以dm-id为名显示的。

iostat 2 2 #取样两次,每次相隔2秒

查找tps大于20的vm,并按大小排序

iostat 2 2|grep ^dm-|awk -F"[ ]+|[-]" '{if($3>20){print $2"\t"$3}}'|sort -rnk 2
#第一列为磁盘ID,第二列为当前tps

根据磁盘ID查找相应的虚拟机

#!/bin/bash
#Created by http://www.haiyun.me
#根据iostat结果ID找出相应VM
#执行sh file.sh 编号
case $1 in
*)
  id=`ls -l /dev/mapper/|awk '{if ($6=="'$*'"){print $NF}}'|awk -F-- '{print $NF}'`;xe vdi-list|grep -A 1 $id
;;
esac   

XenServer由mac地址获取虚拟机名称

发布时间:April 12, 2012 // 分类:虚拟化 // No Comments

1.通过vif列表直接获取

xe vm-vif-list|grep -B 2 "mac"

2.通过vm uuid获取

vmid=`xe vif-list MAC=be:c1:46:fd:4e:b7|grep vm-uuid|awk '{print $4}'`;xe vm-list|grep $vmid -A 1
分类
最新文章
最近回复
  • 头很黑: 除了发送eth转账 ,还能转账其他的代币吗 比如eos
  • 米扑博客: 总结的很棒
  • 米扑博客: 很赞的博客
  • 常易北: 满分顶楼主!!!我也是,现在网上瞎几把扫别人云主机的智障太多了!
  • track: NAT 部分没处理,这块感觉有问题。
  • yu: 查到有用的资料很幸福!
  • boscotsang: 请问下服务器端如何控制权限让通过权限认证的客户端才能连接?现在这样只要有自编译的客户端程序都可...
  • yck932: 大侠,请问哪里有 tunnels 详细参考资料,谢谢
  • bubble: 现在linux 4.9以上的内核有个bbr的参数,用这个bbr比用锐速效果更好,可参考我的博文...
  • wang: openwrt 只有 tmp/etc/miniupnpd.conf 修改后又重置了,其他路径找...
归档
友情链接