确定哪些程序正在记录到特定的 syslog 设备

确定哪些程序正在记录到特定的 syslog 设备

有没有办法确定哪些守护进程正在记录到特定的 syslog 工具?(spec. rsyslog)

我特别想寻找的是谁登录到了 auth.* 严重性。

2001 年对 netbsd syslog 的审计。

atrun(8)    cron.err pid        fatal errors

chat(8)     local2.err pid ndelay   fatal errors
            local2.info     -v output

comsat(8)   daemon.err pid      fatal errors
            daemon.info     log biffs (-l)
            daemon.debug        debug notices (if debug != 0)
            auth.notice     / in tty name (might be incorrect code)

cron(8)     cron.info pid       commands executed

答案1

没有办法确定这一点先验。也就是说,您无法有效地检查二进制文件并确定它将使用哪个功能。

您唯一真正的选择是分析日志并查看哪些进程正在记录到哪个设施。您可以通过让 rsyslogd (a) 将每个设施记录到单独的文件中或 (b) 将设施名称包含在日志消息中(我思考rsyslog 将允许您执行此操作)。

答案2

“并非如此”——任何守护进程都可以向任何日志工具发送消息(如果 syslog 正在监听网络套接字,通常也可以将“来自任何主机”添加到其中)。各种守护进程的配置文件是您的最佳选择。

大多数守护进程都会把自己的名字放在日志中——如果你的守护进程没有这样做,你可以通过消除法来做到这一点。 auth.*通常也是与身份验证相关的东西(登录名/密码),所以你可以进一步缩小范围……

相关内容