CA LDAP ログを収集する

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

このドキュメントでは、Bindplane エージェントを使用して CA LDAP ログを Google Security Operations に取り込む方法について説明します。

CA Directory(以前の Symantec Directory)は、X.500 標準に基づく LDAP v2/v3 準拠のディレクトリ サーバーです。アラーム、トレース、警告、クエリ、概要、接続、診断、更新、統計情報ログなど、包括的なロギング機能を備えたエンタープライズ レベルのディレクトリ サービスを提供し、ディレクトリ オペレーションとセキュリティ イベントをモニタリングします。

始める前に

次の前提条件を満たしていることを確認してください。

  • Google SecOps インスタンス
  • Windows Server 2016 以降、または systemd を使用する Linux ホスト
  • Bindplane エージェントと CA Directory サーバー間のネットワーク接続
  • プロキシの背後で実行している場合は、Bindplane エージェントの要件に従ってファイアウォール ポートが開いていることを確認します。
  • CA Directory サーバーへの特権アクセス(root または管理者)
  • ロギングが有効になっている CA Directory がインストールされ、構成されている

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

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

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

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

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

次の手順に沿って、Windows または Linux オペレーティング システムに Bindplane エージェントをインストールします。

  • Windows のインストール

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

      msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
      
    3. インストールが完了するまで待ちます。

    4. 次のコマンドを実行して、インストールの内容を確認します。

      sc query observiq-otel-collector
      

      サービスは RUNNING と表示されます。

  • 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
      
    3. インストールが完了するまで待ちます。

    4. 次のコマンドを実行して、インストールの内容を確認します。

      sudo systemctl status observiq-otel-collector
      

      サービスが [アクティブ(実行中)] と表示されます。

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

その他のインストール オプションとトラブルシューティングについては、Bindplane エージェントのインストール ガイドをご覧ください。

Syslog を取り込んで Google SecOps に送信するように Bindplane エージェントを構成する

構成ファイルを見つける

  • Linux:

    sudo nano /etc/bindplane-agent/config.yaml
    
  • Windows:

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

構成ファイルを編集します。

  1. config.yaml の内容全体を次の構成に置き換えます。

    receivers:
      udplog:
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/ca_directory:
        compression: gzip
        creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
        customer_id: 'YOUR_CUSTOMER_ID'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: CA_LDAP
        raw_log_field: body
        ingestion_labels:
          env: production
          source: ca_directory
    
    service:
      pipelines:
        logs/ca_directory_to_chronicle:
          receivers:
            - udplog
          exporters:
            - chronicle/ca_directory
    
  2. 各プレースホルダを次のように置き換えます。

    • レシーバーの構成:

      • listen_address: 0.0.0.0:514 に設定して、UDP ポート 514 のすべてのインターフェースでリッスンします。

        • Linux の非 root インストールでは、ポート 1514 以降を使用します。
        • ポートが rsyslog 転送で構成されたポートと一致していることを確認する
    • エクスポータの構成:

      • creds_file_path: 取り込み認証ファイルのフルパス:

        • Linux: /etc/bindplane-agent/ingestion-auth.json
        • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
      • customer_id: YOUR_CUSTOMER_IDcustomer ID に置き換えます。詳細については、Google SecOps の顧客 ID を取得するをご覧ください。

      • endpoint: リージョン エンドポイント URL:

        • 米国: malachiteingestion-pa.googleapis.com
        • ヨーロッパ: europe-malachiteingestion-pa.googleapis.com
        • アジア: asia-southeast1-malachiteingestion-pa.googleapis.com
      • log_type: CA_LDAP(CA Directory の Chronicle 取り込みラベル)に設定します。

      • ingestion_labels: フィルタリングと整理用の省略可能なラベル

構成ファイルを保存する

編集が完了したら、ファイルを保存します。

  • Linux: Ctrl+OEnterCtrl+X の順に押します。
  • Windows: [ファイル>保存] をクリックします。

Bindplane エージェントを再起動して変更を適用する

  • Linux で Bindplane エージェントを再起動するには:

    1. 次のコマンドを実行します。

      sudo systemctl restart observiq-otel-collector
      
    2. サービスが実行されていることを確認します。

      sudo systemctl status observiq-otel-collector
      
    3. ログでエラーを確認します。

      sudo journalctl -u observiq-otel-collector -f
      
  • Windows で Bindplane エージェントを再起動するには:

    1. 次のいずれかのオプションを選択します。

      • 管理者としてコマンド プロンプトまたは PowerShell を開きます。

        net stop observiq-otel-collector && net start observiq-otel-collector
        
      • サービス コンソール:

        1. Win+R キーを押して「services.msc」と入力し、Enter キーを押します。
        2. observIQ OpenTelemetry Collector を見つけます。
        3. 右クリックして [再起動] を選択します。
    2. サービスが実行されていることを確認します。

      sc query observiq-otel-collector
      
    3. ログでエラーを確認します。

      type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
      

