ファイル監視(FIM)

ファイル監視(FIM)は、WindowsやLinuxシステムのファイルやフォルダーに加えられたすべての変更(追加/削除/修正)を監視するための機能です。

留意事項


  • 大量のログが生成されディスク容量が逼迫する問題を避けるため、FIMは必要なファイルやフォルダーのみに設定することを推奨します。
  • Windowsに対するFIMを利用するためには、以下のライセンスが必要です。
    • WindowsファイルサーバーにFIMを設定する場合は、Windowsイベントログ管理ライセンスとWindows ファイルサーバーログ管理ライセンスの両方が必要です。
    • WindowsサーバーにFIMを設定する場合は、Windowsイベントログ管理ライセンスが必要です。
    • WindowsワークステーションにFIMを設定する場合は、 ワークステーションログ管理ライセンスが必要です。

Linux FIM エージェント アーキテクチャ


ファイル監視機能を使用するための前提条件

管理対象がWindowsデバイスの場合:

  • Windowsデバイス上のファイル監視を有効化後、特定のアクセスポリシーが自動的に有効になります。ドメイン内に監査ポリシーを上書きしているGPOがある場合は、以下の方法で手動で有効にしてください。
    • 管理者としてコマンドプロンプトを立ち上げ、以下のコマンドを実行します。 auditpol /get /category:*
    • 「オブジェクト アクセス」配下に表示される以下の監査ポリシーを有効化(成功/失敗)してください。
    • ファイル共有の監査
    • ファイルシステムの監査
    • ハンドル操作の監査
    • 詳細なファイル共有の監査
    • その他のオブジェクトアクセスイベントの監査
  • 監視対象のファイル/フォルダーに対してSACLを有効にする必要があります。通常、製品によって自動的に有効化されますが、自動的に有効化されない場合は、以下の権限を手動で設定してください。
    • フォルダーのスキャン/ファイルの実行
    • ファイルの作成/データの書き込み
    • フォルダーの作成/データの追加
    • 属性の書き込み
    • 拡張属性の書き込み
    • サブフォルダーとファイルの削除
    • 削除
    • アクセス許可の読み取り
    • アクセス許可の変更
    • 所有権の取得

管理対象がLinuxデバイスの場合:

  • 以下のパッケージをLinuxマシンにインストールする必要があります。
    • openssh-server(UI画面関連の操作用)
    • auditd
    • acl

    パッケージをインストールする際のシンタックスは、こちらのページをご確認ください。

  • 以下の点をご確認ください。
    • EventLog AnalyzerサーバーからLinuxマシンのSSHポート(デフォルト:22)にアクセス可能であること。
    • LinuxマシンからEventLog AnalyzerのWebサーバーポート(デフォルト:8400)にアクセス可能であること。

    ポートへの到達可否は、以下のコマンドで確認できます。

    echo > /dev/tcp/<EventLog Analyzerサーバーのホスト名/IPアドレス>/<EventLog Analyzerサーバーが使用するポート> && echo "Port is Reachable"

    )echo > /dev/tcp/ubuntu/8400 && echo "Port is Reachable"

    または

    telnet <EventLog Analyzerサーバーのホスト名/IPアドレス> <EventLog Analyzerサーバーが使用するポート>

    )telnet ubuntu 8400

  • 以下の点をご確認ください。
    • Linuxカーネルのバージョンが2.6.25以上であること。
    • Linux 監査フレームワークのバージョンが1.8以上であること。
  • 以下のルールが有効な場合は、「/etc/audit/audit.rules」からルールを削除してマシンを再起動する必要があります。
    • システムコールブロックルール:-a never,task
    • 不変のルール:-e 2
  • SUSEマシンの監査を有効にしている場合は、以下のルールを設定します。
    1. 「/etc/sysconfig/auditd」に移動します。
    2. 「AUDITD_DISABLE_CONTEXTS」を「no」(AUDITD_DISABLE_CONTEXTS = no)に設定します
  • Security-Enhanced Linux(SELinux)が存在する場合は、permissiveモードにするか、無効にする必要があります。
    1. 「getenforce」コマンドでSELinuxの状態を確認します。
    2. ステータスが「Enforced」の場合、ファイル「/etc/selinux/config」に移動します。
    3. 「SELINUX」を「permissive」(SELINUX = permissive)に設定します。
    4. サーバーを再起動します。

注記

  • サーバーは、こちらのドキュメントに記載されているアクションに対してのみエージェントの資格情報を使用します。
  • Linuxデバイス上のファイル/フォルダーに対する監視を設定すると、以下のアクションを監視します。
    • 読み取り
    • 書き込み
    • 実行
    • 属性変更

Auditdには、rootまたはsudo権限が必要なため、ユーザーに権限がない場合は以下の手順を実施してください。

FIM エージェントをインストールするための権限

  1. SudoersファイルにAgentManagerを追加
  2. ディレクトリを作成して権限を割り当て

1. SudoersファイルにAgentManagerを追加

