VyOS ログを収集する

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

このドキュメントでは、Bindplane を使用して VyOS ログを Google Security Operations に取り込む方法について説明します。パーサーは、syslog メッセージからフィールドを抽出します。主に DHCP イベントに焦点を当てています。grok パターンを使用して、プロセス(dhcpd、カーネルなど)に基づいてメッセージを識別して分類し、関連情報を UDM フィールドにマッピングします。DHCP リクエスト、確認応答、オファーなどのイベントタイプは、それぞれ異なる方法で処理されます。また、DHCP 以外のログの一般的なイベントの詳細を入力し、ネットワーク接続情報をマッピングします(利用可能な場合)。

始める前に

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

  • Google SecOps インスタンス
  • Windows 2016 以降、または systemd を使用する Linux ホスト
  • プロキシの背後で実行している場合は、ファイアウォール ポートが開いていることを確認する
  • VyOS への特権アクセス

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. 構成ファイルにアクセスします。
    • config.yaml ファイルを見つけます。通常、Linux では /etc/bindplane-agent/ ディレクトリに、Windows ではインストール ディレクトリにあります。
    • テキスト エディタ(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: 'VYOS'
            raw_log_field: body
            ingestion_labels:
    
    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
    

VyOS で Syslog を構成する

  1. CLI を使用して VyOS ルーターにログインします。
  2. 次のコマンドを入力します。

    set system syslog marker interval 1200
    set system syslog remote <bindplane-address> facility local0 level info port <bindolane-port> protocol <udp-or-tcp> format include-timezone
    
  3. 次のフィールドを詳細情報に置き換えてください。

    • <bindplane-address>: Bindplane エージェントの IP アドレスを入力します。
    • <bindolane-port>: Bindplane エージェントのポート番号(514 など)を入力します。
    • <udp-or-tcp>: Bindplane の構成に応じて、UDP または TCP を入力します(例: UDP)。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
clientIp principal.ip DHCP メッセージから抽出されたクライアントの IP アドレス。
clientMac principal.mac DHCP メッセージから抽出されたクライアントの MAC アドレス。
datetime metadata.event_timestamp ログメッセージから抽出されたタイムスタンプ。
dst_ipaddress target.ip ログメッセージから抽出された宛先 IP アドレス。
hostname observer.hostname ログ メッセージから抽出されたホスト名。process などのフィールドに基づいてパーサーによって決定されます。GENERIC_EVENTNETWORK_CONNECTIONNETWORK_DHCPSTATUS_UPDATE のいずれかになります。「VYOS」にハードコードされています。
msg metadata.description 解析ロジックに応じて、ログの元のメッセージまたはその一部。process が「dhcpd」の場合は「DHCP Event」に設定されます。「VYOS DHCP」にハードコードされます。「VYOS」にハードコードされています。
network.dhcp.chaddr network.dhcp.chaddr DHCP メッセージから抽出されたクライアントの MAC アドレス。
network.dhcp.ciaddr network.dhcp.ciaddr DHCPREQUEST メッセージ内のクライアント IP アドレス。DHCP メッセージのオペコード。DHCPREQUEST と DHCPINFORM の場合は「BOOTREQUEST」、DHCPACK と DHCPNAK の場合は「BOOTREPLY」に設定します。DHCP メッセージのタイプ。eventType から派生し、REQUESTACKINFORMNAKOFFER のいずれかになります。
network.dhcp.yiaddr network.dhcp.yiaddr DHCPACK または DHCPOFFER メッセージ内の(クライアント)IP アドレス。process が「dhcpd」の場合は、「DHCP」に設定します。
pri_host principal.hostname DHCP メッセージ内のクライアントに関連付けられたホスト名。
rem_msg metadata.description 最初の解析後のメッセージの残りの部分。場合によっては説明に使用されます。
src_ipaddress principal.ip ログメッセージから抽出された送信元 IP アドレス。
timestamp event.timestamp ログエントリのタイムスタンプ。

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