IDSを使ったLinuxセキュリティアップ入門(6)
前回までで、Snort本体と関連プログラム類のインストール、そして、インストール後に行うべき作業が完了した。今回は、いよいよSnortを起動させることにする。
特集
特集
●前回までの作業内容の確認
起動の説明に移る前に、前回まで行ってきたインストール後に行うべき作業の内容と意味について確認しておこう。起動がうまくいかない場合、インストールが正常に済んでいれば、この作業の内容を再確認していく必要があるからだ。
Snortのインストールは、Snortの実行ファイルと一部のファイルが規定のフォルダにコピーされるだけというシンプルなものだ。そのため、Snortを利用できるようにするには、いくつかの作業を行う必要があった。それが、前回まで作業してきた内容である。流れは以下の通りだ。
・ルールセットや設定ファイルの保存フォルダの作成とそれらのコピー
・ログファイルの出力先フォルダの作成
・設定ファイル(snort.conf)の修正
・専用ユーザの作成と関連フォルダのパーミッションの変更
Snortは、決められたフォルダにあるルールセット、設定ファイルを参照して動作する。そのフォルダ(通常は/etc/snort)はユーザが作成し、関連ファイルをコピーしなければならない。コピーする関連ファイルは、snort-2.1.0フォルダ下にあるetcおよびrules各フォルダの中身で、snortの設定ファイルであるsnort.confや.rulesの拡張子があるファイル群、classification.config、reference.configなどである。コピーが完全に行われていなければ、正常な検知を行えない。
続いて、ログファイルの出力先となるフォルダ、/var/log/snortを作成する。ログファイルとしては、Snortが出力するアラートメッセージを記録するアラートログ(alert)と、検出されたパケットデータを記録するパケットログが、デフォルトで出力されるようになっている(他にARPパケットのログも出力される)。これらログファイルは、Snortが起動し、処理が始まると自動的に作成される。
次に、設定ファイルであるsnort.confの内容を、監視する環境に合わせて編集する。監視対象となるネットワークやマシンのアドレス指定と、ルールセットが保存されているフォルダパスの指定だ。それぞれ、「var HOME_NET」「var EXTERNAL_NET」「var RULE_PATH」の各項目の内容を修正する。特に重要なのは、ネットワークの指定だ。Snort設定の要といってもいいだろう。どのネットワークあるいはマシンを監視するのか、管理しているネットワークの規模や監視対象とするマシンの選定などを慎重に検討し指定して欲しい。
最後の専用ユーザの作成とパーミッションの変更は、いわば、セキュリティ対策である。Snortの起動はroot権限で行う必要があるため、クラッキングという最悪の事態を想定、それを回避するための手立てといえる。Snortには、起動時のオプションで実行ユーザを指定できる機能がある。このオプションで、Snortの実行ユーザとして、作成された専用ユーザを指定するのである。専用ユーザは、あらかじめシステムログインができない設定にしておく。これで、万が一Snortがクラックされても、root権限が奪われてしまうようなことを防ぐことができるのである。この専用ユーザの作成に合わせて、関連フォルダのパーミッションを専用ユーザのみがアクセスできるように変更する。
以上が、前回まで行ってきた作業の内容である。Snort起動後、作動状況によっては作業の内容をチェックし、snort.confの再設定などの修正を施すことになる。
【執筆:磯野康孝】
(詳しくはScan本誌をご覧ください)
http://www.ns-research.jp/cgi-bin/ct/p.cgi?m-sc_netsec
《ScanNetSecurity》