非sudoユーザーがsudo権限でAgentManagerを実行するには、以下の手順を実施します。

  1. 権限を設定するには、rootユーザーを使用します。
  2. 以下のコマンドを実行します。 visudo -f /etc/sudoers.d/<ユーザー名>
  3. sudoersファイルに以下の行を追加します。 <ユーザー名> ALL=NOPASSWD: /opt/ManageEngine/EventLogAnalyzer_Agent/bin/AgentManager *

    1. visudo -f /etc/sudoers.d/testuser
    2. testuser ALL=NOPASSWD: /opt/ManageEngine/EventLogAnalyzer_Agent/bin/AgentManager *

注記:インストール前にAgentManagerがsudoersファイルに追加されていることをご確認ください。確認するには、以下のコマンドを実行します。

cat /etc/sudoers.d/<ユーザー名>

)cat /etc/sudoers.d/testuser


出力結果)testuser ALL=NOPASSWD: /opt/ManageEngine/EventLogAnalyzer_Agent/bin/AgentManager *

SudoersファイルにAgentManagerを追加する理由:

以下のアクションに対してsudo権限が必要なためです。

  • rootユーザーにエージェントディレクトリとelafim.confファイル(auditまたはaudispディレクトリ下)の所有権を譲渡
  • Auditdサービスを再起動(root権限も必要になる場合があります。)

2. ディレクトリを作成して権限を割り当て

ManageEngine以外のディレクトリへの不正アクセスを防ぐには、rootユーザーとして以下のコマンドを実行します。

ディレクトリを作成

mkdir /opt/ManageEngine/

ディレクトリへの権限の付与

setfacl -m u:<ユーザー名>:rwx /opt/ManageEngine/

CentOS/RHEL v8以降/Ubuntu/openSUSE/Debian/Fedoraの場合

setfacl -m u:<ユーザー名>:wx /etc/audit/ /etc/audit/plugins.d/

CentOS/RHEL v6からv7.9の場合

setfacl -m u:<ユーザー名>:wx /etc/audisp/ /etc/audisp/plugins.d/

監査ルールに権限を付与

setfacl -m u:<ユーザー名>:r /etc/audit/audit.rules

)setfacl -m u:testuser:rwx /opt/ManageEngine/


ファイル監視の設定手順

ファイル監視の設定手順は、以下のとおりです。

  1. [設定]タブ → [ログソースの構成] → [ファイル監視]に移動します。
  2. 監視対象デバイスに応じて、WindowsまたはLinuxタブをクリックします。
  3. [+FIMを追加]をクリックします。
  4. デバイスを選択後、認証情報を入力し、監視するファイル/フォルダーを選択します。

    注記:Linuxデバイスを選択する場合、上記に加えてSSHポート番号を指定する必要があります。

  5. [フィルターを除外]のオプションでは、以下の項目を指定(監視対象から除外)できます。
    1. ファイルの種類
    2. 特定のサブフォルダー
    3. 全てのサブフォルダー
  6. ファイル/フォルダーに変更を加えたユーザーを監査したい場合は、[ユーザー名を監査]にチェックを入れます。

    注記:Linuxデバイスを監査する場合、ユーザー名は自動的に監査されます。

  7. [設定する]をクリックします。

一括ファイル監視の設定

複数のデバイスにある同じファイルやフォルダーを監視対象に加える必要がある場合は、一括ファイル監視機能を使用することができます。

  1. [設定]タブ → [ログソースの構成] → [ファイル監視]に移動します。
  2. 監視対象デバイスに応じて、WindowsまたはLinuxタブをクリックします。
  3. [+FIMを追加]をクリック後、画面右上の[複数のデバイスを設定]をクリックします。
  4. ファイル/フォルダーが置かれているデバイスを選択後、認証情報を入力し、ファイルテンプレートを選択します。

    注記:Linuxデバイスを選択する場合、上記に加えてSSHポート番号を指定する必要があります。

  5. [設定する]をクリックします。

注記

  • ファイル監視したいデバイスに既にエージェントがインストールされている場合、ファイル監視は自動的に有効になります。
  • ファイルを監視したいデバイスにエージェントがインストールされていない場合、エージェントがインストールされ、ファイル監視が有効になります。
  • フォルダー上で発生した各変更に対して生成されるログの量は、ファイルサーバーのパフォーマンスに影響を与える可能性があることをご留意ください。影響を抑えるために、ファイル監視を必要なファイル/フォルダに限定することを推奨します。

ファイル監視テンプレートの管理

同じファイルやフォルダーを複数のデバイスで監視する必要がある場合は、テンプレートを作成してデバイスに割り当てることができます。ファイル監視テンプレートの作成手順は、以下のとおりです。

  1. [設定]タブ → [ログソースの構成] → [ファイル監視]に移動後、画面右上の[ファイル監視テンプレートを管理]をクリックします。
  2. 監視対象デバイスに応じて、WindowsまたはLinuxタブをクリックします。
  3. [+ファイル監視テンプレートを追加]をクリックします。
  4. テンプレート名を入力し、ファイル/フォルダーの場所を選択します。
  5. [フィルターを除外]のオプションでは、以下の項目を指定(監視対象から除外)できます。
    1. ファイルの種類
    2. 特定のサブフォルダー
    3. 全てのサブフォルダー
  6. ファイル/フォルダーに変更を加えたユーザーを監査したい場合は、[ユーザー名を監査]にチェックを入れます。
  7. [設定する]をクリックします。

作成されたすべてのテンプレートは表形式で一覧表示され、編集または削除することができます。