SHELL系统文件完整性校验
系统完整性审核工具
创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:做网站、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的湘阴网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
shell脚本如下:
#!/bin/bash # # 变量首先声明才能使用 shopt -s -o nounset # 声明 # 建立日期 Date=$(date +'%Y%m%d%H%M%S') # 加入审核的目录 # Dirs="/bin /sbin /usr/bin /usr/sbin /lib /usr/local/sbin /usr/local/bin /usr/local/lib" # 临时文件 # TMP_file=$(mktemp /tmp/check.XXXXXX) # 文件checksum存储文件 FP="/root/fp.$Date.chksum" # 使用哪种checksum工具 Checker="/usr/bin/md5sum" Find="/usr/bin/find" # 函数区 # scan_file() { local f for f in $Dirs do $Find $f -type f >> $TMP_file done } # 读取文件建立每个文件的checksum值 cr_checksum_list() { local f if [ -f $TMP_file ]; then for f in $(cat $TMP_file); do $Checker $f >> $FP done fi } rmTMP() { [ -f $TMP_file ] && rm -rf $TMP_file } # 主程序区 # 扫描列表 scan_file # 建立文件的checksum值 cr_checksum_list # 清理临时文件 rmTMP
脚本执行:
[root@node3 ~]# sh my_filecheck.sh
进行校验:
md5sum -c fp.20141205160628.chksum
如果一切OK,都会显示OK的字样,如果有问题,就报相应的错误,如下:
[root@node3 ~]# md5sum -c fp.20141205160628.chksum | grep -v "OK" md5sum: /usr/bin/chattr: No such file or directory /usr/bin/chattr: FAILED open or read md5sum: WARNING: 1 of 8267 listed files could not be read
本文标题:SHELL系统文件完整性校验
分享链接:http://pwwzsj.com/article/iipoed.html