监控web
站点目录(/var/html/www)下所有的
文件是否被
修改(
文件内容被改了), 如果有就打印改动的
文件名(发
邮件),定时任务每3分钟执行一次(10分钟)。 思想: 1、思想 2、未经允许 3、
文件被改了,会有特征。 a、大小可能会变化 b、
修改时间(
文件测试符ot,nt) c、
文件内容会变化,md5sum指纹 d、增减或者删掉了 问题: 1、
代码发布方案:大公司或者规范的公司,不会时刻传
代码。(每天下午18点以后) 2、脚本不严谨啊,工作先
解决问题,然后在
解决好问题。 3、多思考自己
解决。 4、
文件变化的信息库 md5sum [root@node01 day13]# md5sum /etc/hosts 54fb6627dbaa37721048e4549db3224d /etc/hosts [root@node01 day13]# echo "##" >>/etc/hosts [root@node01 day13]# md5sum /etc/hosts b555326712fda43b9e47d506d72d23b2 /etc/hosts [root@node01 html]# touch index.html [root@node01 html]# echo wolf>index.html [root@node01 html]# cat index.html wolf [root@node01 html]# find /var/www/html/ -type f|md5sum a2d6eec9c0c4a30530dfa5753d43bfc2 - [root@node01 html]# find /var/www/html/ -type f|xargs md5sum d22f6718ff2408e991f99dde2b5898bf /var/www/html/index.html 建立指纹库 [root@node01 html]# find /var/www/html/ -type f|xargs md5sum>/data/wolf/md5sum.db [root@node01 html]# md5sum -c /data/wolf/md5sum.db /var/www/html/index.html: OK [root@node01 html]# md5sum -c /data/wolf/md5sum.db |grep -i fail [root@node01 html]# [root@node01 html]# echo laolang>>index.html [root@node01 html]# md5sum -c /data/wolf/md5sum.db |grep -i fail md5sum: WARNING: 1 of 1 co
mputed checksum did NOT match /var/www/html/index.html:
Failed [root@node01 data]# vi md5sum.sh #!/bin/sh db=/data/wolf/md5sum.db if [ `md5sum -c $db|grep
Failed|wc -l` -ne 0 ] then echo "`md5sum -c $db|grep
Failed`" fi [root@node01 data]# sh md5sum.sh md5sum: WARNING: 1 of 1 co
mputed checksum did NOT match md5sum: WARNING: 1 of 1 co
mputed checksum did NOT match /var/www/html/index.html:
Failed 新增或者
删除问题 [root@node01 data]# find /var/www/html/ -type f>a.log [root@node01 data]# find /var/www/html/ -type f>b.log [root@node01 data]# diff a.log b.log 1a2 > /var/www/html/123.sh
生成指纹库和
生成原始
文件统计 path=/var/www/html/ find $path -type f|xargs md5sum>/data/wolf/md5sum.db find $path -type f>/data/wolf/check_site.log 全脚本(这里可以用while true或者用计划任务) #!/bin/sh path=/data/wolf f=`md5sum -c $path/md5sum.db|grep
Failed|wc -l` n=`cat $path/check_site.log` [ ! -f "$n" ] && touch $path/check_site.log while true do f=`md5sum -c $path/md5sum.db|grep
Failed|wc -l` find /var/www/html/ -type f>$path/new_site.log log=/tmp/check.log [ ! -f $log ] && touch $log if [ $f -ne 0 ] || [ `cat $path/new_site.log|wc -l` -ne `$n|wc -l` ] then echo "`md5sum -c $path/md5sum.db|grep
Failed`">$log diff $path/check_site.log $path/new_site.log>>$log mail -s "site is
cuangai $(date) 1098331428@qq.com"<$log fi sleep 3 done 去新增
文件、
修改、
删除测试 查看log [root@node01 data]# cat /tmp/check.log 1c1 < /var/www/html/nannan.log --- > /var/www/html/1.txt