收集 Netgate pfSense 日志
支持的语言:
Google SecOps
SIEM
本文档介绍如何使用 Google Security Operations 转发器收集 Netgate pfSense 日志。
如需了解详情,请参阅将数据提取到 Google SecOps。
注入标签用于标识将原始日志数据标准化为结构化 UDM 格式的解析器。本文档中的信息适用于具有 PFSENSE
注入标签的解析器。
配置 Netgate pfSense
- 使用管理员凭据登录 pfSense 界面。
- 在全局日志设置中,执行以下操作:
- 依次选择状态 > 系统日志 > 设置。
- 在设置标签页上,选择常规日志记录选项,然后执行以下操作:
- 在日志消息格式字段中,选择 syslog(RFC 5424,具有 RFC 3339 微秒级精度的时间戳)。
- 在记录防火墙默认屏蔽字段中,选中以下复选框:
- 记录规则集中默认屏蔽规则匹配的数据包
- 从规则集中放置的默认传递规则中匹配的日志数据包
- 记录被“屏蔽伪造网络”规则屏蔽的数据包
- 被“屏蔽专用网络”规则屏蔽的日志数据包
- 如需保存新设置,请点击保存。
将防火墙日志发送到 Google SecOps
- 在全局日志设置中,依次选择状态 > 系统日志 > 设置。
- 在设置标签页中,选择远程日志记录选项,然后执行以下操作:
- 在启用远程日志记录字段中,选中将日志消息发送到远程 syslog 服务器复选框。
- 在源地址字段中,将默认值保留为任意。
- 在 IP 协议字段中,如果选择源地址作为默认值,则无需指定 IP 地址。否则,请输入 IP 地址。
- 在远程日志服务器中,指定 Google SecOps 转发器的 IP 地址。
- 在远程 Syslog 内容中,选中防火墙事件复选框。
- 如需保存更改,请点击保存。
配置 Google SecOps 转发器以注入 Netgate pfSense 日志
- 依次选择 SIEM 设置 > 转发器。
- 点击添加新转发器。
- 在转发器名称字段中,输入转发器的唯一名称。
- 点击提交,然后点击确认。转发器已添加,系统会显示添加收集器配置窗口。
- 在收集器名称字段中,为收集器输入一个唯一名称。
- 选择 pfSense 作为日志类型。
- 在收集器类型字段中,选择 Syslog。
- 配置以下必需的输入参数:
- 协议:指定收集器用于监听 syslog 数据的连接协议。
- 地址:指定收集器所在并监听 syslog 数据的目标 IP 地址或主机名。
- 端口:指定收集器所在的目标端口,以及收集器监听 syslog 数据的端口。
- 点击提交。
如需详细了解 Google SecOps 转发器,请参阅通过 Google SecOps 界面管理转发器配置。
如果您在创建转发器时遇到问题,请与 Google SecOps 支持团队联系。
字段映射参考
此 pfSense 防火墙解析器使用 grok 模式从 syslog 消息中提取字段,可处理各种日志格式,包括 DHCP 和防火墙事件。然后,它会将这些提取的字段映射到 UDM,并使用 IP 地址、MAC 地址、用户名和网络详细信息等上下文信息来丰富数据。
UDM 映射表
日志字段 | UDM 映射 | 逻辑 |
---|---|---|
应用 | principal.application |
该值使用 Grok 模式从日志消息中提取。对于 syslog 消息,应用名称通常位于主机名和时间戳之后。 |
命令 | principal.process.command_line |
当日志表明执行了命令时,从说明字段中提取。 |
说明 | metadata.description |
说明字段会映射到 UDM 元数据说明,但 syslog-ng 应用日志除外,该字段会映射到 metadata.description 。对于 DHCP 事件,dhcp_type 会附加到说明前面。 |
dhcp_type | metadata.product_event_type |
DHCP 消息类型(例如,DHCPDISCOVER、DHCPOFFER)提取并映射。 |
主机 | intermediary.hostname 或 intermediary.ip |
如果主机值是有效的 IP 地址,则会映射到 intermediary.ip 。否则,它会映射到 intermediary.hostname 。 |
主机 | principal.hostname ,principal.asset.hostname |
如果不存在主账号 IP,则主机将被视为主账号主机名。 |
mac | principal.mac ,network.dhcp.chaddr |
提取与 DHCP 请求关联的 MAC 地址并进行映射。 |
src_ip | principal.ip ,principal.asset.ip |
使用 Grok 模式从特定日志格式中提取。 |
src_mac | principal.mac |
使用 Grok 模式从特定日志格式中提取。 |
dst_mac | target.mac |
使用 Grok 模式从特定日志格式中提取。 |
时间戳 | metadata.event_timestamp |
时间戳从日志消息中提取,并转换为 UDM 时间戳格式。如果时区信息 (tz) 可用,则会将其附加到转化前的时间戳。 |
timestamp_no_year | metadata.event_timestamp |
如果存在不含年份的时间戳,系统会解析该时间戳,并在解析过程中添加当前年份。 |
用户 | principal.user.userid |
系统会提取与事件关联的用户名并进行映射。 |
第 1 列 | security_result.rule_id |
如果说明采用 CSV 格式,则从第一个 CSV 列映射。 |
column6 | security_result.rule_type |
如果说明采用 CSV 格式,则从第六个 CSV 列映射。 |
column7 | security_result.action |
如果说明采用 CSV 格式,则从第七个 CSV 列映射。已转换为“BLOCK”或“ALLOW”。 |
column8 | network.direction |
如果说明采用 CSV 格式,则从第八个 CSV 列映射。已转换为“INBOUND”或“OUTBOUND”。 |
column13 | network.ip_protocol (如果为 UDP 或 ICMP) |
如果说明采用 CSV 格式,且协议为 UDP 或 ICMP,则从第 13 个 CSV 列映射。对于 TCP/UDP 事件,它用于创建具有键“Id”的附加字段。 |
column16 | principal.ip 、principal.asset.ip (如果 IPv6 且列 9 为 6) |
如果说明采用 CSV 格式,且 column9 为 6,则从第 16 个 CSV 列映射。对于 TCP/UDP 事件,如果 column9 为 4,则用于协议标识。 |
column17 | target.ip 、target.asset.ip (如果为 IPv6 且不是 ip_failure) |
如果说明采用 CSV 格式,则从第十七个 CSV 列映射;如果 column9 为 6,且相应值为有效 IP,则从第十七个 CSV 列映射。对于 TCP/UDP 事件,它用于协议标识。 |
column18 | principal.port (如果为 UDP) |
如果说明采用 CSV 格式且协议为 UDP,则从第十八个 CSV 列映射。对于 TCP/UDP 事件,它会映射到 network.received_bytes 。 |
column19 | target.port (如果为 UDP) |
如果说明采用 CSV 格式且协议为 UDP,则从第 19 个 CSV 列映射。对于 DHCP 事件,它会映射到 network.dhcp.yiaddr 。对于其他事件,它会映射到 principal.ip 、principal.asset.ip 。 |
column20 | additional.fields (键:“data_length”)(如果为 UDP) |
如果说明采用 CSV 格式且协议为 UDP,则从第 20 个 CSV 列映射。对于其他事件,它会映射到 target.ip 、target.asset.ip 。 |
column21 | principal.port (如果为 TCP/UDP) |
如果说明采用 CSV 格式且协议为 TCP 或 UDP,则从第二十一列 CSV 列映射。 |
column22 | target.port (如果为 TCP/UDP) |
如果说明采用 CSV 格式且协议为 TCP 或 UDP,则从 CSV 的第 22 列映射。 |
column23 | additional.fields (键:“data_length”)(如果为 TCP/UDP) |
如果说明采用 CSV 格式,且协议为 TCP 或 UDP,则从第 23 个 CSV 列映射。 |
column24 | additional.fields (键:“tcp_flags”)(如果为 TCP) |
如果说明采用 CSV 格式且协议为 TCP,则从第 24 个 CSV 列映射。 |
column25 | additional.fields (键:“sequence_number”)(如果为 TCP/UDP) |
如果说明采用 CSV 格式,且协议为 TCP 或 UDP,则从第 25 个 CSV 列映射。 |
column29 | additional.fields (键:“tcp_options”)(如果为 TCP) |
如果说明采用 CSV 格式且协议为 TCP,则从第 29 个 CSV 列映射。 |
compression_algo | additional.fields (键:“压缩算法”) |
从说明字段中提取并添加为附加字段。 |
降序 | metadata.description |
从消息字段中提取并用作说明。 |
principal_ip | principal.ip ,principal.asset.ip |
从说明字段中提取,表示主 IP 地址。 |
principal_username | principal.user.userid |
从说明字段中提取,表示主账号用户名。 |
状态 | security_result.detection_fields (键:“status”) |
从说明字段中提取,并作为检测字段添加到安全结果中。 |
target_host | target.hostname ,target.asset.hostname |
从说明字段中提取,表示目标主机名。 |
src_port | principal.port |
从说明字段中提取,表示源端口。根据各种日志字段和解析器逻辑确定。可以是 NETWORK_CONNECTION、NETWORK_DHCP、STATUS_UPDATE 或 GENERIC_EVENT。硬编码为“PFSENSE”。硬编码为“PFSENSE”。硬编码为“PFSENSE”。对于 DHCP 事件,请设置为“DHCP”。对于 DHCPDISCOVER 和 DHCPREQUEST,设置为“BOOTREQUEST”;对于 DHCPOFFER 和 DHCPACK,设置为“BOOTREPLY”。根据 dhcp_type 字段设置为“DISCOVER”“REQUEST”“OFFER”或“ACK”。 |
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。