Sophos DHCP のログを収集する
このドキュメントでは、Bindplane を使用して Sophos DHCP ログを Google Security Operations に取り込む方法について説明します。
パーサーは、grok や kv を使用して、Sophos DHCP syslog 形式のログからフィールドを抽出します。これらの値を統合データモデル(UDM)にマッピングし、イベントソースとタイプのデフォルトのメタデータ値を設定します。
始める前に
次の前提条件を満たしていることを確認してください。
- Google SecOps インスタンス。
- Windows 2016 以降、または systemd を使用する Linux ホスト。
- ネットワーク接続: プロキシの背後で実行している場合は、Bindplane エージェントの要件に従ってファイアウォール ポートが開いていることを確認します。
- Sophos Firewall/UTM 管理者 UI への特権アクセス。
Google SecOps の取り込み認証ファイルを取得する
- Google SecOps コンソールにログインします。
- [SIEM Settings] > [Collection Agent] に移動します。
- Ingestion Authentication File をダウンロードします。
- Bindplane をインストールするシステムにファイルを安全に保存します。
Google SecOps のお客様 ID を取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [プロファイル] に移動します。
- [組織の詳細情報] セクションから [お客様 ID] をコピーして保存します。
Bindplane エージェントをインストールする
次の手順に沿って、Windows または Linux オペレーティング システムに Bindplane エージェントをインストールします。
Windows のインストール
- 管理者として コマンド プロンプトまたは PowerShell を開きます。
次のコマンドを実行します。
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Linux のインストール
- root 権限または sudo 権限でターミナルを開きます。
次のコマンドを実行します。
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
その他のインストール リソース
その他のインストール オプションについては、こちらのインストール ガイドをご覧ください。
Syslog を取り込んで Google SecOps に送信するように Bindplane エージェントを構成する
構成ファイルにアクセスします。
config.yamlファイルを見つけます。通常、Linux では/opt/observiq-otel-collectorディレクトリに、Windows ではインストール ディレクトリにあります。- テキスト エディタ(
nano、vi、メモ帳など)を使用してファイルを開きます。
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: 'SOPHOS_DHCP' 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の値を、ステップ 1 で認証ファイルを保存したファイルパスに更新します。
Bindplane エージェントを再起動して変更を適用する
Linux で Bindplane エージェントを再起動するには、次のコマンドを実行します。
/opt/observiq-otel-collector/config.yamlWindows で Bindplane エージェントを再起動するには、Services コンソールを使用するか、次のコマンドを入力します。
net stop BindPlaneAgent && net start BindPlaneAgent
Sophos DHCP で Syslog 転送を構成する
- 管理者権限で Sophos Firewall/UTM 管理 UI にログインします。
- syslog の設定に移動します。
- Sophos Firewall: [System services] > [Log settings]。
- Sophos UTM: [Logging & Reporting] > [Log Settings] > [Remote Syslog Server]。
- [Syslog servers] で [Add] をクリックし、次の詳細情報を入力します。
- 名前: わかりやすい名前(
GoogleSecOps-BindPlaneなど)。 - IP アドレス/ドメイン: Bindplane Agent ホストの IP アドレス。
- ポート: Bindplane エージェントのポート(例:
514)。 - Facility: DAEMON。
- 重大度: 情報(社内ポリシーに応じて調整)。
- 形式: SYSLOG + KV に合わせるためのデバイス標準形式(key=value)。
- 名前: わかりやすい名前(
- [Save/Apply] をクリックして、DHCP 関連のログの転送を開始します。
UDM マッピング テーブル
| ログフィールド | UDM マッピング | 論理 |
|---|---|---|
msg |
metadata.description |
直接マッピングされます。 |
sub |
metadata.description |
直接マッピングされます。 |
log_date |
metadata.event_timestamp |
yyyy:MM:dd-HH:mm:ss として解析済み |
log_date_inner |
metadata.event_timestamp |
MMM dd HH:mm:ss として解析済み |
event_type |
metadata.event_type |
直接マッピングされます。 |
msg |
metadata.event_type |
マッピング: call=new → GENERIC_EVENT |
process_type |
metadata.event_type |
マッピング: "confd","ulogd" → GENERIC_EVENT、dhcpd → GENERIC_EVENT、dhcpd → `NETWORK_D... |
id |
metadata.product_event_type |
直接マッピングされます。 |
process_type |
metadata.product_event_type |
直接マッピングされます。 |
msg |
metadata.product_name |
マッピング: call=new → SOPHOS_DHCP |
process_type |
metadata.product_name |
マッピング: "confd","ulogd" → SOPHOS_DHCP |
msg |
metadata.vendor_name |
マッピング: call=new → SOPHOS |
process_type |
metadata.vendor_name |
マッピング: "confd","ulogd" → SOPHOS |
process_type |
network.application_protocol |
マッピング: dhcpd → DHCP |
src_mac |
network.dhcp.chaddr |
直接マッピングされます。 |
src_ip |
network.dhcp.ciaddr |
直接マッピングされます。 |
src_host |
network.dhcp.client_hostname |
直接マッピングされます。 |
dhcp_type |
network.dhcp.opcode |
マッピング: DHCPREQUEST → BOOTREQUEST、DHCPACK → BOOTREPLY、DHCPOFFER → BOOTREPLY、... |
process_type |
network.dhcp.opcode |
マッピング: dhcpd → BOOTREQUEST、dhcpd → BOOTREPLY |
dhcp_type |
network.dhcp.type |
マッピング: DHCPREQUEST → REQUEST、DHCPACK → ACK、DHCPOFFER → OFFER、DHCPNAK → NAK |
process_type |
network.dhcp.type |
マッピング: dhcpd → REQUEST、dhcpd → ACK、dhcpd → OFFER、dhcpd → NAK |
src_ip |
network.dhcp.yiaddr |
直接マッピングされます。 |
ip_protocol_out |
network.ip_protocol |
直接マッピングされます。 |
src_host |
observer.hostname |
直接マッピングされます。 |
dhcp_type |
observer.ip |
マッピング: DHCPREQUEST → src_ip |
process_type |
observer.ip |
マッピング: dhcpd → src_ip |
src_ip |
observer.ip |
統合済み |
client |
principal.hostname |
直接マッピングされます。 |
src_host |
principal.hostname |
直接マッピングされます。 |
dhcp_type |
principal.ip |
マッピング: DHCPREQUEST → src_ip、DHCPNAK → src_ip |
ip |
principal.ip |
統合済み |
msg |
principal.ip |
マッピング: call=new → srcip |
oldattr_address |
principal.ip |
統合済み |
process_type |
principal.ip |
マッピング: "confd","ulogd" → srcip、"confd","ulogd" → oldattr_address、`"confd","ulogd"... |
src_ip |
principal.ip |
統合済み |
srcip |
principal.ip |
統合済み |
dhcp_type |
principal.mac |
マッピング: DHCPREQUEST → src_mac、DHCPNAK → src_mac |
process_type |
principal.mac |
マッピング: "confd","ulogd" → srcmac、dhcpd → src_mac |
src_mac |
principal.mac |
統合済み |
srcmac |
principal.mac |
統合済み |
srcport |
principal.port |
直接マッピングされます。 |
pid |
principal.process.pid |
直接マッピングされます。 |
objname |
principal.resource.name |
直接マッピングされます。 |
user |
principal.user.userid |
直接マッピングされます。 |
msg |
security_result |
マッピング: call=new → sec_result |
process_type |
security_result |
マッピング: "confd","ulogd" → sec_result、"confd","ulogd" → security_result |
sec_result |
security_result |
統合済み |
initf_label |
security_result.about.labels |
統合済み |
outitf_label |
security_result.about.labels |
統合済み |
process_type |
security_result.about.labels |
マッピング: "confd","ulogd" → initf_label、"confd","ulogd" → outitf_label、`"confd","ulo... |
sid_label |
security_result.about.labels |
統合済み |
tcpflags_label |
security_result.about.labels |
統合済み |
action |
security_result.action_details |
直接マッピングされます。 |
action |
security_result.category |
マッピング: portscan → category |
category |
security_result.category |
統合済み |
process_type |
security_result.category |
マッピング: "confd","ulogd" → category |
info |
security_result.description |
直接マッピングされます。 |
name |
security_result.description |
直接マッピングされます。 |
fwrule |
security_result.rule_id |
直接マッピングされます。 |
process_type |
security_result.severity |
マッピング: "confd","ulogd" → INFORMATIONAL、"confd","ulogd" → MEDIUM |
severity |
security_result.severity |
マッピング: "info","debug" → INFORMATIONAL、warn → MEDIUM |
call |
security_result.summary |
直接マッピングされます。 |
attr_address |
target.ip |
統合済み |
dstip |
target.ip |
統合済み |
ip |
target.ip |
統合済み |
process_type |
target.ip |
マッピング: "confd","ulogd" → dstip、"confd","ulogd" → attr_address、"confd","ulogd" →... |
dstmac |
target.mac |
統合済み |
process_type |
target.mac |
マッピング: "confd","ulogd" → dstmac |
dstport |
target.port |
直接マッピングされます。 |
| なし | metadata.event_type |
定数: GENERIC_EVENT |
| なし | metadata.product_name |
定数: SOPHOS_DHCP |
| なし | metadata.vendor_name |
定数: SOPHOS |
| なし | network.application_protocol |
定数: DHCP |
| なし | network.dhcp.opcode |
定数: BOOTREQUEST |
| なし | network.dhcp.type |
定数: REQUEST |
| なし | security_result.severity |
定数: INFORMATIONAL |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。