序章

サーバーでの許可されたアクティビティと許可されていないアクティビティをどのように追跡しますか?

OSSECは、サーバーにインストールしてそのアクティビティを追跡できるツールの1つです。

OSSECは、オープンソースのホストベースの侵入検知システム(HIDS)であり、ログ分析、整合性チェック、Windowsレジストリ監視、ルートキット検出、時間ベースのアラート、およびアクティブな応答を実行します。 サーバー/エージェントモードで1台のサーバーまたは数千台のサーバーを監視するために使用できます。

適切に構成されている場合、OSSECは、サーバーで何が起こっているかをリアルタイムで確認できます。

このチュートリアルでは、Ubuntu14.04LTSを実行している1台のDigitalOceanサーバーを監視するようにOSSECをインストールおよび構成する方法を示します。 ファイルが変更、削除、またはサーバーに追加された場合に、OSSECがリアルタイムで電子メールで通知するようにOSSECを構成します。 これは、OSSECが提供する他の整合性チェック機能に追加されます。

OSSECは、ファイルの変更を通知する以上のことを行うことができますが、そのすべての機能を利用する方法を示すには、1つの記事だけでは不十分です。

** OSSECの利点は何ですか?

インストールと構成の部分に入る前に、OSSECを使用することで得られる具体的な利点をいくつか見てみましょう。

以下は、ファイル/var/ossec/etc/ossec.confが変更されたことを示すOSSECからの電子メール通知の例です。

OSSEC HIDS Notification.
2014 Nov 29 09:45:15

Received From: kuruji->syscheck
Rule: 552 fired (level 7) -> "Integrity checksum changed again (3rd time)."
Portion of the log(s):

Integrity checksum changed for: '/var/ossec/etc/ossec.conf'
Size changed from '7521' to '7752'

このようなアラートを受信し、そのファイルが変更されることを予期していなかった場合は、サーバーで不正な処理が行われたことがわかります。

これは、ファイル/etc/ossec/testossec.txtが削除されたことを示すOSSECからの別の電子メールアラートの例です。

OSSEC HIDS Notification.
2014 Nov 29 10:56:14

Received From: kuruji->syscheck
Rule: 553 fired (level 7) -> "File deleted. Unable to retrieve checksum."
Portion of the log(s):

File /etc/ossec/testossec.txt was deleted. Unable to retrieve checksum.

繰り返しますが、問題のファイルを削除しなかった場合は、サーバーで何が起こっているのかを把握する必要があります。

さて、上記がOSSECをインストールしたいと思うほどあなたをくすぐったなら、ここにあなたが最初にやらなければならないいくつかのことがあります。

前提条件

もちろん、監視するサーバーが必要です。 このチュートリアルは、すでに1つあり、使用できるように設定されていることを前提としています。 今日セットアップしたばかりのサーバーでも、何ヶ月も使用しているサーバーでもかまいません。 最も重要なことは、それにアクセスでき、SSH経由でログインできることです。 サーバーにSSHで接続する方法がまだわからない場合は、OSSECの設定を行う必要はありません。

  • Ubuntu14.04サーバー
  • サーバー上にsudoユーザーを作成する必要があります。 この例では、ユーザーの名前はsammyです。 ただし、このチュートリアルは、rootユーザーの方がはるかに簡単に完了できます。
sudo su
  • オプション:ローカルSMTPサーバーからメールを送信する場合は、Postfixをインストールして簡単なメール送信を行う必要があります
  • OSSECのインストールにはコンパイルが含まれるため、 gccmake インストールされています。 と呼ばれる単一のパッケージをインストールすることにより、両方をインストールできます build-essential
  • また、というパッケージをインストールする必要があります inotify-tools、リアルタイムアラートが機能するために必要です

必要なすべてのパッケージをインストールするには、最初にサーバーを更新します。

apt-get update

パッケージをインストールします。

apt-get install build-essential inotify-tools

予備知識が整理されたので、楽しい部分に取り掛かりましょう。

ステップ1—OSSECをダウンロードして確認する

このステップでは、OSSECtarballとその暗号化チェックサムを含むファイルをダウンロードします。

これはセキュリティに関する記事なので、有効なソフトウェアをインストールしていることを確認するために、少し余分な作業を行います。 ダウンロードしたOSSECtarballのMD5およびSHA1チェックサムを生成し、それらをチェックサムファイルのチェックサムと比較するという考え方です。 それらが一致する場合は、tarballが改ざんされていないと見なすことができます。

