VMware Networking and Security Virtualization(NSX)Manager のログを収集する

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

このドキュメントでは、VMware Networking and Security Virtualization(NSX)Manager のログを収集する方法について説明します。パーサーは、メッセージ形式に基づいてさまざまな Grok パターンを使用してフィールドを抽出します。次に、Key-Value の解析、JSON の解析、条件ロジックを実行して、抽出されたフィールドを UDM にマッピングし、さまざまなログ形式を処理して、追加のコンテキストでデータを拡充します。

始める前に

  • Google Security Operations インスタンスがあることを確認します。
  • Windows 2016 以降、または systemd を使用する Linux ホストを使用していることを確認します。
  • プロキシの背後で実行している場合は、ファイアウォールのポートが開いていることを確認します。
  • VMWare NSX への管理者権限があることを確認します。

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

  1. Google SecOps コンソールにログインします。
  2. [SIEM 設定] > [コレクション エージェント] に移動します。
  3. Ingestion Authentication File をダウンロードします。Bindplane エージェントをインストールするシステムにファイルを安全に保存します。

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

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

Bindplane エージェントをインストールする

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: vmware_nsx
            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. /path/to/ingestion-authentication-file.json の値を、Google SecOps の取り込み認証ファイルを取得するで認証ファイルを保存したパスに更新します。

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

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

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

    net stop BindPlaneAgent && net start BindPlaneAgent
    

NSX Edge の Syslog 構成

  1. vSphere Web Client にログインします。
  2. [Networking & Security] > [NSX Edges] に移動します。
  3. 構成する特定の NSX Edge インスタンスを選択します。
  4. [Syslog Settings](Syslog 設定)に移動します。
    1. NSX 6.4.4 以降の場合:
      • [管理] > [設定] > [アプライアンス設定] に移動します。
      • [設定] > [Syslog 構成を変更] をクリックします。
    2. NSX 6.4.3 以前の場合:
      • [管理] > [設定] > [構成] に移動します。
      • [詳細] ダイアログで、[変更] をクリックします。
  5. Syslog サーバーの詳細を構成します。
    • サーバー: Syslog サーバー(Bindplane)の IP アドレスまたはホスト名を入力します。
    • プロトコル: Bindplane の構成に応じて、[UDP] または [TCP] を選択します。
    • ポート: ポート番号を入力します(Bindplane の構成に応じて)。
  6. [OK] をクリックして設定を保存します。

NSX Manager の Syslog 構成

  1. 次のように、管理者の認証情報を使用して NSX Manager ウェブ インターフェースにログインします。
    • https://<NSX-Manager-IP> または https://<NSX-Manager-Hostname>
  2. [アプライアンスの設定を管理] > [全般] に移動します。
  3. [編集] をクリックして Syslog サーバー設定を構成します。
  4. Syslog サーバーの詳細を入力します。
    • サーバー: Syslog サーバー(Bindplane)の IP アドレスまたはホスト名を入力します。
    • プロトコル: Bindplane の構成に応じて、[UDP] または [TCP] を選択します。
    • ポート: ポート番号を入力します(Bindplane の構成に応じて)。
  5. [OK] をクリックして設定を保存します。

NSX Controller の Syslog 構成

  1. vSphere Web Client にログインします。
  2. [Networking & Security] > [Installation and Upgrade] > [Management] > [NSX Controller Nodes] に移動します。
  3. コントローラ ノードを管理する NSX Manager を選択します。
  4. [Common Controller Attributes Edit] をクリックします。
  5. [Syslog Servers] ダイアログで、[Add] をクリックします。
    1. Syslog サーバーのホスト名または IP アドレスを入力します。
    2. UDP プロトコルを選択します(Bindplane の構成に応じて選択します)。
    3. ログレベルを設定します(例: INFO)。
  6. [OK] をクリックして設定を保存します。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
