确定哪些程序正在logging到特定的系统日志设施

有什么方法可以确定哪些守护进程正在logging到特定的系统日志工具? (spec。rsyslog)

我特别想找的是谁login到authentication。

2001年对netbsd系统日志的审计。

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 

没有办法确定这个先验 。 也就是说,你不能有用地检查一个二进制文件,并找出它将要使用的设备。

你唯一的select是分析日志,看看哪些进程正在logging到哪个设施。 你可以通过rsyslogd(a)将每个设施logging到一个单独的文件或者(b)在日志消息中包含设施名称(我认为 rsyslog会让你这么做)来简化这个过程。

“不是真的” – 任何守护进程都可以将消息发送到任何日志工具(如果syslog正在监听一个networking套接字,通常可以从“任何主机”添加到该networking套接字)。 为各种守护进程configuration文件是最好的select。

大多数的守护进程把他们的名字写在他们的日志里是很好的 – 如果你的是其中一个,那么你可以通过消除这个过程来做到这一点。 auth.*通常也是身份validation相关的东西(login名/密码),所以你可能能够进一步缩小字段…