セキュリティ · 2 min read · Oct 16, 2025

侵入検知: Snort, Base, MySQL, および Apache2 を Ubuntu 7.10 (Gutsy Gibbon) にインストール (更新版)

侵入検知: Snort, Base, MySQL, および Apache2 を Ubuntu 7.10 (Gutsy Gibbon) にインストール (更新版)

このチュートリアルは、DevilMan によって書かれた別のハウツーに基づいていますが、すべてのパッケージを手動でコンパイルするアイデアや、ソフトウェアをインストールするための GUI の使用が気に入らなかったため、こちらのハウツーを作成しました。このハウツーは Gutsy サーバーまたは Gutsy デスクトップで動作します。とはいえ、このハウツーの一部は元のものからの直接のコピーです。

このチュートリアルでは、Snort(侵入検知システム (IDS))、BASE(基本分析およびセキュリティエンジン)、MySQL、および Apache2 を Ubuntu 7.10 (Gutsy Gibbon) にソースからインストールおよび構成する方法を説明します。Snort はネットワークを監視し、潜在的な脅威について警告します。Snort はログファイルを MySQL データベースに出力し、BASE はそれを使用してウェブブラウザにグラフィカルインターフェースを表示します。

1. ルート権限を取得する

このインストールはルートユーザーとして行うのが最も簡単です。

sudo su -

2. 必要なパッケージをインストールする

以下のコマンドは、このセットアップを機能させるために必要なすべてのパッケージをインストールします。

apt-get install libpcap0.8-dev libmysqlclient15-dev mysql-client-5.0 mysql-server-5.0 bison flex apache2 libapache2-mod-php5 php5-gd php5-mysql libphp-adodb php-pear libc6-dev g++ gcc pcregrep libpcre3-dev

3. Snort を取得してコンパイルする

Gutsy リポジトリの Snort パッケージは古くなっています。したがって、最新のものをダウンロードしてインストールすることにしました。これが唯一、スクラッチからコンパイルするものです。

執筆時点での Snort の最新バージョンは 2.8.0.1 です。

まず、作業ディレクトリに移動します。

cd /usr/src/

ウェブブラウザを開き、http://www.snort.org/dl に移動し、最新のリリースを右クリックしてリンクの場所をコピーします。

a. Snort と Snort ルールをダウンロードする

wget http://www.snort.org/dl/current/snort-2.8.0.1.tar.gz

ルールにはいくつかのオプションがあります。以下のコマンドは公開ルールをダウンロードしますが、Snort サイトで簡単に登録することで、より最新のルールを取得できます。お好みですが、次のコマンドは適切な URL で同じように実行されます。

wget http://snort.org/pub-bin/downloads.cgi/Download/vrt_pr/snortrules-pr-2.4.tar.gz

b. 解凍してコンパイルの準備をする

tar zxvf snort-2.8.0.1.tar.gz  
cd snort-2.8.0.1  
tar zxvf ../snortrules-pr-2.4.tar.gz

c. それらをコンパイルする

./configure -enable-dynamicplugin --with-mysql  
make  
make install

このディレクトリを手元に置いておくと、後で Snort をアンインストールする場合に、次のコマンドを実行するだけで済みます。

make uninstall

d. ものを適切な位置に移動する

Snort のルールと設定を適切な位置に移動する必要があります。

mkdir /etc/snort /etc/snort/rules /var/log/snort  
cd /usr/src/snort-2.8.0.1/etc  
cp * /etc/snort/  
cd ../rules  
cp * /etc/snort/rules

4. Snort を構成する

Snort の設定ファイルを私たちのニーズに合わせて変更する必要があります。

お好みのテキストエディタ(nano、vi、vim など)で /etc/snort/snort.conf を開きます。

# vi /etc/snort/snort.conf

var HOME_NET any 」を「 var HOME_NET 192.168.1.0/24 」に変更します(自宅のネットワークが 192.168.1.0 と異なる場合があります)。
var EXTERNAL_NET any 」を「 var EXTERNAL_NET !$HOME_NET 」に変更します(これは HOME_NET 以外はすべて外部であることを示しています)。
var RULE_PATE ../rules 」を「 var RULE_PATH /etc/snort/rules 」に変更します。

