![如何将主机 IP 地址和主机 MAC 地址附加到每条日志消息?](https://linux22.com/image/1599714/%E5%A6%82%E4%BD%95%E5%B0%86%E4%B8%BB%E6%9C%BA%20IP%20%E5%9C%B0%E5%9D%80%E5%92%8C%E4%B8%BB%E6%9C%BA%20MAC%20%E5%9C%B0%E5%9D%80%E9%99%84%E5%8A%A0%E5%88%B0%E6%AF%8F%E6%9D%A1%E6%97%A5%E5%BF%97%E6%B6%88%E6%81%AF%EF%BC%9F.png)
我有几个带有 iptables 日志记录规则和默认 rsyslog 配置的日志代理。Rsyslog 将日志发送到中央服务器。
Iptables 规则:
iptables -A INPUT -j LOG --log-prefix "INPUT:DROP:" --log-level 6
现在日志消息如下所示:
Aug 6 14:38:08 localhost kernel: INPUT:DROP:IN=eth0 OUT= MAC=52:54:00:26:10:60: SRC=10.0.2.2 DST=10.0.2.15 LEN=76 TOS=0x00 PREC=0x00 TTL=64 ID=22131 PROTO=TCP SPT=53998 DPT=22 WINDOW=65535 RES=0x00 ACK PSH URGP=0
如何将日志代理 IP 地址和日志代理 MAC 地址附加到每条日志消息?代理上出现流量,其中 dst != 日志代理 IP。
答案1
在安装 iptables 规则时就知道需要添加到日志消息中的信息了?那么为什么不把它添加到选项中呢--log-prefix
?例如:
ip_=192.0.2.1
mac_=`cat /sys/class/net/eth0/address`
iptables -A INPUT -j LOG --log-prefix "${ip_?}:${mac_?}:INPUT:DROP:" --log-level 6