NetApp ONTAP ログを収集する

以下でサポートされています。

このドキュメントでは、Syslog を使用して NetApp ONTAP のログを収集する方法について説明します。パーサーは、正規表現を使用して Syslog メッセージからフィールドを抽出します。抽出されたフィールドを対応する UDM(統合データモデル)フィールドにマッピングし、未加工のログデータをセキュリティ分析用の構造化形式に効果的に変換します。

始める前に

  • Google Security Operations インスタンスがあることを確認します。
  • Windows 2016 以降、または systemd を使用する Linux ホストを使用していることを確認します。
  • プロキシの背後で実行している場合は、ファイアウォールのポートが開いていることを確認します。
  • NetApp ONTAP クラスタに対する管理者権限があることを確認します。
  • ONTAP が Syslog サーバー(Bindplane)と通信できることを確認します。

Google SecOps 取り込み認証ファイルを取得する

  1. Google SecOps コンソールにログインします。
  2. [SIEM 設定] > [収集エージェント] に移動します。
  3. 取り込み認証ファイルをダウンロードします。BindPlane をインストールするシステムにファイルを安全に保存します。

Google SecOps のお客様 ID を取得する

  1. Google SecOps コンソールにログインします。
  2. [SIEM 設定] > [プロファイル] に移動します。
  3. [組織の詳細] セクションから [お客様 ID] をコピーして保存します。

BindPlane Agent をインストールする

Windows のインストール

  1. 管理者として [コマンド プロンプト] または [PowerShell] を開きます。
  2. 次のコマンドを実行します。

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Linux のインストール

  1. root 権限または sudo 権限でターミナルを開きます。
  2. 次のコマンドを実行します。

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

その他のインストール リソース

Syslog を取り込んで Google SecOps に送信するように BindPlane Agent を構成する

  1. 構成ファイルにアクセスします。

    • config.yaml ファイルを見つけます。通常、Linux では /etc/bindplane-agent/ ディレクトリ、Windows ではインストール ディレクトリにあります。
    • テキスト エディタ(nanovi、メモ帳など)を使用してファイルを開きます。
  2. config.yaml ファイルを次のように編集します。

    receivers:
        udplog:
            # Replace the below port <54525> and IP <0.0.0.0> with your specific values
            listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: netapp_ontap
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. インフラストラクチャの要件に応じてポートと IP アドレスを置き換えます。

  4. <customer_id> は実際のお客様 ID に置き換えます。

  5. [Google SecOps 取り込み認証ファイルを取得する] セクションで、/path/to/ingestion-authentication-file.json を認証ファイルが保存されているパスに更新します。

BindPlane Agent を再起動して変更を適用する

  • Linux で BindPlane Agent を再起動するには、次のコマンドを実行します。

    sudo systemctl restart bindplane-agent
    
  • Windows で BindPlane Agent を再起動するには、[サービス] コンソールを使用するか、次のコマンドを入力します。

    net stop BindPlaneAgent && net start BindPlaneAgent
    

ONTAP で Syslog の宛先を構成する

  1. SSH を使用して ONTAP クラスタにアクセスし、<ontap-cluster-ip> を ONTAP クラスタの管理 IP に置き換えます。

    ssh admin@<ontap-cluster-ip>
    
  2. 既存のイベント フィルタと通知を確認します。

    event filter show
    event notification show
    
  3. Syslog の宛先を作成し、<syslog-server-ip><syslog-server-port> を Syslog サーバー情報(Bindplane)に置き換えます。

    event notification destination create -name syslog-ems -syslog <syslog-server-ip> -syslog-port <syslog-server-port> -syslog-transport udp-unencrypted
    
  4. -syslog-transport のその他のオプション:

    • udp-unencrypted(デフォルト)
    • tcp-unencrypted
    • tcp-encrypted(TLS 用)。
  5. Syslog の宛先確認します。

    event notification destination show
    

既存のイベントフィルタを構成する

  • デフォルトのフィルタを Syslog の宛先にリンクします。

    event notification create -filter-name no-info-debug-events -destinations syslog-ems
    event notification create -filter-name default-trap-events -destinations syslog-ems
    

