Brocade スイッチのログを収集する
以下でサポートされています。
    
      
      
        
        
        
  
    
      Google SecOps
    
  
      
    
      
      
        
        
        
  
    
      SIEM
    
  
      
    
    
  このパーサーは、さまざまなログ形式に一致する Grok パターンを使用して、Brocade スイッチログからフィールドを抽出します。次に、抽出されたフィールドを UDM フィールドにマッピングし、さまざまなログ構造を処理して、ベンダーやプロダクト情報などのメタデータでデータを拡充します。また、パーサーは、最終的な UDM 出力を生成する前に、重大度のレベルの変換や重複メッセージの処理などのデータ変換も行います。
始める前に
- Google Security Operations インスタンスがあることを確認します。
- Windows 2016 以降、または systemd を使用する Linux ホストを使用していることを確認します。
- プロキシの背後で実行している場合は、ファイアウォール ポートが開いていることを確認します。
- Brocade スイッチに対する CLI 管理者権限があることを確認します。
Google SecOps の取り込み認証ファイルを取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [収集エージェント] に移動します。
- Ingestion Authentication File をダウンロードします。
Google SecOps のお客様 ID を取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [プロファイル] に移動します。
- [組織の詳細情報] セクションから [お客様 ID] をコピーして保存します。
Bindplane エージェントをインストールする
- Windows へのインストールの場合は、次のスクリプトを実行します。
 msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
- Linux へのインストールの場合は、次のスクリプトを実行します。
 sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
- その他のインストール オプションについては、インストール ガイドをご覧ください。
Syslog を取り込んで Google SecOps に送信するように Bindplane Agent を構成する
- Bindplane がインストールされているマシンにアクセスします。
- config.yamlファイルを次のように編集します。- receivers: tcplog: # Replace the below port <54525> and IP <0.0.0.0> with your specific values listen_address: "0.0.0.0:54525" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the creds location below according the placement of the credentials file you downloaded creds: '{ json file for creds }' # Replace <customer_id> below with your actual ID that you copied customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # You can apply ingestion labels below as preferred ingestion_labels: log_type: SYSLOG namespace: Brocade_Switch raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - tcplog exporters: - chronicle/chronicle_w_labels
- Bindplane エージェントを再起動して変更を適用します。 - sudo systemctl restart bindplane
Brocade スイッチから Syslog エクスポートを構成する
- 適切な認証情報を使用して、SSH または Telnet で Brocade スイッチに接続します。
- 次のコマンドを実行して、syslog サーバー(Bindplane)の IP アドレスまたはホスト名と ポートを指定します。 - syslogadmin --set -ip <IP> -port <Port>- 次に例を示します。 - syslogadmin --set -ip 10.10.10.10 -port 54525
- 次のコマンドを実行して、構成済みの syslog サーバーを表示します。 - syslogadmin --show -ip
UDM マッピング テーブル
| ログフィールド | UDM マッピング | 論理 | 
|---|---|---|
| application | additional.fields[].key: "application"additional.fields[].value.string_value: | KV_DATA フィールドが存在する場合に、未加工ログの application@1588フィールドから抽出された値。 | 
| class | additional.fields[].key: "class"additional.fields[].value.string_value: | KV_DATA フィールドが存在する場合に、未加工ログの class@1588フィールドから抽出された値。 | 
| domain | principal.administrative_domain | domainフィールドに一致する Grok パターンから抽出された値。 | 
| Event | additional.fields[].key: "event_category"additional.fields[].value.string_value: | KV_DATA フィールドが存在する場合に、未加工ログの arg0@1588フィールドから抽出された値。 | 
| event_id | metadata.product_log_id | event_idフィールドに一致する Grok パターンから抽出された値。 | 
| event_type | metadata.product_event_type | event_typeフィールドに一致する Grok パターンから抽出された値。 | 
| flags | additional.fields[].key: "flags"additional.fields[].value.string_value: | flagsフィールドに一致する Grok パターンから抽出された値。 | 
| Info | metadata.description | Infoフィールドから抽出された値。grok を使用して解析されます。 | 
| interface | app_protocol_src | KV_DATA フィールドが存在する場合に、未加工ログの interface@1588フィールドから抽出された値。network.application_protocolの派生に使用されます。 | 
| ip | principal.ip | ipフィールドから抽出された値。grok を使用して解析されます。Infoフィールドから抽出された IP と同じでない場合は、principal.ipに統合されます。 | 
| Info、IP Addr | principal.ip | Infoフィールド内のIP Addrフィールドから抽出された値。grok を使用して解析されます。 | 
| log | additional.fields[].key: "log"additional.fields[].value.string_value: | KV_DATA フィールドが存在する場合に、未加工ログの log@1588フィールドから抽出された値。 | 
| msg | metadata.description | msgフィールドから抽出された値。grok を使用して解析されます。 | 
| msgid | additional.fields[].key: "msgid"additional.fields[].value.string_value: | KV_DATA フィールドが存在する場合に、未加工ログの msgid@1588フィールドから抽出された値。 | 
| prin_host | principal.hostnameprincipal.asset.hostname | prin_hostフィールドに一致する Grok パターンから抽出された値。 | 
| product_version | metadata.product_version | product_versionフィールドに一致する Grok パターンから抽出された値。 | 
| repeat_count | additional.fields[].key: "repeat_count"additional.fields[].value.string_value: | msgフィールドから抽出された値。grok を使用して解析されます。 | 
| role、user_role | principal.user.attribute.roles[].name | role@1588フィールドまたはuser_roleフィールドから抽出された値。値が「admin」の場合は、「Admin」に置き換えられます。 | 
| sequence_number | additional.fields[].key: "sequence_number"additional.fields[].value.string_value: | sequence_numberフィールドに一致する Grok パターンから抽出された値。 | 
| severity | security_result.severity | severityフィールドから抽出された値。grok を使用して解析されます。UDM の重大度値(INFORMATIONAL、ERROR、CRITICAL、MEDIUM)にマッピングされます。 | 
| Status | security_result.summary | Statusフィールドから抽出された値。 | 
| switch_name | additional.fields[].key: "switch_name"additional.fields[].value.string_value: | switch_nameフィールドに一致する Grok パターンから抽出された値。 | 
| target_application | target.application | target_applicationフィールドに一致する Grok パターンから抽出された値。 | 
| time | additional.fields[].key: "time"additional.fields[].value.string_value: | kv_data3フィールド内のtimeフィールドから抽出された値。 | 
| timestamp | metadata.event_timestamp.seconds | timestampフィールドから抽出された値。日付フィルタを使用して解析されます。 | 
| user | principal.user.useridprincipal.user.user_display_name | userフィールドまたはuser@1588フィールドから抽出された値。grok を使用して解析されます。principal.hostnameからコピーされます。principal.ipからコピーされます。metadata.product_event_typeからコピーされるか、条件に基づいて「STATUS_UPDATE」に設定されます。ログのcreate_time.nanosからコピーされます。has_principal、has_target、has_userid、event_typeの値に基づいて、パーサーのロジックによって決定されます。「SYSTEM_AUDIT_LOG_UNCATEGORIZED」、「STATUS_UPDATE」、「GENERIC_EVENT」のいずれか。「BROCADE_SWITCH」にハードコードされてます。「BROCADE」にハードコードされます。「BROCADE_SWITCH」にハードコードされてます。interfaceフィールドから派生するか、interfaceフィールドに「SSH」が含まれている場合は「SSH」に設定されます。 | 
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。