玄箱に役立つ(かもしれない)シェルスクリプト

最近「シェルスクリプト ポケットリファレンス ~bash編」というシェルスクリプトの入門書を少しずつ読んでいます。読んでるだけだと退屈なのでサンプルを試したりしているのです。そのままコピーするだけでも実用的なのですが、少し手を加えるともうちょっと使えるようになります。
で、こんなの作りました。

#!/bin/bash
dir=`pwd`
tarball="ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz"
resultfile=`pwd`/chkrootkit_result-`date +%Y%m%d`

if [ -f $dir/chkrootkit.tar* -o -d $dir/chkrootkit-* ] ;then
   echo "Please remove $dir/chkrootkit.tar* file and $dir/chkrootkit-* directory."
   exit 1
else
wget -O $dir/chkrootkit.tar.gz $tarball
gunzip $dir/chkrootkit.tar.gz
tar xvf $dir/chkrootkit.tar
cd $dir/`tar tf chkrootkit.tar`
make sense
  ./chkrootkit | tee $resultfile
cd $dir
[ -d $dir/`tar tf chkrootkit.tar |head -1` ] &&rm -rf $dir/chkrootkit-*
[ -f $dir/chkrootkit.tar ] && rm $dir/chkrootkit.tar
fi

message=`grep -e "INFECTED" -e "FOUND" -e "installed" $resultfile`
[ -n "$message" ] && echo "$message" | mail -s "chkrootkit log" root

chkrootkitをダウンロードして自動実行。rootkitが検出されたらrootへメール送信。
これをcronで定期的に実行するようにしてみました。

シェルスクリプト ポケットリファレンス ~bash編 (Pocket reference)

シェルスクリプト ポケットリファレンス ~bash編 (Pocket reference)