執筆時点では、OSSECの最新のサーバーエディションはバージョン2.8.1です。 ダウンロードするには、次のように入力します。

wget -U ossec http://www.ossec.net/files/ossec-hids-2.8.1.tar.gz

チェックサムファイルをダウンロードするには、次のように入力します。

wget -U ossec http://www.ossec.net/files/ossec-hids-2.8.1-checksum.txt

両方のファイルが配置されていることを確認するには、次のように入力します。

ls -l ossec*

次のファイルが表示されます。

ossec-hids-2.8.1-checksum.txt
ossec-hids-2.8.1.tar.gz

次に、catコマンドを使用してチェックサムファイルを調べてみましょう。

cat ossec-hids-2.8.1-checksum.txt

期待される出力:

MD5(ossec-hids-2.8.1.tar.gz)= c2ffd25180f760e366ab16eeb82ae382
SHA1(ossec-hids-2.8.1.tar.gz)= 0ecf1df09558dc8bb4b6f65e1fb2ca7a7df9817c

上記の出力で重要な部分は、=記号の右側にある部分です。 これらは、tarballのMD5およびSHA1チェックサムです。

次に、tarball用に生成したチェックサムがダウンロードしたチェックサムと一致することを確認します。

tarballのMD5sumを生成するには、次のように入力します。

md5sum ossec-hids-2.8.1.tar.gz

期待される出力:

c2ffd25180f760e366ab16eeb82ae382  ossec-hids-2.8.1.tar.gz

生成されたMD5チェックサムをチェックサムファイルのチェックサムと比較します。 それらは一致する必要があります。

次のように入力して、SHA1チェックサムについても同じようにします。

sha1sum  ossec-hids-2.8.1.tar.gz

期待される出力:

0ecf1df09558dc8bb4b6f65e1fb2ca7a7df9817c  ossec-hids-2.8.1.tar.gz

両方が一致する場合、あなたは行ってもいいです。 ステップ2は手招きします。

ステップ2—OSSECをインストールします

このステップでは、OSSECをインストールします。

OSSECは、サーバーエージェントローカル、またはハイブリッドモードでインストールできます。 このインストールは、OSSECがインストールされているサーバーを監視するためのものです。 これは、ローカルのインストールを意味します。

インストールを開始する前に、ファイルを展開する必要があります。 次のように入力します。

tar -zxf ossec-hids-2.8.1.tar.gz

その後、ossec-hids-2.8.1という名前のディレクトリが作成されます。 インストールを開始するには、次のように入力して、そのディレクトリに(cd)を変更する必要があります。

cd ossec-hids-2.8.1

現在のディレクトリの内容を確認するには、次のように入力してlsコマンドを使用します。

ls -lgG

次のファイルとディレクトリが表示されます。

total 100
drwxrwxr-x  4  4096 Sep  8 21:03 active-response
-rw-rw-r--  1   542 Sep  8 21:03 BUGS
-rw-rw-r--  1   289 Sep  8 21:03 CONFIG
drwxrwxr-x  6  4096 Sep  8 21:03 contrib
-rw-rw-r--  1  3196 Sep  8 21:03 CONTRIBUTORS
drwxrwxr-x  4  4096 Sep  8 21:03 doc
drwxrwxr-x  4  4096 Sep  8 21:03 etc
-rw-rw-r--  1  1848 Sep  8 21:03 INSTALL
-rwxrwxr-x  1 32019 Sep  8 21:03 install.sh
-rw-rw-r--  1 24710 Sep  8 21:03 LICENSE
-rw-rw-r--  1  1664 Sep  8 21:03 README.md
drwxrwxr-x 30  4096 Sep  8 21:03 src

そのリストで私たちが関心を持っている唯一のファイルはinstall.shです。 これがOSSECインストールスクリプトです。 インストールを開始するには、次のように入力します。

./install.sh

インストールに関するいくつかの質問に答えるように求められます。

あなたに必要とされる最初の仕事は言語の選択です。 以下の出力に示すように、デフォルトは英語です。 インストールプロセス全体を通じて、選択する必要がある場合は、角かっこで囲まれたエントリがデフォルトです。 デフォルトが希望する場合は、ENTERキーを押してデフォルトを受け入れます。 メールアドレスを入力する以外に、何をしているのかわからない限り、すべてのデフォルトを受け入れることをお勧めします。

