AIX システムログを収集する

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

このドキュメントでは、Bindplane を使用して AIX システムログを Google Security Operations に取り込む方法について説明します。パーサーは、grok パターンを使用してログからフィールドを抽出し、さまざまなログ形式を処理します。次に、抽出されたフィールドを UDM にマッピングし、データ型を変換して、送信元 IP、ホスト名、ユーザーなどの特定のフィールドの有無に基づいてイベントタイプを設定します。

始める前に

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

  • Google SecOps インスタンス
  • Windows 2012 SP2 以降、または systemd を使用する Linux ホスト
  • プロキシの背後で実行している場合は、Bindplane エージェントの要件に従ってファイアウォール ポートが開いていることを確認します。
  • AIX システムホストへの特権アクセス
  • AIX ホストと Bindplane エージェント間のネットワーク接続(UDP ポート 514)

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
    

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 エージェントを構成する

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

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

    receivers:
      udplog:
        # Replace the port and IP address as required
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: <CUSTOMER_ID>
        endpoint: malachiteingestion-pa.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'AIX_SYSTEM'
        raw_log_field: body
        ingestion_labels:
          environment: prod
          source: aix
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    
    • 自社のインフラストラクチャでの必要性に応じて、ポートと IP アドレスを置き換えます。
    • <CUSTOMER_ID> は、実際の顧客 ID に置き換えます。
    • /path/to/ingestion-authentication-file.json の値を、Google SecOps の取り込み認証ファイルを取得するで認証ファイルを保存したパスに更新します。

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

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

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

    net stop BindPlaneAgent && net start BindPlaneAgent
    

AIX システムで Syslog 転送を構成する

  1. 特権アクセスで AIX システムホストにログインします。
  2. テキスト エディタ(vinano など)を使用して /etc/syslog.conf ファイルを編集します。
  3. 次の行を追加して、ログを Bindplane エージェントに転送します。

    *.info    @<BINDPLANE_AGENT_IP>
    
    • <BINDPLANE_AGENT_IP> は、Bindplane エージェントの IP アドレスに置き換えます。
    • セレクタ(*.info)とアクション(@<BINDPLANE_AGENT_IP>)の区切り文字として、1 つ以上のタブまたはスペースを使用します。
    • セレクタ *.info は、優先度 info 以上のすべてのログを転送します。必要に応じて、要件に合わせてファシリティと優先度を調整します。
  4. 構成ファイルを保存します。

  5. syslogd デーモンを更新して変更を適用します。

    refresh -s syslogd
    
    • refresh コマンドが機能しない場合は、SRC コマンドを使用してデーモンを再起動します。

      stopsrc -s syslogd
      startsrc -s syslogd
      
  6. syslogd デーモンが実行されていることを確認します。

    lssrc -s syslogd
    
  7. AIX ホストと Bindplane エージェントの間で UDP ポート 514 が許可されていることを確認します。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
application target.application 値は、Grok パターンを使用して message フィールドから抽出され、直接割り当てられます。
cmddata target.process.command_line 値は、Grok パターンを使用して message フィールドから抽出され、直接割り当てられます。
command_line principal.process.command_line 値は、Grok パターンを使用して description フィールドから抽出され、直接割り当てられます。
description metadata.description 値は、Grok パターンを使用して message フィールドから抽出され、直接割り当てられます。
folder target.process.file.full_path 値は、Grok パターンを使用して message フィールドから抽出され、直接割り当てられます。
hostname principal.hostname 値は、Grok パターンを使用して message フィールドから抽出され、直接割り当てられます。タイムスタンプは、grok と date フィルタを使用して、ログ メッセージの ts フィールドから抽出されます。特定のフィールドの有無に基づいてパーサー ロジックによって決定されます。src_ip または hostname が存在する場合は、STATUS_UPDATE です。user は存在していても、他のものが存在しない場合は、USER_UNCATEGORIZED です。それ以外の場合は GENERIC_EVENT です。「AIX_SYSTEM」にハードコードされます。「AIX_SYSTEM」にハードコードされます。「AIX_SYSTEM」にハードコードされています。
intermediary_hostip intermediary.ip 値は、Grok パターンを使用して message フィールドから抽出され、直接割り当てられます。
sc_summary security_result.summary 値は、Grok パターンを使用して description フィールドから抽出され、直接割り当てられます。
severity security_result.severity 値は severity フィールドから取得されます。severity が「info」の場合(大文字と小文字を区別しない)、UDM 値は「INFORMATIONAL」になります。severity が「Err」(大文字と小文字を区別しない)の場合、UDM 値は「ERROR」になります。
src_ip principal.ip 値は、Grok パターンを使用して message フィールドまたは description フィールドから抽出され、直接割り当てられます。
src_port principal.port 値は、Grok パターンを使用して description フィールドから抽出され、直接割り当てられます。
sys_log_host intermediary.hostname 値は、Grok パターンを使用して message フィールドから抽出され、直接割り当てられます。
syslog_priority security_result.priority_details 値は、Grok パターンを使用して message フィールドから抽出され、直接割り当てられます。
ts timestamp タイムスタンプは、grok と date フィルタを使用して、ログ メッセージの ts フィールドから抽出されます。
user principal.user.userid 値は、Grok パターンを使用して message フィールドまたは description フィールドから抽出され、直接割り当てられます。

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