DST event.idm.read_only_udm.target.ip 宛先 IP アドレスは、未加工ログの DST フィールドから抽出されます。
ID event.idm.read_only_udm.metadata.product_log_id プロダクトログ ID は、未加工ログの ID フィールドから抽出されます。
MAC event.idm.read_only_udm.principal.mac MAC アドレスは、未加工ログの MAC フィールドから抽出されます。
ModuleName event.idm.read_only_udm.metadata.product_event_type プロダクト イベントのタイプは、未加工ログの ModuleName フィールドから抽出されます。
Operation event.idm.read_only_udm.principal.resource.attribute.labels.value オペレーションは未加工ログの Operation フィールドから抽出され、キー「Operation」のラベルとして追加されます。
PROTO event.idm.read_only_udm.network.ip_protocol IP プロトコルは、未加工ログの PROTO フィールドから抽出されます。
RES event.idm.read_only_udm.target.resource.name ターゲット リソース名は、未加工ログの RES フィールドから抽出されます。
SRC event.idm.read_only_udm.principal.ip 送信元 IP アドレスは、未加工ログの SRC フィールドから抽出されます。
SPT event.idm.read_only_udm.principal.port 送信元ポートは、未加工ログの SPT フィールドから抽出されます。
UserName event.idm.read_only_udm.principal.user.userid ユーザー ID は、未加工ログの UserName フィールドから抽出されます。
app_type event.idm.read_only_udm.principal.application プリンシパル アプリケーションは、未加工ログの app_type フィールドから抽出されます。
application event.idm.read_only_udm.target.application ターゲット アプリケーションは、未加工ログの application フィールドから抽出されます。
audit event.idm.read_only_udm.principal.resource.attribute.labels.value 監査値は未加工ログの audit フィールドから抽出され、キー「audit」を持つラベルとして追加されます。
cancelTimeUTC event.idm.read_only_udm.principal.resource.attribute.last_update_time 最終更新日時は、未加工ログの cancelTimeUTC フィールドから取得されます。
client event.idm.read_only_udm.principal.ip または event.idm.read_only_udm.principal.administrative_domain client フィールドが IP アドレスの場合、プリンシパル IP にマッピングされます。それ以外の場合は、プリンシパル管理ドメインにマッピングされます。
comp event.idm.read_only_udm.principal.resource.attribute.labels.value コンポーネントの値は、未加工ログの comp フィールドから抽出され、キー「Comp」を持つラベルとして追加されます。
datetime event.idm.read_only_udm.metadata.event_timestamp イベントのタイムスタンプは、未加工ログの datetime フィールドから抽出されます。
description event.idm.read_only_udm.metadata.description 説明は、未加工ログの description フィールドから抽出されます。
details event.idm.read_only_udm.principal.resource.attribute.labels 詳細は未加工ログの details フィールドから抽出され、ラベルとして追加されます。
direction event.idm.read_only_udm.network.direction direction フィールドが「OUT」の場合は、「OUTBOUND」にマッピングされます。
dst_ip event.idm.read_only_udm.target.ip 宛先 IP アドレスは、未加工ログの dst_ip フィールドから抽出されます。
DPT event.idm.read_only_udm.target.port 宛先ポートは、未加工ログの DPT フィールドから抽出されます。
errorCode event.idm.read_only_udm.security_result.detection_fields エラーコードは、未加工ログの errorCode フィールドから抽出され、検出フィールドとして追加されます。
eventType event.idm.read_only_udm.metadata.product_event_type プロダクト イベントのタイプは、未加工ログの eventType フィールドから抽出されます。
filepath event.idm.read_only_udm.principal.process.file.full_path ファイルパスは、未加工ログの filepath フィールドから抽出されます。
hostname event.idm.read_only_udm.principal.ip ホスト名は未加工ログの hostname フィールドから抽出され、IP アドレスの場合はプリンシパル IP にマッピングされます。
kv_data さまざまな UDM フィールド kv_data の Key-Value ペアは、キーに基づいてさまざまな UDM フィールドにマッピングされます。
kv_data1 さまざまな UDM フィールド kv_data1 の Key-Value ペアは、キーに基づいてさまざまな UDM フィールドにマッピングされます。
kv_data2 さまざまな UDM フィールド kv_data2 の Key-Value ペアは、キーに基づいてさまざまな UDM フィールドにマッピングされます。
kv_data3 さまざまな UDM フィールド kv_data3 の Key-Value ペアは、キーに基づいてさまざまな UDM フィールドにマッピングされます。
kv_data4 さまざまな UDM フィールド kv_data4 の Key-Value ペアは、キーに基づいてさまざまな UDM フィールドにマッピングされます。
level event.idm.read_only_udm.security_result.severity level フィールドが「INFO」の場合は、「INFORMATIONAL」にマッピングされます。「ERROR」の場合は「ERROR」にマッピングされます。
managedExternally event.idm.read_only_udm.principal.resource.attribute.labels.value managedExternally の値は、未加工ログの managedExternally フィールドから抽出され、キー「managedExternally」を持つラベルとして追加されます。
message さまざまな UDM フィールド メッセージ フィールドが解析され、さまざまな UDM フィールドが抽出されます。
message_data event.idm.read_only_udm.principal.resource.attribute.labels.value メッセージ データは未加工ログの message_data フィールドから抽出され、キー「message」のラベルとして追加されます。
network_status event.idm.read_only_udm.additional.fields ネットワーク ステータスは、未加工ログの network_status フィールドから抽出され、キー「Network_Connection_Status」の追加フィールドとして追加されます。
new_value さまざまな event.idm.read_only_udm.target フィールド 新しい値は未加工ログの new_value フィールドから抽出され、さまざまなターゲット フィールドに入力されます。
node event.idm.read_only_udm.principal.resource.attribute.labels.value ノード値は未加工ログの node フィールドから抽出され、キー「node」を持つラベルとして追加されます。
old_value さまざまな UDM フィールド 古い値は未加工ログの old_value フィールドから抽出され、さまざまな UDM フィールドに入力するために使用されます。
payload さまざまな UDM フィールド ペイロードは未加工ログの payload フィールドから抽出され、さまざまな UDM フィールドに入力するために使用されます。
pid event.idm.read_only_udm.target.process.pid プロセス ID は、未加工ログの pid フィールドから抽出されます。
reqId event.idm.read_only_udm.metadata.product_log_id プロダクトログ ID は、未加工ログの reqId フィールドから抽出されます。
resourceId event.idm.read_only_udm.principal.resource.product_object_id プロダクト オブジェクト ID は、未加工ログの resourceId フィールドから抽出されます。
s2comp event.idm.read_only_udm.principal.resource.attribute.labels.value s2comp 値は、未加工ログの s2comp フィールドから抽出され、キー「s2comp」を持つラベルとして追加されます。
ses event.idm.read_only_udm.network.session_id セッション ID は、未加工ログの ses フィールドから抽出されます。
src_host event.idm.read_only_udm.principal.hostname プリンシパルのホスト名は、未加工ログの src_host フィールドから抽出されます。
src_ip event.idm.read_only_udm.principal.ip 送信元 IP アドレスは、未加工ログの src_ip フィールドから抽出されます。
src_ip1 event.idm.read_only_udm.principal.ip 送信元 IP アドレスは、未加工ログの src_ip1 フィールドから抽出されます。
src_port event.idm.read_only_udm.principal.port 送信元ポートは、未加工ログの src_port フィールドから抽出されます。
startTimeUTC event.idm.read_only_udm.principal.resource.attribute.creation_time 作成時間は、未加工ログの startTimeUTC フィールドから取得されます。
subcomp event.idm.read_only_udm.network.application_protocol または event.idm.read_only_udm.principal.resource.attribute.labels.value subcomp フィールドが「http」の場合、値は「HTTP」にマッピングされます。そうでない場合は、キー「Sub Comp」のラベルとして追加されます。
tname event.idm.read_only_udm.principal.resource.attribute.labels.value tname 値は未加工ログの tname フィールドから抽出され、キー「tname」を持つラベルとして追加されます。
type event.idm.read_only_udm.metadata.product_event_type プロダクト イベントのタイプは、未加工ログの type フィールドから抽出されます。
uid event.idm.read_only_udm.principal.user.userid ユーザー ID は、未加工ログの uid フィールドから抽出されます。
update event.idm.read_only_udm.principal.resource.attribute.labels.value 更新値は未加工ログの update フィールドから抽出され、キー「update」を持つラベルとして追加されます。
user event.idm.read_only_udm.principal.user.user_display_name ユーザーの表示名は、未加工ログの user フィールドから抽出されます。
vmw_cluster event.idm.read_only_udm.target.resource.name ターゲット リソース名は、未加工ログの vmw_cluster フィールドから抽出されます。
vmw_datacenter event.idm.read_only_udm.target.resource.attribute.labels.value vmw_datacenter の値は、未加工ログの vmw_datacenter フィールドから抽出され、キー「vmw_datacenter」のラベルとして追加されます。
vmw_host event.idm.read_only_udm.target.hostname または event.idm.read_only_udm.target.ip vmw_host フィールドがホスト名の場合、ターゲット ホスト名にマッピングされます。それ以外の場合は、IP アドレスの場合はターゲット IP にマッピングされます。
vmw_object_id event.idm.read_only_udm.target.resource.product_object_id プロダクト オブジェクト ID は、未加工ログの vmw_object_id フィールドから抽出されます。
vmw_product event.idm.read_only_udm.target.application ターゲット アプリケーションは、未加工ログの vmw_product フィールドから抽出されます。
vmw_vcenter event.idm.read_only_udm.target.cloud.availability_zone アベイラビリティ ゾーンは、未加工ログの vmw_vcenter フィールドから抽出されます。
vmw_vcenter_id event.idm.read_only_udm.target.resource.attribute.labels.value vmw_vcenter_id の値は、未加工ログの vmw_vcenter_id フィールドから抽出され、キー「vmw_vcenter_id」のラベルとして追加されます。
vmw_vr_ops_appname event.idm.read_only_udm.intermediary.application 中間アプリケーションは、未加工ログの vmw_vr_ops_appname フィールドから抽出されます。
vmw_vr_ops_clustername event.idm.read_only_udm.intermediary.resource.name 中間リソース名は、未加工ログの vmw_vr_ops_clustername フィールドから抽出されます。
vmw_vr_ops_clusterrole event.idm.read_only_udm.intermediary.resource.attribute.roles.name 中間リソースのロール名は、未加工ログの vmw_vr_ops_clusterrole フィールドから抽出されます。
vmw_vr_ops_hostname event.idm.read_only_udm.intermediary.hostname 中間ホスト名は、未加工ログの vmw_vr_ops_hostname フィールドから抽出されます。
vmw_vr_ops_id event.idm.read_only_udm.intermediary.resource.product_object_id 中間プロダクト オブジェクト ID は、未加工ログの vmw_vr_ops_id フィールドから抽出されます。
vmw_vr_ops_logtype event.idm.read_only_udm.intermediary.resource.attribute.labels.value vmw_vr_ops_logtype の値は、未加工ログの vmw_vr_ops_logtype フィールドから抽出され、キー「vmw_vr_ops_logtype」のラベルとして追加されます。
vmw_vr_ops_nodename event.idm.read_only_udm.intermediary.resource.attribute.labels.value vmw_vr_ops_nodename の値は、未加工ログの vmw_vr_ops_nodename フィールドから抽出され、キー「vmw_vr_ops_nodename」のラベルとして追加されます。他のフィールドの値に基づく一連の条件文によって決定されます。有効な値は、USER_LOGIN、NETWORK_CONNECTION、STATUS_UPDATE、GENERIC_EVENT です。「VMWARE_NSX」にハードコードされています。「VMWARE_NSX」にハードコードされています。「VMWARE_NSX」にハードコードされています。Operation が「LOGIN」で target_details が空でない、または message に「authentication failure」が含まれ、application が空でない場合は、「AUTHTYPE_UNSPECIFIED」に設定します。PROTO が「ssh2」の場合は「SSH」に設定し、subcomp が「http」の場合は「HTTP」に設定します。他のフィールドの値に基づく一連の条件文によって決定されます。指定できる値は ALLOW と BLOCK です。vmw_cluster が空でない場合、「VIRTUAL_MACHINE」に設定します。

