1.监控虚拟机跟外部的tcp连接,如果连接数超过阈值,就在FORWARD把ip DROP ,并且发送邮件

root@InternetGateway:~# cat /root/scripts/check_conntrack.sh
#!/bin/bash
script_home=`dirname $0`
script_home=`cd $script_home;pwd`
file_dir=/var/scripts/file
conntrack_source=/proc/net/nf_conntrack
ct_file=`date +%F-%T`
cmd=/usr/sbin/conntrack
num=`$cmd -C`

conntrack_total (){
[ ! -d $file_dir ] && mkdir -p $file_dir
cd $file_dir
cat $conntrack_source > $ct_file && gzip $ct_file
gzip -cd $ct_file.gz|awk '{S[$6" "$7" "$8" "$10]++} END {for(s in S) print S[s],s}'|sort -rn|head > $ct_file.out
}

mail (){
local sendEmail=$script_home/sendEmail
local subject="InternetGateway conntrack State abnormality"
local content="$file_dir/$ct_file.out"
$sendEmail -f nagios@onecloud.cn -t gs@abccloud.cn -s 172.16.0.99 -u "$subject" -xu nagios@abccloud.cn -xp engine@nagios2 -o tls=no -o message-content-type=text -o message-file="$content" -o message-charset=utf8
}

ip_drop (){
local ip=`awk -F '[ =]' 'NR==1 {print $4}' $ct_file.out`
/sbin/iptables -I FORWARD -s $ip -j DROP
}

main (){
if [ "$num" -gt "40000" ]
then
echo "conntrack State abnormality"
conntrack_total
mail
ip_drop
else
echo "conntrack State ok"
fi
}

main

最新文章

  1. RVA与Offset的换算函数
  2. SPRING IN ACTION 第4版笔记-第九章Securing web applications-010-拦截请求
  3. WebChat 清爽来袭 -- JavaChat系统Ⅳ
  4. OPENCV条形码检测与识别
  5. jdk不同版本对String拼接的优化分析
  6. Mac OS: How to keep network connection alive after sleep
  7. About Why Inline Member Function Should Defined in The Header File
  8. linux/centos elasticsearch 环境搭建 安装 运行 使用
  9. Flask特殊装饰器
  10. FreeSWITCH部署与功能配置
  11. IIS上配置单页面404
  12. 「Java基本功」一文读懂Java内部类的用法和原理
  13. 《大话设计模式》c++实现 装饰者模式
  14. Spring Boot 2.0(二):Spring Boot 开源软件都有哪些?(转)
  15. 【BZOJ 4059】 (分治暴力|扫描线+线段树)
  16. 转:android root tcpdump抓包强烈推荐
  17. golang 解决 TCP 粘包问题
  18. 抓取远程master分支到本地,并与UI分支合并
  19. [翻译] PNChart
  20. ioctl socket getsockopt

热门文章

  1. JS如何判断一个数组是否为空、是否含有某个值
  2. OSGI企业应用开发(十四)整合Spring、Mybatis、Spring MVC
  3. Android 云之声离线语音合成
  4. 11.1、socket连接中的粘包、精确传输问题
  5. React 表单与事件
  6. [20180713]关于hash join 测试中一个疑问.txt
  7. Linux 查看本机串口方法
  8. 安全之路 —— C++实现进程守护
  9. Python基础知识:列表
  10. ccf--20160403---路径解析