rsyslog を使用して CA LDAP Syslog 転送を構成する

このセクションでは、ログを Bindplane エージェントに転送するように CA Directory サーバーで rsyslog を構成する方法について説明します。

CA Directory ログファイルの場所を特定する

CA Directory は、次の場所にログファイルを保存します。

  • Linux: /opt/CA/Directory/dxserver/logs/
  • Windows: C:\Program Files\CA\Directory\dxserver\logs\

ログファイルの名前は、DSA 名に基づく命名パターン(democorp_alarmdemocorp_warndemocorp_trace など)に従います。

使用可能なログタイプ

CA Directory は、次のログタイプを生成します。

  • アラームログ: 重大なイベント(常に有効)
  • 警告ログ: エラーと警告
  • トレースログ: 詳細なオペレーション トレース
  • クエリログ: タイムスタンプ付きの詳細なオペレーション情報
  • 概要ログ: オペレーションの概要
  • 接続ログ: 接続と切断のイベント
  • 診断ログ: 拒否されたオペレーション
  • 統計情報ログ: 1 分単位の運用統計情報
  • 更新ログ: 追加、変更、名前変更、削除のオペレーション
  • タイムログ: オペレーションのタイミング情報

Linux で rsyslog を構成する

  1. root または sudo 権限で CA Directory サーバーにログインします。

  2. rsyslog がまだインストールされていない場合は、インストールします。

    sudo yum install rsyslog
    

    Debian/Ubuntu の場合:

    sudo apt-get install rsyslog
    
  3. CA Directory の新しい rsyslog 構成ファイルを作成します。

    sudo nano /etc/rsyslog.d/ca-directory.conf
    
  4. CA Directory ログを転送するには、次の構成を追加します。

    # Load the imfile module for file monitoring
    module(load="imfile" PollingInterval="10")
    
    # Monitor CA Directory alarm logs
    input(type="imfile"
        File="/opt/CA/Directory/dxserver/logs/*_alarm*"
        Tag="ca-directory-alarm"
        Severity="error"
        Facility="local0")
    
    # Monitor CA Directory warn logs
    input(type="imfile"
        File="/opt/CA/Directory/dxserver/logs/*_warn*"
        Tag="ca-directory-warn"
        Severity="warning"
        Facility="local0")
    
    # Monitor CA Directory trace logs
    input(type="imfile"
        File="/opt/CA/Directory/dxserver/logs/*_trace*"
        Tag="ca-directory-trace"
        Severity="info"
        Facility="local0")
    
    # Monitor CA Directory query logs
    input(type="imfile"
        File="/opt/CA/Directory/dxserver/logs/*_query*"
        Tag="ca-directory-query"
        Severity="info"
        Facility="local0")
    
    # Monitor CA Directory connection logs
    input(type="imfile"
        File="/opt/CA/Directory/dxserver/logs/*_connection*"
        Tag="ca-directory-connection"
        Severity="info"
        Facility="local0")
    
    # Monitor CA Directory update logs
    input(type="imfile"
        File="/opt/CA/Directory/dxserver/logs/*_update*"
        Tag="ca-directory-update"
        Severity="info"
        Facility="local0")
    
    # Forward all CA Directory logs to Bindplane agent
    if $syslogtag contains 'ca-directory' then @@BINDPLANE_AGENT_IP:514
    & stop
    
  5. BINDPLANE_AGENT_IP は、Bindplane エージェント ホストの IP アドレスに置き換えます。

    • Bindplane エージェントが同じサーバーにある場合: 127.0.0.1
    • Bindplane エージェントが別のサーバーにある場合: IP アドレス(192.168.1.100 など)を入力します。
  6. 構成ファイルを保存します。

    Ctrl+OEnterCtrl+X の順に押します。

  7. rsyslog 構成の構文を確認します。

    sudo rsyslogd -N1
    
  8. rsyslog サービスを再起動します。

    sudo systemctl restart rsyslog
    
  9. rsyslog が実行されていることを確認します。

    sudo systemctl status rsyslog
    
  10. rsyslog ログでエラーを確認します。

    sudo tail -f /var/log/messages
    

