Array Networks SSL VPN ログを収集する

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

このドキュメントでは、Bindplane を使用して Array Networks SSL VPN ログを Google Security Operations に取り込む方法について説明します。パーサーは Syslog メッセージからフィールドを抽出し、UDM にマッピングします。Grok パターンを使用して、HTTP リクエスト、SSL メッセージ、一般的なステータス更新などのさまざまなログ形式を識別し、メッセージ内の Key-Value ペアと CSV データを条件付きで解析して、プリンシパル、ターゲット、ネットワーク情報、セキュリティ結果などの UDM フィールドに入力します。パーサーは、抽出されたデータに基づいてさまざまなイベントタイプを処理し、ネットワーク イベント、ユーザー イベント、汎用イベントとして分類します。

始める前に

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

  • Google SecOps インスタンス
  • Windows 2016 以降、または systemd を使用する Linux ホスト
  • プロキシの背後で実行している場合は、Bindplane エージェントの要件に従ってファイアウォール ポートが開いていることを確認します。
  • Array Networks SSL VPN 管理コンソールまたはアプライアンス(AG シリーズまたは vxAG)への特権アクセス

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: 'ARRAYNETWORKS_VPN'
        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
    

Array Networks SSL VPN で Syslog 転送を構成する

  1. Array Networks SSL VPN 管理コンソールのウェブ UI にログインします。
  2. 左側のナビゲーション メニューで、[管理ツール] をクリックします。
  3. [モニタリング] をクリックします。
  4. [ロギング] タブをクリックします。
  5. [Syslog Servers] サブタブをクリックします。
  6. [REMOTE SYSLOG SERVER CONFIGURATION] セクションで、[Add Server Entry] をクリックします。
  7. 次の構成の詳細を入力します。
    • ホスト IP: Bindplane エージェントの IP アドレスを入力します。
    • ホストポート: Bindplane エージェントのポート番号(例: 514)を入力します。
    • プロトコル: Bindplane エージェントの構成に応じて、[UDP] または [TCP] を選択します。
    • 送信元ポート: デフォルトのままにするか、ネットワーク構成で必要な場合は指定します。
    • レベル: [情報] を選択します。
  8. [保存] をクリックして、構成を適用します。
  9. ページの上部にある [Save Configuration] をクリックして、変更を保存します。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
clientip principal.ip 未加工ログのメッセージの clientip フィールドから抽出されたクライアントの IP アドレス。
column1 principal.ip 未加工ログの column1 から抽出された IP アドレス。
column1 principal.asset.ip 未加工ログの column1 から抽出された IP アドレス。
column3 network.received_bytes 受信バイト数(符号なし整数に変換)。
column4 network.http.method 未加工ログの column4 から抽出された HTTP メソッド。
column7 target.ip 未加工ログの column7 から抽出されたターゲット IP アドレス。
dport target.port 宛先ポートを整数に変換したもの。
dst target.ip 宛先 IP アドレス。
dst target.asset.ip 宛先 IP アドレス。
hostname principal.hostname 未加工ログ メッセージの hostname フィールドから抽出されたホスト名。
hostname principal.asset.hostname 未加工ログ メッセージの hostname フィールドから抽出されたホスト名。
http_method network.http.method 未加工ログのメッセージから抽出された HTTP メソッド。
id principal.application 未加工ログのアプリケーション ID。
mac principal.mac 未加工ログのメッセージの mac フィールドから抽出された MAC アドレス。
msg metadata.product_event_type 未加工ログのメッセージ フィールド。プロダクト イベントのタイプとして使用されます。バックスラッシュと引用符を削除した後、security_result.description にも使用されます。
product_name metadata.product_name 未加工ログのメッセージから抽出された商品名。
prxy_ip intermediary.ip プロキシの IP アドレス。
prxy_port intermediary.port プロキシポートを整数に変換したもの。
response_code network.http.response_code HTTP レスポンス コードを整数に変換したもの。
security_result.action security_result.action column2 の値に基づいてパーサー ロジックによって決定されます。column2 に「TCP_MISS」が含まれている場合は「BLOCK」、それ以外の場合は「UNKNOWN_ACTION」。
security_result.description security_result.description バックスラッシュと引用符を削除した後の、未加工ログのメッセージ フィールド。
sport principal.port ソースポートを整数に変換したもの。
src principal.ip 送信元 IP アドレス。
src principal.asset.ip 送信元 IP アドレス。
target_hostname target.hostname 未加工ログのメッセージから抽出されたターゲット ホスト名。
timestamp metadata.event_timestamp 未加工ログ メッセージから抽出され、タイムスタンプ オブジェクトに解析されたタイムスタンプ。
uri target.url ターゲット URL の一部。uri_param と組み合わせて完全な URL を形成します。
uri_param target.url ターゲット URL の一部。uri と組み合わせて完全な URL を形成します。
user target.user.userid 未加工ログのメッセージから抽出されたユーザー名。
user_agent_string network.http.user_agent 未加工ログのメッセージから抽出されたユーザー エージェント文字列。
vpn target.user.group_identifiers 未加工ログのメッセージから抽出された VPN 名。
metadata.event_type metadata.event_type has_principalhas_targethas_http_valueuser などのフィールドの組み合わせに基づいて、パーサー ロジックによって決定されます。「NETWORK_HTTP」、「NETWORK_CONNECTION」、「STATUS_UPDATE」、「USER_UNCATEGORIZED」、「GENERIC_EVENT」のいずれかです。
network.ip_protocol network.ip_protocol メッセージに「TCP」が含まれている場合は、「TCP」に設定されます。

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