Juniper NetScreen ファイアウォール ログを収集する

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

このドキュメントでは、Juniper NetScreen ファイアウォール ログを Google Security Operations に送信するように設定する方法について説明します。パーサーは grok パターンを使用してフィールドを抽出し、さまざまな syslog 形式と JSON ペイロードを処理します。次に、抽出されたフィールドを UDM にマッピングし、IP アドレス、ユーザー名、ポートなどの特定のフィールドの有無に基づいて、イベントをネットワーク接続、ユーザー ログイン、ステータス更新、汎用イベントとして分類します。

始める前に

  • Juniper NetScreen ファイアウォールに対する管理者権限があることを確認します。
  • Google Security Operations インスタンスがあることを確認します。

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

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

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

    receivers:
        tcplog:
            # Replace the port and IP address as required
            listen_address: "0.0.0.0:54525"
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the path to the credentials file you downloaded in Step 1
            creds: '/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
            ingestion_labels:
                log_type: SYSLOG
                namespace: juniper_firewall
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
    
  3. 自社のインフラストラクチャでの必要性に応じて、ポートと IP アドレスを置き換えます。

  4. <customer_id> は、実際の顧客 ID に置き換えます。

  5. /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
    

Juniper Networks NetScreen ファイアウォールを構成する

  1. Juniper NetScreen のウェブ インターフェースにログインします。
  2. [Configuration] > [Report settings] > [Log settings] を選択します。
  3. [イベントの重大度] チェックボックスをすべてオンにします。
  4. [適用] をクリックします。
  5. [Configuration] > [Report settings] > [Syslog] を選択します。
  6. [Syslog メッセージを有効にする] チェックボックスをオンにします。
  7. [送信元インターフェース] リストで、syslog パケットの送信元となる NetScreen インターフェースを選択します。
  8. [Syslog サーバー] セクションで、[有効にする] チェックボックスをオンにして、次の情報を入力します。
    1. IP/ホスト名: Bindplane IP アドレスを入力します。
    2. ポート: Bindplane ポート番号を入力します。
    3. MDR 機能: Local0 機能レベルを選択します。
    4. ファシリティ: Local0 ファシリティ レベルを選択します。
  9. [適用] をクリックします。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
ACTION security_result.action_details GROK フィルタと KV フィルタで抽出された ACTION フィールドから直接マッピングされます。
APPLICATION principal.application GROK フィルタと KV フィルタで抽出された APPLICATION フィールドから直接マッピングされます。
application target.application GROK で抽出された application フィールドから直接マッピングされます。
attack-name security_result.threat_name GROK で抽出された attack-name フィールドから直接マッピングされます。
bytes-from-client network.sent_bytes GROK で抽出された bytes-from-client フィールドから直接マッピングされます。
bytes-from-server network.received_bytes GROK で抽出された bytes-from-server フィールドから直接マッピングされます。
command target.process.command_line GROK で抽出された command フィールドから直接マッピングされます。
destination-address target.ip GROK で抽出された destination-address フィールドから直接マッピングされます。
destination-port target.port GROK で抽出された destination-port フィールドから直接マッピングされます。
destination-zone additional.fields[].value.string_value GROK フィルタと KV フィルタで抽出された destination-zone フィールドから直接マッピングされます。keydestination-zone に設定します。
destination_zone-name security_result.detection_fields[].value GROK で抽出された destination_zone-name フィールドから直接マッピングされます。keydstzone に設定します。
dst-nat-rule-name security_result.detection_fields[].value GROK で抽出された dst-nat-rule-name フィールドから直接マッピングされます。keydst-nat-rule-name に設定します。
dst-nat-rule-type security_result.detection_fields[].value GROK で抽出された dst-nat-rule-type フィールドから直接マッピングされます。keydst-nat-rule-type に設定します。
elapsed-time network.session_duration.seconds GROK で抽出された elapsed-time フィールドから直接マッピングされます。
encrypted security_result.detection_fields[].value GROK で抽出された encrypted フィールドから直接マッピングされます。keyencrypted に設定します。
event_time metadata.event_timestamp タイムスタンプは、さまざまな GROK パターンを使用して未加工のログから抽出されます。優先順位は event_timeTIMESTAMP_ISO8601SYSLOGTIMESTAMP の順です。その後、タイムスタンプ オブジェクトに変換されます。
host principal.hostnameintermediary.hostname typeNetScreen の場合、intermediary.hostname にマッピングされます。それ以外の場合は principal.hostname にマッピングされます。
host_ip intermediary.ip GROK で抽出された host_ip フィールドから直接マッピングされます。
icmp-type network.icmp_type GROK で抽出された icmp-type フィールドから直接マッピングされます。
ident target.application GROK フィルタと JSON フィルタで抽出された ident フィールドから直接マッピングされます。
inbound-bytes network.received_bytes GROK で抽出された inbound-bytes フィールドから直接マッピングされます。
inbound-packets network.received_packets GROK で抽出された inbound-packets フィールドから直接マッピングされます。
ip principal.ipintermediary.ip typeNetScreen の場合、intermediary.ip にマッピングされます。それ以外の場合は principal.hostname にマッピングされます。
message security_result.description メッセージが JSON で、log_message_data フィールドが存在しない場合、message フィールドが説明として使用されます。
msg_data security_result.summary GROK で抽出された msg_data フィールドから直接マッピングされます。
nat-destination-address target.nat_ip GROK で抽出された nat-destination-address フィールドから直接マッピングされます。
nat-destination-port target.nat_port GROK で抽出された nat-destination-port フィールドから直接マッピングされます。
nat-source-address principal.nat_ip GROK で抽出された nat-source-address フィールドから直接マッピングされます。
nat-source-port principal.nat_port GROK で抽出された nat-source-port フィールドから直接マッピングされます。
outbound-bytes network.sent_bytes GROK で抽出された outbound-bytes フィールドから直接マッピングされます。
outbound-packets network.sent_packets GROK で抽出された outbound-packets フィールドから直接マッピングされます。
packets-from-client network.sent_packets GROK で抽出された packets-from-client フィールドから直接マッピングされます。
packets-from-server network.received_packets GROK で抽出された packets-from-server フィールドから直接マッピングされます。
packet-incoming-interface security_result.detection_fields[].value GROK で抽出された packet-incoming-interface フィールドから直接マッピングされます。keypacket-incoming-interface に設定します。
pid target.process.pid GROK フィルタと JSON フィルタで抽出された pid フィールドから直接マッピングされます。
policy-name security_result.rule_name GROK で抽出された policy-name フィールドから直接マッピングされます。
PROFILE additional.fields[].value.string_value GROK フィルタと KV フィルタで抽出された PROFILE フィールドから直接マッピングされます。keyPROFILE に設定します。
protocol-idprotocol-name network.ip_protocol GROK を介して抽出された protocol-id フィールドまたは protocol-name フィールドからマッピングされます。値は、対応する IP プロトコル列挙型に変換されます。
REASON additional.fields[].value.string_value GROK フィルタと KV フィルタで抽出された REASON フィールドから直接マッピングされます。keyREASON に設定します。
reason security_result.description GROK で抽出された reason フィールドから直接マッピングされます。
rule-name security_result.rule_name GROK で抽出された rule-name フィールドから直接マッピングされます。
SESSION_ID network.session_id GROK フィルタと KV フィルタで抽出された SESSION_ID フィールドから直接マッピングされます。
service-name security_result.detection_fields[].value GROK で抽出された service-name フィールドから直接マッピングされます。keysrvname に設定します。
source-address principal.ip GROK で抽出された source-address フィールドから直接マッピングされます。
source-port principal.port GROK で抽出された source-port フィールドから直接マッピングされます。
source-zone additional.fields[].value.string_value GROK フィルタと KV フィルタで抽出された source-zone フィールドから直接マッピングされます。keysource-zone に設定します。
source_zone-name security_result.detection_fields[].value GROK で抽出された source_zone-name フィールドから直接マッピングされます。keysrczone に設定します。
src-nat-rule-name security_result.detection_fields[].value GROK で抽出された src-nat-rule-name フィールドから直接マッピングされます。keysrc-nat-rule-name に設定します。
src-nat-rule-type security_result.detection_fields[].value GROK で抽出された src-nat-rule-type フィールドから直接マッピングされます。keysrc-nat-rule-type に設定します。
subtype metadata.product_event_type GROK で抽出された subtype フィールドから直接マッピングされます。
threat-severity security_result.severity_details GROK で抽出された threat-severity フィールドから直接マッピングされます。
time metadata.event_timestamp GROK フィルタと JSON フィルタで抽出された time フィールドから直接マッピングされます。タイムスタンプ オブジェクトに変換されます。
username target.user.userid GROK で抽出された username フィールドから直接マッピングされます。
metadata.log_type JUNIPER_FIREWALL にハードコードされています。type フィールドに基づいて JUNIPER_FIREWALL または NetScreen にハードコードされます。JUNIPER_FIREWALL にハードコードされています。パーサーのロジックに基づいて ALLOW または BLOCK に設定されます。subtype フィールドと severity_details フィールドに基づいて、LOW、MEDIUM、HIGH、INFORMATIONAL、CRITICAL のいずれかに設定されます。

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