リストを下にスクロールして「 # output database: log, mysql, user= 」のセクションを見つけ、この行の前にある「 # 」を削除します。
user=root 」を「 user=snort 」に変更し、「 password=password 」を「 password=snort_password 」に変更し、「 dbname=snort 」にします。
ユーザー名、パスワード、データベース名をメモしておいてください。MySQL データベースを設定する際にこの情報が必要になります。
保存して終了します。

設定ファイルの権限を変更してセキュリティを保ちます(ありがとう、rojo):

# chmod 600 /etc/snort/snort.conf

5. MySQL データベースを設定する。

MySQL サーバーにログインします。

# mysql -u root -p

Snort データベースを作成します。必ず「snort_password」を他のものに変更してください!

mysql> create database snort;  
grant all privileges on snort.* to 'snort'@'localhost' identified by 'snort_password'; mysql> exit

Snort スキーマをデータベースのレイアウトに使用します。

# mysql -D snort -u snort -p < /usr/src/snort-2.8.0.1/schemas/create_mysql

注意: プロンプトが表示されたら Snort DB ユーザーパスワードを使用してください。

6. Snort をテストする時間

ターミナルに次のように入力します。

# snort -c /etc/snort/snort.conf

すべてがうまくいけば、ASCII の豚が表示されるはずです。

テストを終了するには、ctrl + c を押します。

注意: エラーが発生した場合は、/etc/snort/rules/web-misc.rules の 97、98、452 行をコメントアウトしてみてください。これは以前の問題でしたが、今はそうではないようです。

7. BASE を取得してインストールする

ウェブブラウザを開き、http://sourceforge.net/project/showfiles.php?group_id=103348 に移動します。

ダウンロードをクリックし、最新の tar.gz パッケージを右クリックしてリンクをコピーを選択します(執筆時点では base-1.3.9 です)。

ターミナルに次のように入力します。

cd  
wget http://easynews.dl.sourceforge.net/sourceforge/secureideas/base-1.3.9.tar.gz

次に、ウェブドキュメントルート(デフォルトは /var/www)に移動し、tarball を解凍して BASE を構成するために必要な権限を設定します。

cd /var/www/  
tar zxvf ~/base-1.3.9.tar.gz  
cd ..  
chmod 757 base-1.3.9

いくつかの Pear モジュールが有効になっていることを確認します。

pear install Image_Color  
pear install Image_Canvas-alpha  
pear install Image_Graph-alpha

8. BASE を設定する

ウェブブラウザを開き、http://YOUR.IP.ADDRESS/base-1.3.9/setup に移動します。

最初のページで続行をクリックします。

  • ステップ 1 / 5: ADODB のパスを入力します。
    これは /usr/share/php/adodb です。
  • ステップ 2 / 5:
    データベースタイプ = MySQL、データベース名 = snort、データベースホスト = localhost、データベースユーザー名 = snort、データベースパスワード = snort_password
  • ステップ 3 / 5: 認証を使用する場合は、ここにユーザー名とパスワードを入力し、ボックスにチェックを入れます。
  • ステップ 4 / 5: BASE AG を作成をクリックします。
  • ステップ 5 / 5: ステップ 4 が完了したら、下部で「今すぐステップ 5 に進む」をクリックします。

このページをブックマークします。

/var/www/base-1.3.9 フォルダーの権限を元に戻します。

# chmod 755 /var/www/base-1.3.9

完了です。おめでとうございます!!!

ターミナルで Snort を開始するには、次のように入力します(eth0 をマシンの正しいインターフェースに変更してください):

# snort -c /etc/snort/snort.conf -i eth0 -D

これにより、eth0 インターフェースを使用してデーモンモードで Snort が開始されます。再起動後に自動的に開始されるように、/etc/rc.local ファイルに追加できます。

実行中であることを確認するには、次のコマンドで確認できます。

# ps aux | grep snort

実行中であれば、snort -c /etc/snort/snort.conf -i eth0 -D に似たエントリが表示されます。

独自の Snort ルールの書き方を学びたい場合は、http://www.snort.org/docs/snort_manual/node16.html にガイドがあります。
頑張ってください。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。