エントリはで表示されます。

したがって、言語が英語の場合は、 ENTER. それ以外の場合は、言語の2文字を入力して、Enterキーを押します。

  (en/br/cn/de/el/es/fr/hu/it/jp/nl/pl/ru/sr/tr) [en]:

言語を選択すると、次のように表示されます。

OSSEC HIDS v2.8 Installation Script - http://www.ossec.net

 You are about to start the installation process of the OSSEC HIDS.
 You must have a C compiler pre-installed in your system.
 If you have any questions or comments, please send an e-mail
 to [email protected] (or [email protected]).

  - System: Linux kuruji 3.13.0-36-generic
  - User: root
  - Host: kuruji

  -- Press ENTER to continue or Ctrl-C to abort. --

ENTERを押すと、次のようになります。

1- What kind of installation do you want (server, agent, local, hybrid or help)? local

タイプ local ENTERを押します。 あなたは得るべきです:

  - Local installation chosen.

2- Setting up the installation environment.

  - Choose where to install the OSSEC HIDS [/var/ossec]:

デフォルトを受け入れて、Enterキーを押します。 その後、次のようになります。

    - Installation will be made at  /var/ossec .

3- Configuring the OSSEC HIDS.

  3.1- Do you want e-mail notification? (y/n) [y]:

ENTERを押します。

  - What's your e-mail address? [email protected]

OSSECからの通知を受信する電子メールアドレスを入力します。

  - We found your SMTP server as: mail.example.com.
  - Do you want to use it? (y/n) [y]:

--- Using SMTP server:  mail.example.com.

使用する特定のSMTPサーバー設定がない場合は、Enterキーを押します。

次に、OSSECに実行する必要のあるチェックを知らせます。 スクリプトからのプロンプトに応答して、を押してデフォルトを受け入れます ENTER.

整合性チェックデーモンの場合はENTER。

  3.2- Do you want to run the integrity check daemon? (y/n) [y]:

- Running syscheck (integrity check daemon).

ルートキット検出の場合はENTER。

  3.3- Do you want to run the rootkit detection engine? (y/n) [y]:

- Running rootcheck (rootkit detection).

アクティブな応答の場合はENTER。

  3.4- Active response allows you to execute a specific command based on the events received.  

   Do you want to enable active response? (y/n) [y]:

   Active response enabled.

ファイアウォールドロップ応答のデフォルトを受け入れます。 出力にいくつかのIPv6オプションが表示される場合があります-それは問題ありません。

  Do you want to enable the firewall-drop response? (y/n) [y]:

- firewall-drop enabled (local) for levels >= 6

   - Default white list for the active response:
      - 8.8.8.8
      - 8.8.4.4

   - Do you want to add more IPs to the white list? (y/n)? [n]:

ここにIPアドレスを追加できますが、必須ではありません。

OSSECは、監視するファイルのデフォルトリストを表示します。 インストール後にファイルを追加できるため、Enterキーを押します。

3.6- Setting the configuration to analyze the following logs:
    -- /var/log/auth.log
    -- /var/log/syslog
    -- /var/log/dpkg.log

 - If you want to monitor any other file, just change
   the ossec.conf and add a new localfile entry.
   Any questions about the configuration can be answered
   by visiting us online at http://www.ossec.net .


   --- Press ENTER to continue ---

この時点で、インストーラーはOSSECをインストールするために必要なすべての情報を持っています。 キックバックして、インストーラーに任せてください。 インストールには約5分かかります。 インストールが成功すると、OSSECを起動して構成する準備が整います。

注:インストールが失敗する理由の1つは、コンパイラがインストールされていない場合です。 その場合、次のようなエラーが発生します。

5- Installing the system
 - Running the Makefile
./install.sh: 85: ./install.sh: make: not found

 Error 0x5.
 Building error. Unable to finish the installation.

そのエラーが発生した場合は、インストールする必要があります build-essential、チュートリアルの「前提条件」セクションで説明されているように。

インストールが成功すると、次のタイプの出力が表示されます。

 - System is Debian (Ubuntu or derivative).
 - Init script modified to start OSSEC HIDS during boot.

 - Configuration finished properly.

 - To start OSSEC HIDS:
                /var/ossec/bin/ossec-control start

 - To stop OSSEC HIDS:
                /var/ossec/bin/ossec-control stop

 - The configuration can be viewed or modified at /var/ossec/etc/ossec.conf

    ---  Press ENTER to finish (maybe more information below). ---

