自动抓包shell脚本

由于机房核心下的客户众多,其中不免很多大客户,正所谓树大招风,近期机房某些客户总是被流量攻击,预防的办法也只能是找到具体被攻击的ip地址,然后在上层核心将该ip配置空路由将攻击流量拦截在骨干层,以免影响其他用户的正常使用,目前我每台核心都做了镜像端口,将上联流量镜像到一台centos的抓包服务器,每次发生故障的时候直接tcpdump抓包来分析,但是近期攻击都在半夜,爬起来去抓包的时候攻击都已经停了,不要说去解决问题了,连后期的故障说明都没法出;所以为了保留抓包的数据,在网上找了些资料根据环境测试来写了个简单的自动抓包的脚本,下面贴出来:

1:抓包脚本 tcpdump.sh

#!/bin/sh
while [ 1 ]
do
STIME=`date +%F"@"%H%M%S`
DATE_DIR=`date +%F`
if [ ! -d /data/$DATE_DIR ];then
mkdir -p /data/$DATE_DIR
fi
/usr/sbin/tcpdump -i eth1 -c 30000 -w /data/$DATE_DIR/$STIME.pcap > /dev/null 2>&1 &      #后台抓包,监控eth1端口,每次自动抓包3w个自动停止并保存到相应目录,这个值可以根据需要来修改
sleep 1m   抓包后停止1分钟继续抓
done

2:监控硬盘使用率脚本 monitor-disk.sh  ,由于连续抓包会生成众多pcap数据文件,非常占用硬盘空间,所以监控硬盘使用率是保证监控脚本健康运行的前提条件,下面写了个脚本,可以设定计划任务,每6个小时执行一次,监控硬盘使用率大于50%(可以根据情况修改),则自动筛选出最早的备份文件夹并删除

#!/bin/bash
FREEDISK=`df -h|grep "/dev/sda1"|awk ‘{print $5}‘|awk -F % ‘{print $1}‘`
HEADMOST=`ls -l /data|grep ^d|awk ‘{print $NF}‘|sort|head -n 1`
#check free disk status
if [ "$FREEDISK" -ge "50" ];then
rm -rf /data/"$HEADMOST"
fi

将上述脚本加入计划任务即可,end

时间: 2024-10-05 05:34:14

自动抓包shell脚本的相关文章

把ps -ef & kill指令写成可以自动执行的shell脚本

之前重启服务器上的服务,均是先使用ps -ef | grep xxx指令查询出PID,然后再使用kill -9 PID指令杀死进程.由于重启的服务只止一个,每次都要重复输入,甚是麻烦. 示例 今天研究了一下,把以上手动查杀.重启服务的过程写成了shell脚本,重启服务只需执行脚本就可以了.附脚本样例: 1 #!/bin/sh 2 3 # restart das-web 4 ps -ef | grep /home/***/das-web/ | awk '{print $2}' | xargs -n

python编写网络抓包分析脚本

python编写网络抓包分析脚本 写网络抓包分析脚本,一个称手的sniffer工具是必不可少的,我习惯用Ethereal,简单,易用,基于winpcap的一个开源的软件 Ethereal自带许多协议的 decoder,但是它的架构并不灵活,如果你要加入一个自己定义的的解码器,得去修改Ethereal的代码,再重新编译,相当的烦琐 对于一般的明文协议,没有什么问题,但是对于加密协议,比如网络游戏,客户端程序一般会在刚连接上的时候,发送一个随机密钥,而后的报文都会用这个密钥进 行加密,诸如此类.要想

Lvs别样的自动部署监控shell脚本

Lvs别样的自动部署监控shell脚本   l 脚本功能: l 实验环境图: l 具体脚本: l 结果验证: l 参考资料: 先申明,本文现在已经在我公司的测试环境和生产测试环境使用.正式环境请用keepalived+lvs. 安装ipvsadm不多说了,先说说脚本的功能,脚本分为redirect server 端和realserver 端,脚本分别为 lvs_redirector.sh 和realserver.sh脚本.另外加一个监控脚本lvs_monitor.sh(此脚本来源网友,做了一点修

mysql自动备份维护shell脚本

/opt/backup_online.sh #!/bin/bash#功能说明:本功能用于备份数据库 #数据库用户名dbuser='root'#数据库密码dbpasswd='zLaaa'#数据库名,可以定义多个数据库,中间以空格隔开,如:test test1 test2dbname='adb bdb '#备份时间backtime=`date +%Y%m%d%H%M%S`#日志备份路径logpath='/opt/garbageBackup/'#数据备份路径datapath='/opt/garbage

shell脚本实现网络扫描 自动抓包 协议分析 nmap

此文章提供思想基础用法:关于自动检测功能,各个端口和抓包功能,项目中使用的为nmap软件,Linux操作系统,首先我们要安装nmap的软件 项目中使用的为nmap-6.40-7.el7.x86_64版本, 命令格式为:  #nmap  [扫描类型]  [选项]  <目标主机> 扫描类型: -sS (TCP  SYN扫描半开) -sT(TCP 连接扫描全开) -sU  (UDP扫描) -sP    (ICMP扫描) -A     //对目标主机做全面分析 选项       : -n     //

linux下监视进程挂掉后自动重启的shell脚本

本文介绍的这个shell脚本,通过一个while-do循环,用ps -ef|grep 检查loader进程是否正在运行,如果没有运行,则启动,确保崩溃挂掉的进程,及时自动重启. 脚本内容如下: #!/bin/sh while : do echo "Current DIR is " $PWD stillRunning=$(ps -ef |grep "$PWD/loader" |grep -v "grep") if [ "$stillRun

自动升级OPENSSH shell脚本

由于管理着两百多台Linux服务器,一个人搞这么多机器的安全加固比较累,因此在学习了shell脚本之后果断的写了一些常用脚本做一些系统日常维护,本文OPENSSH的升级是博主本人几乎每两三个月就要做一次升级的,没办法绿盟安全扫描系统总是扫描到相关的高危漏洞,再就是OPENSSH版本更新的也比较频繁,因此不偷懒几乎没法活了.废话不说了,在这里贴下脚本,已经在线上服务器上执行了上百次了,应该不会有什么问题. #!/bin/bash ##################################

Ubuntu 设定壁纸自动切换的shell脚本

升级到Ubuntu14.04后,感觉bug的确比12.04少多了.顶部任务栏支持半透明效果,所以整个桌面也看上去漂亮了很多.这样的桌面也是值得瞎捣鼓一下的,想到换壁纸,但是没找到设定动态更换壁纸的选项,但手动修改配置文件的方法总是有的,本文的目的也在于此.(以下过程在Ubuntu14上进行,未测试其他版本!). 原理 右键桌面->更改桌面背景,如下图所示,在右侧缩略图中带有小钟表图标的就表示为动态切换的壁纸: 系统是通过读取这个文件来进行动态壁纸切换的: /usr/share/backgroun

linux下监视进程 崩溃挂掉后自动重启的shell脚本

如何保证服务一直运行?如何保证即使服务挂掉了也能自动重启?在写服务程序时经常会碰到这样的问题.在Linux系统中,强大的shell就可以很灵活的处理这样的事务. 下面的shell通过一个while-do循环,用ps -ef|grep 检查loader进程是否正在运行,如果没有运行,则启动,这样就保证了崩溃挂掉的进程重新被及时启动. 必须注意两点: 1.ps |grep 一个进程时必须加上其路劲,否则容易grep到错误的结果: 2.必须用 -v 从结果中去除grep命令自身,否则结果非空. 复制代