Dell Optiplex GXa Solaris 8  x86  6/00

戻る




snort-1.8p1


必要なソフトウェア:

tcpdump-3.6.2-sol8-intel-local.gz
libpcap-0.6.2-sol8-intel-local.gz
autoconf-2.13-sol8-intel-local.gz
m4-1.4-sol8-intel-local.gz
ftp://ftp.sunfreeware.com/pub/freeware/intel/8/

snort-1.8p1.tar.gz
http://www.snort.org/downloads.html


下準備:
(Solaris8にsnortを導入するには、事前にいくつかのユーティリティを入れておく必要
  がある。)

  
tcpdumpのインストール

SuperUserになる。
	$su
	password:

アーカイブをダウンロードする。
	# wget ftp://ftp.sunfreeware.com/pub/freeware/intel/8/tcpdump-3.6.2-sol8-intel-local.gz

解凍する。
	# gunzip /opt/pkg/tcpdump-3.6.2-sol8-intel-local.gz

インストールする。
	# pkgadd -d tcpdump-3.6.2-sol8-intel-local


libpcapのインストール

アーカイブをダウンロードする。
	# wget ftp://ftp.sunfreeware.com/pub/freeware/intel/8/ibpcap-0.6.2-sol8-intel-local.gz
	
解凍する。
	# gunzip /opt/pkg/libpcap-0.6.2-sol8-intel-local

インストールする。
	# pkgadd -d libpcap-0.6.2-sol8-intel-local


Autoconfのインストール

アーカイブをダウンロードする。
	# wget ftp://ftp.sunfreeware.com/pub/freeware/intel/8/autoconf-2.13-sol8-intel-local.gz

解凍する。
	# gunzip /opt/pkg/autoconf-2.13-sol8-intel-local.gz

インストールする。
	# pkgadd -d autoconf-2.13-sol8-intel-local.gz


GNU m4のインストール

アーカイブをダウンロードする。
	# wget ftp://ftp.sunfreeware.com/pub/freeware/intel/8/m4-1.4-sol8-intel-local.gz

解凍する。
	# gunzip /opt/pkg/m4-1.4-sol8-intel-local.gz

インストールする。
	# pkgadd -d m4-1.4-sol8-intel-local.gz
	# exit



snort-1.8p1

コンパイル・インストール

作業ディレクトリを作成する。
	$ mkdir /opt/src/snort

ディレクトリを移動する。
	$cd /opt/src/snort/

アーカイブをダウンロードする。
	$ wget http://www.snort.org/releases/snort-1.8p1.tar.gz

解凍展開する。
	$ tar xozf snort-1.8p1.tar.gz

展開されたディレクトリに移る。
	$ cd snort

最適化させる。
	$ ./configure

コンパイルする。
	$ make

SuperUserになる。
	$ su
	Password:

インストールする。
	# make install
		/bin/sh ./config.status --recheck
		running /bin/sh ./configure  --no-create --no-recursion
		/bin/sh ./mkinstalldirs /usr/local/bin
 		 ./install-sh -c  snort /usr/local/bin/snort
		make  install-man8
		/bin/sh ./mkinstalldirs /usr/local/man/man8
 		./install-sh -c -m 644 ./snort.8 /usr/local/man/man8/snort.8
	# exit 



設定

参考:http://www.a-tone.com/taky/net/snort.html
参考:http://www.hawkeye.ac/micky/

SuperUserになる。
	$ su
	password:

シグネチャファイルを格納しておくディレクトリを作成する
	# mkdir /usr/local/snort

ソースを展開したディレクトリ内にできているライブラリを、作成したディレクトリにコピーする。
	# cp /opt/src/snort/snort/*.rules /usr/local/snort/

設定ファイルを同じところにコピーする。
	# cp /opt/src/snort/snort/snort.conf /usr/local/snort/

もう一つの設定ファイルを同じところにコピーする。
	# cp /opt/src/snort/snort/classification.config /usr/local/snort/

設定ファイルを編集する。
	# vi /usr/local/snort/snort.conf

内容は以下のように
	var HOME_NET 192.168.0.0/24

これは、自分のネットワークをサブネットで指定しているが、自分だけのログをとりたい場合
は以下のように設定する。
	var HOME_NET 192.168.0.150/32

DNSも指定しておく。
	var DNS_SERVERS 192.168.0.150/32

保存する。

ログを書き出すディレクトリを準備しておく。
	# mkdir /var/log/snort

起動してみる。
	# /usr/local/bin/snort -Dde -c /usr/local/snort/snort.conf -h 192.168.0.150/32 -l /var/log/snort


ログの確認

起動してしばらくすると、/var/log/snort/内にいろんなログがたまるようになる。

適当な端末からPortScanをかけてみると、見事に portscan.logの中に書き込まれ、
さらにその適当な端末のIPアドレスが名前になったディレクトリが作成される。その
中にそのIPアドレスのホストが何をしたのかが詳しくログに残っている
。。。。すごい!。。。。



Bugか?

起動させて放っておくと、約2時間で勝手にsnortが終了してしまっていることが判明。
(これはLinuxでも同じだった) これでは意味がないので、cronを使って1時間に一度
snortをリスタートさせる。

終了スクリプトsnort_stop.shを/etc/内に作成する.
	# vi /etc/snort_stop.sh

内容は以下のように。
	#!/bin/sh
	pkill snort

起動スクリプトsnort_start.shを/etc/内に作成する。
	# vi /etc/snort_start.sh

内容は以下のように。
	#!/bin/sh
	/usr/local/bin/snort -Dde -c /usr/local/snort/snort.conf -h 192.168.0.150/32 -l /var/log/snort 

cronに上記2つのスクリプトを1時間に一度実行するように環境変数を
viにしつつ書き込む。
	# EDITOR=/usr/ucb/vi crontab -e root

内容は以下の最下2行を追加して保存する。
	10 3 * * 0,4 /etc/cron.d/logchecker
	10 3 * * 0   /usr/lib/newsyslog
	15 3 * * 0 /usr/lib/fs/nfs/nfsfind
	1 2 * * * [ -x /usr/sbin/rtc ] && /usr/sbin/rtc -c > /dev/null 2>&1
	30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
	1 * * * * /etc/snort_stop.sh
	1 * * * * /etc/snort_start.sh