これでOSSECがインストールされました。 次のステップはそれを開始することです。

ステップ3—OSSECを起動します

デフォルトでは、OSSECは起動時に起動するように構成されていますが、初回は手動で起動する必要があります。

現在のステータスを確認する場合は、次のように入力します。

/var/ossec/bin/ossec-control status

期待される出力:

ossec-monitord not running...
ossec-logcollector not running...
ossec-syscheckd not running...
ossec-analysisd not running...
ossec-maild not running...
ossec-execd not running...

これは、OSSECのプロセスが実行されていないことを示しています。

OSSECを開始するには、次のように入力します。

/var/ossec/bin/ossec-control start

あなたはそれが起動するのを見るはずです:

Starting OSSEC HIDS v2.8 (by Trend Micro Inc.)...
Started ossec-maild...
Started ossec-execd...
Started ossec-analysisd...
Started ossec-logcollector...
Started ossec-syscheckd...
Started ossec-monitord...
Completed.

ステータスを再度確認すると、OSSECが実行中であることを確認できます。

/var/ossec/bin/ossec-control status

この出力は、OSSECが実行されていることを示しています。

ossec-monitord is running...
ossec-logcollector is running...
ossec-syscheckd is running...
ossec-analysisd is running...
ossec-maild is running...
ossec-execd is running...

OSSECを起動した直後に、次のような電子メールが届くはずです。

OSSEC HIDS Notification.
2014 Nov 30 11:15:38

Received From: ossec2->ossec-monitord
Rule: 502 fired (level 3) -> "Ossec server started."
Portion of the log(s):

ossec: Ossec started.

これは、OSSECが機能していることの別の確認であり、監視するように構成されていることが発生するたびに電子メールアラートを送信します。 再起動しても、OSSECからメールが届きます。

このメールがすぐに届かなくても心配しないでください。 OSSECサーバーの電子メールがメールプロバイダーに届くようにするために、電子メール設定(チュートリアルの後半で説明します)を微調整する必要がある場合があります。 これは、GoogleやFastmailなどの一部のサードパーティの電子メールサービスプロバイダーに特に当てはまります。

ステップ4—ファイル変更に関するリアルタイムアラート用にOSSECを構成する

次に、OSSECのファイルとディレクトリを理解し、OSSECの監視とアラートの設定を変更する方法を学びましょう。

このチュートリアルでは、指定したディレクトリにファイルが変更、削除、または追加されるたびに通知するようにOSSECを変更します。

OSSECのディレクトリ構造を理解する

OSSECのデフォルトディレクトリは、root(管理者)権限を持つユーザーのみがアクセスできる chroot ed(サンドボックス)環境です。 標準ユーザーはできません cd の中へ /var/ossec または、その中のファイルをリストすることもできます。 ただし、root(またはadmin)ユーザーとしては可能です。

そう、 cd 次のように入力して、インストールディレクトリに移動します。

cd /var/ossec

新しい作業ディレクトリ内のファイルを一覧表示するには、次のように入力します。

ls -lgG

次のファイルとディレクトリが表示されます。

total 40
dr-xr-x---  3 4096 Nov 26 14:56 active-response
dr-xr-x---  2 4096 Nov 20 20:56 agentless
dr-xr-x---  2 4096 Nov 20 20:56 bin
dr-xr-x---  3 4096 Nov 29 00:49 etc
drwxr-x---  5 4096 Nov 20 20:56 logs
dr-xr-x--- 11 4096 Nov 20 20:56 queue
dr-xr-x---  4 4096 Nov 20 20:56 rules
drwxr-x---  5 4096 Nov 20 21:00 stats
dr-xr-x---  2 4096 Nov 20 20:56 tmp
dr-xr-x---  3 4096 Nov 29 18:34 var
  • OSSECのメイン設定ファイルは /var/ossec/etc ディレクトリ。
  • 事前定義されたルールは /var/ossec/rules ディレクトリ
  • OSSECの管理に使用されるコマンドは /var/ossec/bin
  • に注意してください /var/ossec/logs ディレクトリ。 OSSECがエラーをスローした場合、 /var/ossec/logs/ossec.log そのディレクトリ内のファイルが最初に表示されます

メイン設定ファイル、/ var / ossec / etc / ossec.conf

