Syslog 转发丢失原始主机名

Syslog 转发丢失原始主机名

我有 DMZ 主机转发到 DMZ 系统日志,而后者又将所有系统日志消息转发到内部系统日志服务器。它大部分工作正常,但内部系统日志主机消息似乎全部来自 DMZ 系统日志,即它丢失了原始主机名。

{主机} -> {DMZ syslog:openbsd:syslog v 1.17} -> {内部 Syslog:rsyslog v3}

我如何保留主机名?

谢谢!

答案1

我个人建议使用 syslog-ng 作为内部服务器 - 它提供的功能比 rsyslog 多得多。特别值得一提的是,它为主机名的管理/重写/等提供了更好的处理。

如果您决定继续使用 rsyslog,此配置会保留远程和本地主机名 - 这是我在切换到 syslog-ng 之前所使用的。

$ModLoad imuxsock.so
$ModLoad imklog.so      
$ModLoad imudp.so
$UDPServerRun 514
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
*.info;mail.none;authpriv.none;cron.none                /var/log/messages
authpriv.*                                              /var/log/secure
mail.*                                                  -/var/log/maillog
cron.*                                                  /var/log/cron
*.emerg                                                 *
uucp,news.crit                                          /var/log/spooler
local7.*                                                /var/log/boot.log

如果重要的话,我也在我的初始化脚本中使用了“-c 4”选项。

答案2

配置 /etc/rsyslog.conf 以保留 FQDN:$PreserveFQDN on

答案3

将 syslog 消息传送到 netcat 将添加主机名。

一种简单的方法是使用 syslog.conf 文件中的 netcat (nc) 来传输消息,如下所示:

“TAB” | nc RemoteLogServer -u 514 -w 1”

必须在管道符号前插入 TAB 字符。

相关内容