我们有一个中央系统日志服务器,用于收集来自主机的所有日志,最近我们又得到了一个 SIEM,我们也想收集日志。
我们希望中央 Syslog 服务器将日志复制到 SIEM,而无需更改源 IP/源 Mac。不重定向,因为这样 Syslog 服务器中就不会有日志。因此,最终结果是我们将日志发送到中央 Syslog 服务器,并且我们的中央 Syslog 服务器和 SIEM 中都会有来自将其发送到中央 Syslog 服务器的资产的 IP 的日志。
我们想要这样做的原因是。
- 有些设备只允许我们将日志转发到单个 syslog 设备
- 必须配置所有设备以结束对两者的日志记录非常耗时。
- 如果我们使用 rsyslog 从中央 Syslog 服务器转发任何日志,根据日志,源将显示为中央 Syslog 服务器,这对于 SIEM 上的关联来说是一个噩梦。有些日志不包含来源,因此对于这些日志,SIEM 会假设转发日志的设备是源。
我尝试使用 iptables 来执行此操作,但只能重定向日志,而不能发送重复日志。
可以使用 IP 表或任何其他应用程序来实现这一点吗?我愿意接受任何建议。
答案1
您可以尝试 iptables TEE 目标,但它有一个限制,即复制数据包的目的地必须位于同一个第 2 层网段上。
从手册页中:
TEE 目标将克隆数据包并将此克隆重定向到本地网段上的另一台机器。换句话说,下一跳必须是目标,否则您将必须配置下一跳以根据需要将其进一步转发。
例如,在接收日志的服务器上,您可以执行以下操作:
iptables -t mangle -A PREROUTING -p udp --dport 514 -j TEE --gateway 192.168.87.203
这会将 UDP 数据包的副本(包含原始源地址)发送到给定的网关 IP 地址。