snort+acidのインストール Turbolinux Server7にsnortとacidをインストールしたので、その手順と留意事項を以下に記す。 ○必要ファイル
さらに以下のファイルを手元に準備しておく。
AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps についているコメントマーク#を削除する。 次に /etc/httpd/php.ini ファイルで とmysqlからpostgresqlに変更する。
少なくとも、「#tcpip_socket = false」の行を「tcpip_socket = true」にしておいた方がいいようである。 修正後 /etc/rc.d/init.d/postgresql restart で修正内容を反映しておく。
310行目付近の $tuis->_connectionID = pg_pconnect($str); を $tuis->_connectionID = pg_connect($str); と修正する。 上記修正は、adodb200 のものであり、adodb243 では必要なかった。
acidディレクトリ内に、acid_conf.phpというファイルがあり、これが初期化ファイルになっているので、vi acid_conf.phpし て、「$DBlib_path = "";」の「""」内にadodbのありかを書く。たぶん「"../adodb"」としておけばいいでしょう。 「$DBtype = "mysql";」を「$DBtype = "postgres";」に変更する。 さらに、「$alert_〜="〜";」をすべて書き換える。データベース名(snort_log)、ホスト名(localhostでしょう)、ポートは・・・ いいとして(笑)ユーザ名(snort_log)、パスワード(mypasswd)をそれぞれ書き込みます。 また、その直後の「$archive_〜」の方も書き換えておく。 さらに、「$ChartLib_path = "";」も「""」の部分にphplotのありかを書く。たぶん「"../phplot-4.4.6"」
includeとして /usr/includeを libraryとして /usr/libを指定する。 次にpostgresqlとopensslのdirectoryを指定 /usr/bin と正規にはこのようにする必要があるようであるが、デフォルトのままで、./configure --with-postgresql=/usr/bin だけでOKであった。 ./configure で Makefile を作成し、エラーが出なければ make make install でインストール後 mkdir /etc/snort cp snort.conf /etc/snort cp classical... /etc/snort cp *rules /etc/snort vi /etc/snort/snort.conf HOST_ADDRを修正 192.168.0.0/24 ログの出力先にsyslog と DB postgresqlを追加するため#を削除する。 さらに output database のuserとして snort_logを dbnameとしても snort_logを指定。 テストのためICMPの追加 のためコメントマークを削除 snort -i eth0 -c /etc/snort/snort.conf で snort をスタートさせ動作を確認 これはping を打ってみて /var/log/snort にログがあればOK
adduser snort_log passwd snort_log でデータベースのユーザー登録をおこなう。 次に、データベースを作成のため su postgresでアクセスユーザーを変更し、 createuser とするとユーザ名を求められるので、先に決めたユーザ名(snort_log)を入力する。すると、新しいDBを作れるユーザかどうか聞いてくるのでyesと答え、さらに新しいユーザを登録できるユーザか聞いてくるので、とりあえずnoと答える。 そしてrootに戻って、次は先に決めたユーザ(su snort_log)になります。今度は「createdb -W 決めたデータベース名(snort_log)」する。そうすると、パスワードを聞いてくるので入力する。これでデータベースの「元」ができる。 いったんrootに戻り、snortのソースディレクトリに移る。その中に、「contrib」というディレクトリがあるので、このディレクトリに入り、その後、もう一度先に決めたユーザ(snort_log)に変わる。いったん、「psql データベース名(snort_log)」でエラーが出ないことを確認し、「\q」で終了する。そして、「$psql < create_postgresql」として、データベースを初期化する。 さらに $ cd /var/www/html/acid $ psql < create_acid_tbls_pgsql.sql
対策は、ユーザー名、グループ名共に snort_log としてまず、 /var/log/snort ディレクトリーを作成し、次に /var/log/snort/portscan.log ファイルを作成すると問題なく起動するようになる。 /etc/rc.d/init.d/httpd start で起動しブラウザから http://snortをインストールしたPCのアドレス/acid/ て゛acidのトップ画面が表示される。
○その他 ○参考としたページ とりあえず動かすsnort+ACID(αversion) snort + acid + adodb + phplot インストールメモ ACID 前ページ |