また、周辺ツールを利用することにより、Webでのアラート検索を行うことも可能です。
Snortは、debian wheezyのパッケージにも含まれて居ますが、今回は、IPSでの利用も考慮し、最新のバージョンのソースコードよりsnort本体をビルドする方法をご紹介します。
OBDN技術ブログによる動作検証は、該当するソフトウェアの動作の保証およびサポートを行うものではありません。
内容に関するご指摘などありましたら、ブログ記事の担当までご連絡下さい。
内容に関するご指摘などありましたら、ブログ記事の担当までご連絡下さい。
<検証環境>
OpenBlocks AX3/4 Debian 7.1 kernel: 3.2.40 JモデルまたはDPモデル
1. Snort最新版のビルド
以下の手順は、基本的な開発環境が導入済みであることを前提としています。
(手順に関しては、右のタグにあるソフトウェア動作検証より記事をリンクしています)
debianパッケージから必要なライブラリをインストール
# aptitude install bison flex libpcre3 libpcre3-dev libssl-dev libnetfilter-queue-dev
以下、snortの最新のバージョンのビルドに必要な、一部の新しいバージョンのライブラリを用意します。
linpcap
# wget http://www.tcpdump.org/release/libpcap-1.5.3.tar.gz
# tar zxvf libpcap-1.5.3.tar.gz
# cd libpcap-1.5.3
# ./configure --prefix=/usr --enable-shared
# make
# make install
lindnet
# wget https://libdnet.googlecode.com/files/libdnet-1.12.tgz
# tar zxvf libdnet-1.12.tgz
# cd libdnet-1.12.tgz
# ./configure --prefix=/usr --enable-shared
# make
# make install
snortおよびdaqパッケージのインストール
www.snort.orgからsnortおよびdaqの最新のソースコードを入手して下さい。
daq-2.0.2
# tar -zxvf daq-2.0.2.tar.gz
# cd daq-2.0.0
# ./configure
# make
# make install
# cd /usr/local/lib
# ldconfig -v /usr/local/lib
# cd daq-2.0.0
# ./configure
# make
# make install
# cd /usr/local/lib
# ldconfig -v /usr/local/lib
snort-2.9.6.0
# tar -zxvf snort-2.9.6.0.tar.gz
# cd snort-2.9.4.5
# ./configure --enable-sourcefire
# make
# make install
# cd /usr/local/lib
# ldconfig -v /usr/local/lib
# cd snort-2.9.4.5
# ./configure --enable-sourcefire
# make
# make install
# cd /usr/local/lib
# ldconfig -v /usr/local/lib
2. 設定
snort.orgでアカウント作成
https://www.snort.org/account/oinkcode
で、’Generate code’ とするとOinkcodeが発行されるのでコードを控えておきます。
Snortルールの入手と展開
Snortルールを入手します。
# wget http://www.snort.org/reg-rules/snortrules-snapshot-2960.tar.gz/<Oinkcode> -O snortrules-snapshot-2960.tar.gz
/etc/snortに展開します。
# mkdir /etc/snort
# cd /etc/snort/
# tar zxvf /usr/local/src/snortrules-snapshot-2955.tar.gz
# cp ./etc/* .
# cp /usr/local/src/snort-2.9.5.6/etc/* .
# rm /etc/snort/Makefile*
# cd /etc/snort/
# tar zxvf /usr/local/src/snortrules-snapshot-2955.tar.gz
# cp ./etc/* .
# cp /usr/local/src/snort-2.9.5.6/etc/* .
# rm /etc/snort/Makefile*
空のホワイトリスト、ブラックリストを作成します。
# touch /etc/snort/rules/white_list.rules /etc/snort/rules/black_list.rules
snortユーザの追加、パーミッションの変更
# groupadd -g 40000 snort
# useradd snort -u 40000 -d /var/log/snort -s /sbin/nologin -c SNORT_IDS –g snort
# cd /etc/snort
# chown -R snort:snort *
# useradd snort -u 40000 -d /var/log/snort -s /sbin/nologin -c SNORT_IDS –g snort
# cd /etc/snort
# chown -R snort:snort *
/etc/snort/snort.confを編集し、/etc/snortなど、設定ファイルのパスの変更、対象ネットワークアドレスなどを変更します。
2. 動作テスト
以下のオプションにて動作テストを行います。
# snort -T -i eth0 -u snort -g snort -c /etc/snort/snort.conf
3.さいごに
今回は、snortをOpenBlocks Aシリーズでビルドする手順を説明しました。
次回にて、IPSとしての設定、Webからのアラートの監視方法などについてご紹介する予定です。
0 件のコメント:
コメントを投稿