変更点

2023-11-15

  • 機能強化: [古い値] フィールドから:
  • 「unique_id」を「principal.resource.product_object_id」にマッピングしました。
  • 「resource_type」を「principal.resource.sub_type」にマッピングしました。
  • 「_create_user」、「_last_modified_user」を「principal.user.email_addresses」にマッピングしました。
  • 「action」を「security_result.action」にマッピングしました。
  • 「rule_id」を「security_result.rule_id」にマッピングしました。
  • 「display_name」を「principal.resource.name」にマッピングしました。
  • 「_last_modified_time」を「principal.resource.attribute.last_update_time」にマッピングしました。
  • 「_create_time」を「principal.resource.attribute.creation_time」にマッピングしました。
  • 「parent_path」を「principal.resource.parent」にマッピングしました。
  • 「path」を「principal.process.file.full_path」にマッピングしました。
  • 「id」を「principal.resource.id」にマッピングしました。
  • [新しい値] フィールドから:
  • 「resource_type」を「target.resource.sub_type」にマッピングしました。
  • 「unique_id」を「target.resource.product_object_id」にマッピングしました。
  • 「path」を「target.process.file.full_path」にマッピングしました。
  • 「display_name」を「target.resource.name」にマッピングしました。
  • 「id」を「target.resource.id」にマッピングしました。
  • vmw_host の値に基づいて、「vmw_host」を「target_details.hostname」または「target_details.ip」にマッピングしました。
  • 「vmw_product」を「target.application」にマッピングしました。
  • 「vmw_vcenter」を「target.cloud.availability_zone」にマッピングしました。
  • 「vmw_cluster」を「target.resource.name」にマッピングしました。
  • 「vmw_object_id」を「target.resource.product_object_id」にマッピングしました。
  • 「vmw_datacenter」を「target.resource.attribute.labels」にマッピングしました。
  • 「vmw_vcenter_id」を「target.resource.attribute.labels」にマッピングしました。
  • 「vmw_vr_ops_logtype」を「intermediary.resource.attribute.labels」にマッピングしました。
  • 「vmw_vr_ops_appname」を「intermediary.application」にマッピングしました。
  • 「vmw_vr_ops_hostname」を「intermediary.hostname」にマッピングしました。
  • 「vmw_vr_ops_nodename」を「intermediary.resource.attribute.labels」にマッピングしました。
  • 「vmw_vr_ops_clustername」を「intermediary.resource.name」にマッピングしました。
  • 「vmw_vr_ops_clusterrole」を「intermediary.resource.attribute.labels.roles.name」にマッピングしました。
  • 「vmw_vr_ops_id」を「intermediary.resource.product_object_id」にマッピングしました。

