Snort + SnortSnarf
に関するインストールメモ(2002/05/15)
まったくもって困った事に世の中には、サーバを攻撃したり、悪戯してみたりとなんと多いことか・・・。そんなこんなで、攻撃のログをこっそり取っておきましょう。また、SnortSnarf のソフトを使用すると、綺麗に見せるレポートを作ってくれます。(^o^)丿
本家 : Snort (英語サイト)
本家 : SnortSnarf(Silicon Defense) (英語サイト)
参考 : SNORTで侵入検出
参考 : サーバー侵入の準備行為とされるポート・スキャンはどのように検知できますか
★.libpcapライブラリが必要です。libpcapがインストールされていない場合は、http://www.tcpdump.org/でアーカイブを入手する必要があります。
1.Snortをインストールします。
$ cd ./src
$ wget http://www.snort.org/dl/snort-1.8.6.tar.gz
$ gzip -cd snort-1.8.6.tar.gz | tar xf -
$ cd snort-1.8.6
$ ./configure
$ make
$ su
# make install
# mkdir /etc/snort
# cp -p snort.conf /etc/snort
# cp -p *.rules /etc/snort2.とりあえずの設定をしてみます。
# vi /etc/snort/snort.conf
var HOME_NET 192.0.0.0/24 ← 監視対象のIPアドレスを指定します
var DNS_SERVERS 192.0.0.10/32 ← DNSサーバのIPアドレスを指定します
# mkdir -p /var/log/snort3.起動してみましょう。
# /usr/local/bin/snort -Dde -c /etc/snort/snort.conf -h 192.0.0.0/32 -l /var/log/snort
4.ログが出てるかな?
# ls -al /var/log/snort
-rw------- 1 root other 2932 4月 26日 11:27 alert
-rw------- 1 root other 0 4月 25日 18:28 portscan.log5.起動シェルの定義
# vi /etc/rc.d/init.d/snort
#!/bin/sh
# chkconfig: - 91 35
# description: snort
. /etc/rc.d/init.d/functions <-- 共通定義の変数/関数の内容を読込む
SERVICE="snort"
ARGS="-Dod -A full -c /etc/snort/snort.conf -h 192.168.0.10/32 -l /var /log/snort"
case "$1" in
start)
cd /home/src/snort-1.8.6
./snort -Dod -A full -c /etc/snort/snort.conf -h 192.168.0.10/32 -l /var/log/snort
touch /var/lock/subsys/$SERVICE
cmdtext="start"
;;
stop)
killproc $SERVICE <-- 関数killprocを呼び出す
rm -f /var/lock/subsys/$SERVICE
echo
cmdtext="stop"
;;
restart)
$0 stop
$0 start
cmdtext="restarting"
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac
echo "Snort $cmdtext."
exit 0
参考 : シェルスクリプトを読んでみる
6.自動起動の設定
# chmod +x /etc/rc.d/init.d/snort
# ln -s /etc/rc.d/init.d/snort /etc/rc.d/rc3.d/S50snort
1.SnortSnarf をインストールします。
$ cd opt/local/src
$ wget http://www.silicondefense.com/software/snortsnarf/SnortSnarf-020316.1.tar.gz
$ gzip -cd SnortSnarf-020316.1.tar.gz | tar xf -
$ cd SnortSnarf-020316.1
$ cd Time-modules
$ perl Makefile.PL
$ make
$ make test
$ su
# make install2.とりあえずapacheで公開できる場所を作っておきます。
[admin]$ mkdir -p /home/groups/home/web/snortsnarf
3.とりあえず動かしてみます。
# cd /opt/local/src/SnortSnarf-020316.1
# ./snortsnarf.pl -d /home/groups/home/web/snortsnarf /var/log/snort/alert4.クーロン化 (^o^)丿
0,30 * * * * /home/cron.sh/snortsnarf.sh 1> /dev/null
5.アクセスしてみるべし (ーー゛)
http://localhost/snortsnarf/
参考 : Snort+ACIDのインストール
1.上記のサイトのスクリプトを真似てみました〜
#!/bin/sh
PATH=/usr/local/sbin:/usr/sbin:/sbin:.:~/bin
PATH=/usr/local/bin:/usr/X11R6/bin:/usr/bin:/bin:$PATH
export LANG=ja
export PERL_BADLANG=0
cd /tmp
/usr/bin/wget -q http://www.snort.org/dl/signatures/snortrules.tar.gz
gzip -cd snortrules.tar.gz | tar xf -
cp -rf rules/* /etc/snort
rm -rf rules
rm snortrules.tar.gz
/etc/rc.d/init.d/snort restart > /dev/null