メインの構成ファイルにアクセスするには、次のように変更する必要があります。 /var/ossec/etc. これを行うには、次のように入力します。

cd /var/ossec/etc

あなたがするなら ls そのディレクトリにいる間、これらのファイルとディレクトリが表示されます。

ls -lgG

結果:

total 120
-r--r----- 1 97786 Sep  8 22:03 decoder.xml
-r--r----- 1  2842 Sep  8 22:03 internal_options.conf
-r--r----- 1  3519 Oct 30 13:46 localtime
-r--r----- 1  7752 Nov 29 09:45 ossec.conf
-rw-r----- 1    87 Nov 20 20:56 ossec-init.conf
drwxrwx--- 2  4096 Nov 20 21:00 shared

主な構成ファイルは /var/ossec/etc/ossec.conf.

念のため、ファイルを変更する前に、バックアップコピーを作成してください。 そのコピーを作成するには、 cp そのようなコマンド:

cp /var/ossec/etc/ossec.conf /var/ossec/etc/ossec.conf.00

変更が機能しない場合やシステムを台無しにした場合は、コピーに戻して通常の状態に戻すことができます。 これは、常に利用する必要がある最も単純な災害復旧の方法です。

開催中 ossec.conf を使用して nano 編集者。

nano /var/ossec/etc/ossec.conf

構成ファイルは、いくつかのセクションを持つ非常に長いXMLファイルです。

メール設定

注:特にGmailアドレスへの送信など、より厳格なメールプロバイダーに送信する場合、電子メールは一般的に厄介です。 スパムを確認し、必要に応じて設定を微調整します。

表示される最初の構成オプションは、インストール時に指定した電子メールのクレデンシャルです。 別のメールアドレスやSMTPサーバーを指定する必要がある場合は、ここで指定します。

<global>
    <email_notification>yes</email_notification>
    <email_to>[email protected]</email_to>
    <smtp_server>mail.example.com.</smtp_server>
    <email_from>ossecm@ossec_server</email_from>
</global>

デフォルトでは、OSSECは1時間に12通の電子メールを送信するため、電子メールアラートが殺到することはありません。 を追加することで、その値を増減できます <email_maxperhour>N</email_maxperhour> そのセクションに設定して、次のようにします。

<global>
    <email_notification>yes</email_notification>
    <email_to>[email protected]</email_to>
    <smtp_server>mail.example.com.</smtp_server>
    <email_from>ossecm@ossec_server</email_from>
    <email_maxperhour>N</email_maxperhour>
</global>

交換してください N 1から9999の間の1時間あたりに受信する電子メールの数。

一部のサードパーティの電子メールサービスプロバイダー(たとえば、GoogleやFastmail)は、次の場合にOSSECによって送信されたアラートをサイレントにドロップします。 <email_from> 上記のコードブロックのように、アドレスに有効なドメイン部分が含まれていません。 これを回避するには、そのメールアドレスに有効なドメイン部分が含まれていることを確認してください。 例えば:

<global>
    <email_notification>yes</email_notification>
    <email_to>[email protected]</email_to>
    <smtp_server>mail.example.com.</smtp_server>
    <email_from>sammy@ossec_server.com</email_from>
</global>

The <email_to><email_from> アドレスは同じにすることができます。 例えば:

<global>
    <email_notification>yes</email_notification>
    <email_to>[email protected]</email_to>
    <smtp_server>mail.example.com.</smtp_server>
    <email_from>[email protected]</email_from>
</global>

外部の電子メールプロバイダーのSMTPサーバーを使用したくない場合は、独自のSMTPサーバーを指定できます(構成されている場合)。 (これはこのチュートリアルではカバーされていませんが、これらの手順に従ってPostfixをインストールできます。)SMTPサーバーがOSSECと同じドロップレットで実行されている場合は、 <smtp_server> に設定 localhost. 例えば:

<global>
    <email_notification>yes</email_notification>
    <email_to>[email protected]</email_to>
    <smtp_server>localhost</smtp_server>
    <email_from>[email protected]</email_from>
</global>

OSSECはデフォルトではリアルタイムアラートを送信しませんが、このチュートリアルではリアルタイム通知が必要になるため、これを変更する1つの側面です。

それでもOSSECから期待される電子メールを受信しない場合は、次のログを確認してください。 /var/ossec/logs/ossec.log メールエラーの場合。

