Linux Lovers
    Fedora Coreで始めるサーバ構築

Home > 運用管理 > SnortSnarf

SnortSnarfとは

Snortの導入をしてみたものの、Snortのログはそのままでは非常に見づらいです。
そこでSnortSnarfを導入すれば、SnortのログをHTML化してくれるので、見やすくなります。
ここでは、SnortSnarfの導入方法の紹介をし、またSnortSnarfの結果画面はLAN内のマシンのみが
閲覧できる設定にします。


Snortsnarfの導入

Snortsnarfを実行するには、PerlのTimeモジュールが必要になりますので、先ずはこちらの
インストールから行います。下記のような手順で導入してください。

$ wget http://search.cpan.org/CPAN/authors/id/M/MU/MUIR/modules/Time-modules-2003.1126.tar.gz
$ tar zxvf Time-modules-2003.1126.tar.gz
$ cd Time-modules-2003.1126
$ perl Makefile.PL
$ make
$ su
# make install


続いて、Snortsnarfの導入をします。

# wget http://www.snort.org/dl/contrib/data_analysis/snortsnarf/SnortSnarf-021111.1.tar.gz
# tar zxvf SnortSnarf-021111.1.tar.gz
# cp -a SnortSnarf-021111.1 /usr/local/snortsnarf
# mkdir /var/www/snortsnarf

以上が済みましたら、後片付けをします。

# rm -rf Time-modules-2003.1126*
# rm -rf SnortSnarf-021111.1*


>>このページのTOPへ

Snortsnarfの設定と実行

Snortsnarfのログ解析画面を見るのに、http://ドメイン名(IPアドレス)/snort/とすれば見れるようにし、
更にLAN内からの閲覧のみ許可するように設定します。ここでは、/etc/httpd/conf.d/
snortsnarf.confというファイルを作成し、下記のような記述をしてください。

# vi /etc/httpd/conf.d/snortsnarf.conf

Alias /snort /var/www/snortsnarf

<Location /snort>
Order deny
,allow
Deny from all
Allow from 127
.0.0.1
Allow from 192
.168.1
</Location>

青地部分の記述をしてください。以上が終わりましたら、httpdを再起動させます。

# service httpd restart


また、Snortsnarf実行時にデフォルトの状態では、下記のようなエラーが出ます。

Using an array as a reference is deprecated at include/SnortSnarf/HTMLMemStorage.pm
line 290.
Using an array as a reference is deprecated at
include/SnortSnarf/HTMLAnomMemStorage.pm line 266.

このエラーを回避する為に2つほど修正をします。

# vi /usr/local/snortsnarf/include/SnortSnarf/HTMLMemStorage.pm
return @arr->[($first-1)..$end];   ←290行目

return @arr[($first-1)..$end];

# vi /usr/local/snortsnarf/include/SnortSnarf/HTMLAnomMemStorage.pm
return @arr->[($first-1)..$end];    ←266行目

return @arr[($first-1)..$end];

以上でSnortsnarfを実行し、閲覧する準備が整いました。
それでは早速、Snortsnarfを実行してみます。

# cd /usr/local/snortsnarf
# ./snortsnarf.pl -d /var/www/snortsnarf -homenet 192.168.1.0/24 -rulesdir /usr/local/rules/ \
/var/log/snort/alert


-homenet 192.168.1.0/24という記述がありますが、ここはSnortの設定で、snort.confに
var HOME_NET 192
.168.1.0/24という記述をしました。
ここでの-homenetに指定するIPアドレスは、snort.confで記述したものを指定してください。

以上でSnortsnarfでログの閲覧ができるようになりました。http://ドメイン名(IPアドレス)/snort/にアクセスして
みてください。当サイトの場合であれば、http://chibi.name/snort/です。
今回はLAN内のみ閲覧できる設定にしてますので、LAN内からアクセスしてみてください。

最後にSnortsnarfの実行crontabに登録してみます。

# crontab -e
00 0-23/2 * * * cd /usr/local/snortsnarf ; /usr/local/snortsnarf/snortsnarf.pl -d /var/www/snortsnarf
 -homenet 192.168.1.0/24 -rulesdir /usr/local/rules/ /var/log/snort/alert > /dev/null 2>&1
実際には一行で記述


これで2時間置きの00分に実行されるようになります。

最後に、Snortの設定の時にも書きましたが、Snortはあくまでも不正なパケットなどを検出するだけであり、
ブロックなどはしてくれません。Snortを導入すれば安全などという事はありません。
しかし、攻撃者が不正アクセスを試みれば、それはSnortのログに記録されます。このように足跡が残る
ことは攻撃者にとって、やりづらいのは確かでしょう。そういった意味では、セキュリティ強化に
繋がると思います。

そして、せっかくSnortsnarfを導入してログを見やすくしたのですから、日頃からSnortのログは
ちゃんとチェックし、異常があった時にすぐに反応できるようにしましょう。


>>このページのTOPへ

最終更新 : 05/23/2005


Fedoraの設定    SSH    Web    Mail    FTP    DNS    ファイルサーバ    運用管理    システム管理    ネットワーク    セキュリティ対策
Copyright (C) 2004-2007 chibi ,All Rights Reserved