shell监控iptables规则是否改变

post by rocdk890 / 2014-5-1 10:52 Thursday linux技术
  最近看了一篇通过nagios实现MD5实时监控iptables状态的文章,就想是否可以用shell也做到监控iptables规则改变,经过实验,就有了下面这个脚本.
  系统:centos 5.x
脚本内容:
cat check_iptables.sh
#!/bin/bash
if [ ! -f .count ];then
  iptables -L -n|md5sum|awk '{print $1}' > ~/.count
  exit 1
else
  iptables -L -n|md5sum|awk '{print $1}' >~/1.txt
  difffile=`diff ~/.count ~/1.txt|wc -l`
  if [[ $difffile = 0 ]];then
     echo "file is ok!"
     sleep 1
     rm -f ~/1.txt
  else
     echo "file is no ok!"
     cat ~/1.txt >~/.count
     sleep 1
     rm -f ~/1.txt
fi
fi

然后丢到crontab里.以每隔3分钟检测一次.
chmod +x /root/check_iptables.sh
*/3 * * * * /bin/sh /root/check_iptables.sh

当然你也可以加上邮件报警来通知iptables规则有改变.
夜空- 本站版权
1、本站所有主题由该文章作者发表,该文章作者与夜空享有文章相关版权
2、其他单位或个人使用、转载或引用本文时必须同时征得该文章作者和夜空的同意
3、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
4、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
5、原文链接:blog.slogra.com/post-533.html

标签: iptables shell 监控 规则 md5 md5sum

  1. 2014-07-05 00:52
    @ipcpu:多谢你的建议
  1. gravatar ipcpu
    2014-07-02 23:47
    iptables有3张表,因此建议使用iptables-store来保存当前配置

评论: