Shell脚本实现监控iptables规则是否被修改
最近看了一篇通过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规则有改变.
您可能感兴趣的文章
- 12-31Shell脚本中获取进程ID的方法
- 12-31Shell脚本美化登录界面装饰图(含农历)
- 12-31Shell 编程:Bash空格的那点事
- 12-31Shell中获取脚本所在目录绝对路径的方法
- 12-31Shell脚本实现乱序排列文件内容的多种方法(洗牌问题)
- 12-31shell 编程中空格的使用方法
- 12-31Shell脚本实现ftok函数
- 12-31getcwd cannot access parent directories错误解决方法
- 12-31Shell脚本实现递归删除空文件夹
- 12-31Shell脚本实现获取网页快照并生成缩略图