Windows で rsyslog を構成する

  1. rsyslog ウェブサイトから Windows 用 rsyslog をダウンロードしてインストールします。

  2. rsyslog 構成ファイルを開きます。

    notepad "C:\Program Files\rsyslog\rsyslog.conf"
    
  3. 次の構成を追加します。

    # Load the imfile module for file monitoring
    module(load="imfile" PollingInterval="10")
    
    # Monitor CA Directory alarm logs
    input(type="imfile"
        File="C:\\Program Files\\CA\\Directory\\dxserver\\logs\\*_alarm*"
        Tag="ca-directory-alarm"
        Severity="error"
        Facility="local0")
    
    # Monitor CA Directory warn logs
    input(type="imfile"
        File="C:\\Program Files\\CA\\Directory\\dxserver\\logs\\*_warn*"
        Tag="ca-directory-warn"
        Severity="warning"
        Facility="local0")
    
    # Monitor CA Directory trace logs
    input(type="imfile"
        File="C:\\Program Files\\CA\\Directory\\dxserver\\logs\\*_trace*"
        Tag="ca-directory-trace"
        Severity="info"
        Facility="local0")
    
    # Forward all CA Directory logs to Bindplane agent
    if $syslogtag contains 'ca-directory' then @@BINDPLANE_AGENT_IP:514
    & stop
    
  4. BINDPLANE_AGENT_IP は、Bindplane エージェント ホストの IP アドレスに置き換えます。

  5. 構成ファイルを保存します。

  6. rsyslog サービスを再起動します。

    net stop rsyslog
    net start rsyslog
    

CA Directory ロギングを有効にする

CA Directory で必要なログタイプが有効になっていることを確認します。

  1. DSA 構成ファイルを編集します。

    • Linux: /opt/CA/Directory/dxserver/config/servers/democorp.dxc
    • Windows: C:\Program Files\CA\Directory\dxserver\config\servers\democorp.dxc
  2. 次のロギング設定を確認または追加します。

        set alarm-log = true;
        set warn-log = true;
        set trace-log = true;
        set query-log = true;
        set connection-log = true;
        set update-log = true;
    
  3. 構成ファイルを保存します。

  4. CA Directory DSA を再起動します。

    • Linux:

      dxserver stop democorp
      dxserver start democorp
      
    • Windows:

      net stop "CA Directory DSA - democorp"
      net start "CA Directory DSA - democorp"
      

ログ転送を確認する

  1. LDAP クエリまたは認証試行を実行して、CA Directory でテスト アクティビティを生成します。

  2. Bindplane エージェント ログを調べて、ログが受信されていることを確認します。

    • Linux:

      sudo journalctl -u observiq-otel-collector -f
      
    • Windows:

      type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
      
  3. Google SecOps コンソールにログインし、CA Directory ログがログビューアに表示されていることを確認します。

CA Directory のロギングの詳細については、Broadcom CA Directory のドキュメントをご覧ください。

rsyslog の構成例の詳細については、一元化されたロギングに関する Broadcom ナレッジベースの記事をご覧ください。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
agent.ephemeral_id、logstash.irm_region、logstash.irm_environment、logstash.irm_site、host.os.name additional.fields それぞれキー「ephemeral_id」、「irm_region」、「irm_environment」、「irm_site」、「os_name」のラベルとして統合されます。
host.architecture hardware.cpu_platform 値を直接コピーしました
logstash.process.host intermediary.hostname 値を直接コピーしました
logstash.collect.timestamp metadata.collected_timestamp 日付フィルタを使用してタイムスタンプとして解析
msg metadata.description 値を直接コピーしました
metadata.event_type 「STATUS_UPDATE」に設定
agent.type、agent.version observer.application 両方が空でない場合は「%{agent.type} %{agent.version}」として連結されます。それ以外の場合は「%{agent.type}」となります。
agent.type、agent.id observer.asset_id 「%{agent.type}: %{agent.id}」として連結されます
agent.hostname observer.hostname 値を直接コピーしました
host.id principal.asset.asset_id 「CA_LDAP:%{host.id}」として連結されます
ハードウェア principal.asset.hardware ハードウェア オブジェクトから統合されました
host.hostname principal.hostname 値を直接コピーしました
host.ip principal.ip host.ip 配列から統合
host.mac principal.mac host.mac 配列から統合
host.os.family principal.platform 「(rhel|redhat)」と一致する場合は「LINUX」に設定
host.os.kernel principal.platform_patch_level 値を直接コピーしました
host.os.version principal.platform_version 値を直接コピーしました
log.file.path principal.process.file.full_path 値を直接コピーしました
syslog_severity security_result.severity 「(?i)(DEFAULT|DEBUG|INFO|NOTICE)」に一致する場合は「INFORMATIONAL」、「(?i)ERROR」に一致する場合は「ERROR」、「(?i)WARNING」に一致する場合は「MEDIUM」、「(?i)(CRITICAL|ALERT|EMERGENCY)」に一致する場合は「HIGH」に設定します。
syslog_severity security_result.severity_details 値を直接コピーしました
metadata.product_name 「CA_LDAP」に設定します。
metadata.vendor_name 「CA_LDAP」に設定します。

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