メールエラーの例:

2014/12/18 17:48:35 os_sendmail(1767): WARN: End of DATA not accepted by server
2014/12/18 17:48:35 ossec-maild(1223): ERROR: Error Sending email to 74.125.131.26 (smtp server)

これらのエラーメッセージを使用して、電子メール通知の受信に関する問題をデバッグするのに役立てることができます。

スキャンの頻度

の中に <syscheck> のセクション ossec.conf、このように始まります:

<syscheck>
    <!-- Frequency that syscheck is executed - default to every 22 hours -->
    <frequency>79200</frequency>

新しいファイルの作成に関するアラートをオンにします。 行を追加します <alert_new_files>yes</alert_new_files> 次のようになります。

<syscheck>
    <!-- Frequency that syscheck is executed - default to every 22 hours -->
    <frequency>79200</frequency>

    <alert_new_files>yes</alert_new_files>

テストの目的で、システムチェックの頻度をはるかに低く設定することもできます。 デフォルトでは、システムチェックは22時間ごとに実行されます。 テストの目的で、これを1分に1回に設定することをお勧めします。つまり、 60 秒。 テストが終了したら、これを正常な値に戻します。

<syscheck>
    <!-- Frequency that syscheck is executed - default to every 22 hours -->
    <frequency>60</frequency>

    <alert_new_files>yes</alert_new_files>

ディレクトリとファイルの変更設定

その直後に、OSSECが監視するシステムディレクトリのリストが表示されます。 それは次のようになります:

<!-- Directories to check  (perform all possible verifications) -->
<directories check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
<directories check_all="yes">/bin,/sbin</directories>

設定を追加してリアルタイム監視を有効にしましょう report_changes="yes" realtime="yes" 各行に。 これらの行を変更して、次のようにします。

<!-- Directories to check  (perform all possible verifications) -->
<directories report_changes="yes" realtime="yes" check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
<directories report_changes="yes" realtime="yes" check_all="yes">/bin,/sbin</directories>

report_changes="yes" 言うことを正確に行います。 同上 realtime="yes".

OSSECが監視するように構成されているディレクトリのデフォルトのリストに加えて、監視する新しいディレクトリを追加できます。 この次のセクションでは、OSSECに監視するように指示します /home/sammy/var/www. そのために、既存の行のすぐ下に新しい行を追加して、そのセクションが次のようになるようにします。

<!-- Directories to check  (perform all possible verifications) -->
<directories report_changes="yes" realtime="yes" check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
<directories report_changes="yes" realtime="yes" check_all="yes">/bin,/sbin</directories>

<directories report_changes="yes" realtime="yes" restrict=".php|.js|.py|.sh|.html" check_all="yes">/home/sammy,/var/www</directories>

必要な設定に一致するようにディレクトリを変更する必要があります。 ユーザーの名前がsammyでない場合は、ホームディレクトリへのパスを変更する必要があります。

監視する新しいディレクトリ用に、 restrict オプション。指定されたファイル形式のみを監視するようにOSSECに指示します。 このオプションを使用する必要はありませんが、画像ファイルなど、OSSECに警告させたくない他のファイルがある場合に便利です。

これがすべての変更です ossec.conf. ファイルを保存して閉じることができます。

/var/ossec/rules/local_rules.xmlのローカルルール

次に変更するファイルは /var/ossec/rules ディレクトリなので、 cd 次のように入力して入力します。

cd /var/ossec/rules

あなたがするなら ls そのディレクトリには、次のようなXMLファイルがたくさんあります。

ls -lgG

省略された出力:

total 376
-r-xr-x--- 1  5882 Sep  8 22:03 apache_rules.xml
-r-xr-x--- 1  2567 Sep  8 22:03 arpwatch_rules.xml
-r-xr-x--- 1  3726 Sep  8 22:03 asterisk_rules.xml
-r-xr-x--- 1  4315 Sep  8 22:03 attack_rules.xml

...

-r-xr-x--- 1  1772 Nov 30 17:33 local_rules.xml

...

-r-xr-x--- 1 10359 Sep  8 22:03 ossec_rules.xml

...

これらのファイルのうち、現在私たちが関心を持っているのは2つだけです- local_rules.xmlossec_rules.xml. 後者にはOSSECのデフォルトのルール定義が含まれ、前者にはカスタムルールを追加します。 言い換えれば、 local_rules.xml、このディレクトリ内のファイルは変更しません。

