系統(tǒng)完整性審核工具
創(chuàng)新互聯建站堅持“要么做到,要么別承諾”的工作理念,服務領域包括:做網站、網站建設、企業(yè)官網、英文網站、手機端網站、網站推廣等服務,滿足客戶于互聯網時代的湘陰網站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯網解決方案。努力成為您成熟可靠的網絡建設合作伙伴!
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" # 函數區(qū) # 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 } # 主程序區(qū) # 掃描列表 scan_file # 建立文件的checksum值 cr_checksum_list # 清理臨時文件 rmTMP
腳本執(zhí)行:
[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