Linux 系统利用tcpdump建立网络访问日志
tcpdump建立日志
运行的机器eth0网卡负责监听核心交换机上所有的流量,现需要用tcpdump实时记录所有的流量信息,包括IP,端口以及精确的访问时间。每天一个日志文件,保留30天。
实现方式: 编写一个脚本,通过crontab调度在每天0时运行。 运行时首先kill掉前一天的tcpdump进程,并删除30天前的日志。然后开始监听。直至在第二天0时经常被kill。
脚本内容如下:
#!/bin/bash
#删除前一天开始运行的tcpdump进程
kill -9 `ps x |grep tcpdump |grep eth0 | grep -v grep |awk -F” ” ‘{print $1}’`
#删除30天前的日志
cd $logdir
rm `find . -ctime 30`
#开始一个新的tcpdump进程,将新监听的日志保存在新的文件里。
logdir=/home/ivan/tcpdump_log/
basefilename=log.
datestr=`date +%F`
echo $logdir$basefilename$datestr
#tcpdump -i eth0 -efqntttt > $logdir$basefilename$datestr
不足之处,冗余信息过多。即记录了每一个连接的所有包信息,造成日志内容过于庞大。还待进一步改进。
顶(0)
踩(0)
上一篇:Linux下调整网卡的工作模式
下一篇:Crontab任务设置与应用
- 最新评论