のデフォルトのルール定義 ossec_rules.xml それらを変更してローカルルールにコピーできるように、確認すると便利です。 の ossec_rules.xml、ファイルが監視対象ディレクトリに追加されたときに発生するルールはルール554です。 デフォルトでは、OSSECはそのルールがトリガーされたときにアラートを送信しないため、ここでのタスクはその動作を変更することです。 デフォルトバージョンでのルール554は次のようになります。

<rule id="554" level="0">
<category>ossec</category>
<decoded_as>syscheck_new_entry</decoded_as>
<description>File added to the system.</description>
<group>syscheck,</group>
</rule>

ルールにアラートが含まれている場合、OSSECはアラートを送信しません level 0に設定します。 このルールを変更して、アラートレベルを上げます。 デフォルトファイルで変更する代わりに、ルールをにコピーします local_rules.xml アラートをトリガーできるように変更します。

これを行うには、のバックアップコピーを作成します /var/ossec/rules/local_rules.xml ファイル:

cp /var/ossec/rules/local_rules.xml /var/ossec/rules/local_rules.xml.00

nanoでファイルを編集します。

nano /var/ossec/rules/local_rules.xml

ファイルの最後に新しいルールを追加します。 それが内にあることを確認してください <group> ... </group> 鬼ごっこ。

<rule id="554" level="7" overwrite="yes">
<category>ossec</category>
<decoded_as>syscheck_new_entry</decoded_as>
<description>File added to the system.</description>
<group>syscheck,</group>
</rule>

ファイルを保存して閉じます。

これらはすべて必要な変更です。

OSSECを再起動します

あとはOSSECを再起動するだけです。これは、OSSECのファイルを変更するたびに実行する必要があります。 OSSECを再起動するには、次のように入力します。

/var/ossec/bin/ossec-control restart

すべてが正常に機能している場合は、OSSECから(再)開始したことを通知する電子メールを受信する必要があります。

ステップ5—ファイル変更アラートをトリガーする

また、OSSECが監視するように構成されているディレクトリで何が起こっているかに応じて、次のようなメールが届くはずです。

次に、でサンプルファイルを作成してみてください /home/sammy

touch /home/sammy/index.html

ちょっと待って。 コンテンツを追加します。

nano /home/sammy/index.html

ちょっと待って。 ファイルを削除します。

rm /home/sammy/index.html

次のような通知の受信を開始する必要があります。

OSSEC HIDS Notification.
2014 Nov 30 18:03:51

Received From: ossec2->syscheck
Rule: 550 fired (level 7) -> "Integrity checksum changed."
Portion of the log(s):

Integrity checksum changed for: '/home/sammy/index.html'
Size changed from '21' to '46'
What changed:
1c1,4
< This is an html file
---

    <!doctype html> <p>This is an html file</p>

Old md5sum was: '4473d6ada73de51b5b36748627fa119b'
New md5sum is : 'ef36c42cd7014de95680d656dec62de9'
Old sha1sum was: '96bd9d685a7d23b20abd7d8231bb215521bcdb6c'
New sha1sum is : '5ab0f31c32077a23c71c18018a374375edcd0b90'

またはこれ:

OSSEC HIDS Notification.
2014 Dec 01 10:13:31

Received From: ossec2->syscheck
Rule: 554 fired (level 7) -> "File added to the system."
Portion of the log(s):

New file '/var/www/header.html' added to the file system.

注: OSSECは、ファイルの追加についてはリアルタイムのアラートを送信せず、ファイルの変更と削除についてのみアラートを送信します。 ファイルの追加に関するアラートは、システム全体のチェック後に送信されます。これは、次の頻度チェック時間によって管理されます。 ossec.conf.

nano /var/ossec/etc/ossec.conf

の設定 frequency:

<syscheck>
    <!-- Frequency that syscheck is executed - default to every 22 hours -->
    <frequency>79200</frequency>

繰り返しになりますが、メールが届かない場合は、スパムを確認し、 /var/ossec/logs/ossec.log、メールログなどを確認してください。

結論

これにより、OSSECが提供するものを味わうことができたと思います。 より高度なセットアップと構成が可能であるため、サーバーを監視および保護するためにOSSECを展開する方法に関する今後の記事にご注目ください。

OSSECの詳細については、プロジェクトのWebサイトhttp://www.ossec.net/にアクセスしてください。