2023-10-13

  • 機能強化: ポートを含む「sourceIp」を解析するように Grok パターンを変更しました。
  • 「vmw_host」、「vmw_product」、「vmw_vcenter」、「vmw_cluster」、「vmw_vr_ops_id」、「vmw_object_id」、「vmw_datacenter」、「vmw_vcenter_id」、「vmw_vr_ops_logtype」、「vmw_vr_ops_appname」、「vmw_vr_ops_hostname」、「vmw_vr_ops_nodename」、「vmw_vr_ops_clustername」、「vmw_vr_ops_clusterrole」、「managedExternally」、「update」、「filepath」、「eventType」、「resourceId」を「principal.resource.attribute.labels」にマッピングしました。
  • 「payload」のフィールドを「principal.resource.attribute.labels」にマッピングしました。
  • 「client」を「principal.ip」にマッピングしました
  • 「new_value」のフィールドを「target.resource.attribute.labels」にマッピングしました。

2023-10-03

  • 機能強化: UDM フィールドにマッピングする前に、「sourceIp」が有効な IP アドレスかどうかを確認する Grok パターンを追加しました。

2023-09-12

  • 機能強化: [新しい値] フィールドと [古い値] フィールドを含む Syslog ログのサポートを追加しました。

2023-06-26

  • 「PASS」、「DROP」、「REJECT」、「NAT」、「NONAT」、「RDR」、「NORDR」、「PUNT」、「REDIRECT」、「COPY」の値を「additional.fields」キーの「Network_Status」にマッピングしました。

2023-03-07

  • 「errorCode」を「security_result.detection_fields」にマッピングしました。
  • 「app_type」を「principal.application」にマッピングしました。
  • 「tname」、「s2comp」、「node」を「principal.resource.attribute.labels」にマッピングしました。
  • 「exe」を「target.process.file.full_path」にマッピングしました。
  • 「dst_ip」を「target.ip」にマッピングしました。
  • 「ses」を「network.session_id」にマッピングしました。
  • 「hostname」を「principal.ip」にマッピングしました。
  • 「direction」を「network.direction」にマッピングしました。
  • 「reqId」を「metadata.product_log_id」にマッピングしました。

2022-06-10

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

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。