快捷搜索:   nginx

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)

您可能还会对下面的文章感兴趣:

最新评论