省略可: カスタム フィルタを作成して設定する

  1. 認証イベント フィルタ(ログイン / ログアウト): 説明が「Logging in」または「Logging out」と一致するログをキャプチャします。

    event filter create -filter-name auth_events
    event filter rule add -filter-name auth_events -type include -message-name *login* -severity info
    event filter rule add -filter-name auth_events -type include -message-name *logout* -severity info
    
  2. セキュリティ検出フィールド フィルタ: nmsdk_language、nmsdk_platform、nmsdk_version、netapp_version に関連するログをキャプチャします。

    event filter create -filter-name security_fields
    event filter rule add -filter-name security_fields -type include -message-name *nmsdk_language* -severity info
    event filter rule add -filter-name security_fields -type include -message-name *nmsdk_platform* -severity info
    event filter rule add -filter-name security_fields -type include -message-name *nmsdk_version* -severity info
    event filter rule add -filter-name security_fields -type include -message-name *netapp_version* -severity info
    
  3. 重大度ベースのログフィルタ: 重大度が informational の場合のログをキャプチャします。

    event filter create -filter-name severity_info
    event filter rule add -filter-name severity_info -type include -message-name * -severity info
    
  4. ネットワーク アクティビティ フィルタ: src_ip と src_port を含むログをキャプチャします。

    event filter create -filter-name network_activity
    event filter rule add -filter-name network_activity -type include -message-name *src_ip* -severity info
    event filter rule add -filter-name network_activity -type include -message-name *src_port* -severity info
    
  5. URL ターゲット ログ フィルタ: URL 情報を含むログをキャプチャします。

    event filter create -filter-name url_target
    event filter rule add -filter-name url_target -type include -message-name *url* -severity info
    
  6. 各フィルタを Syslog の宛先に適用します。

    event notification create -filter-name auth_events -destinations syslog-ems
    event notification create -filter-name security_fields -destinations syslog-ems
    event notification create -filter-name severity_info -destinations syslog-ems
    event notification create -filter-name network_activity -destinations syslog-ems
    event notification create -filter-name url_target -destinations syslog-ems
    
  7. 通知を確認します。

    event notification show
    

UDM マッピング テーブル

ログフィールド UDM マッピング 論理
コード マッピングされません
説明 metadata.description Grok パターンを使用してログ メッセージから抽出されます。説明が「Logging out」または「Logging in」の場合にのみ存在します。
intermediary_host intermediary.hostname Grok パターンを使用してログ メッセージから抽出されます。
nmsdk_language security_result.detection_fields.value Grok パターンを使用してログ メッセージから抽出されます。この値は、detection_fields オブジェクトに「value」として追加され、「key」は「nmsdk_language」になります。
nmsdk_platform security_result.detection_fields.value Grok パターンを使用してログ メッセージから抽出されます。この値は、detection_fields オブジェクトに「value」として追加され、「key」は「nmsdk_platform」になります。
nmsdk_version security_result.detection_fields.value Grok パターンを使用してログ メッセージから抽出されます。この値は、detection_fields オブジェクトに「value」として追加され、「key」は「nmsdk_version」になります。
netapp_version security_result.detection_fields.value Grok パターンを使用してログ メッセージから抽出されます。この値は、detection_fields オブジェクトに「value」として追加され、「key」は「netapp_version」になります。
product_event_type metadata.product_event_type Grok パターンを使用してログ メッセージから抽出されます。
security_result.summary security_result.summary Grok パターンを使用してログ メッセージから抽出されます。
重要度 security_result.severity 重大度が「info」の場合は「INFORMATIONAL」に設定します(大文字と小文字を区別しない)。
src_ip principal.ip Grok パターンを使用してログ メッセージから抽出されます。
src_port principal.port Grok パターンを使用してログ メッセージから抽出されます。
ステータス security_result.summary Grok パターンを使用してログ メッセージから抽出されます。
ts metadata.event_timestamp.seconds Grok パターンを使用してログ メッセージから抽出され、タイムスタンプに変換されます。
url target.url Grok パターンを使用してログ メッセージから抽出されます。
user target.user.userid Grok パターンを使用してログ メッセージから抽出されます。
extensions.auth.type 説明が「Logging out」または「Logging in」の場合は、「AUTHTYPE_UNSPECIFIED」に設定します。
metadata.event_type 説明が「Logging in」の場合は「USER_LOGIN」に設定します。
metadata.event_type 説明が「Logging out」の場合は「USER_LOGOUT」に設定します。
metadata.event_type 説明が「Logging in」または「Logging out」でない場合は、「SCAN_UNCATEGORIZED」に設定します。
metadata.log_type 「NETAPP_ONTAP」に設定します。
metadata.product_name 「NETAPP_ONTAP」に設定します。
metadata.vendor_name 「NETAPP_ONTAP」に設定します。
target.platform nmsdk_platform に「windows」が含まれている場合は、「WINDOWS」に設定します(大文字と小文字を区別しない)。

変更

2023-04-03

  • 新しく作成されたパーサー。

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps の専門家から回答を得る。