rsyslog.conf 仅部分遵守

rsyslog.conf 仅部分遵守

我跟着关于如何启用 Samba 审计的描述(2009 年 8 月 10 日的条目)并希望将所有额外启用的日志记录放在一个特殊的日志文件 ( /var/log/samba/log.audit) 中。我将上述行local7.* /var/log/samba/log.audit放在现有文件的末尾/etc/rsyslog.conf。它似乎有点不合适,但在重新启动所有程序后,所提到的文件已创建,大概是由 syslog 守护程序创建的,因此我认为这是可行的。

但它的大小仍然是 0 字节。创建该文件后,没有任何内容记录在那里。

我花了一些时间,但后来我发现所有日志记录都已存入默认的系统日志文件(/var/log/syslog)。

我猜测配置行/etc/rsyslog.conf是正确的,但是不知何故,它应该被处理的方式不起作用/etc/samba/smb.conf

我简短地重复一下上述博客所建议的内容:

添加线条

vfs objects = full_audit

full_audit:prefix = %u|%I|%m|%S
full_audit:success = mkdir rename unlink rmdir pwrite
full_audit:failure = none
full_audit:facility = local7
full_audit:priority = NOTICE

到现有的smb.conf并添加行

local7.*                        /var/log/samba/log.audit

syslog.conf(我/etc/rsyslog.conf为此付出了我现有的努力)。

有人能告诉我如何修复此问题,以便将日志记录到预期的文件中吗/var/log/samba/log.audit

答案1

我也遇到了同样的问题,直到我将输出日志文件位置改为/var/log而不是/var/log/samba。我不知道为什么,但似乎rsyslog我的系统无法将工具写入 之外的文件/var/log

希望这会有所帮助,如果有人知道如何配置ryslog以允许其他位置,那就太好了。

答案2

/var/log/samba/log.audit文件必须具有syslog作为拥有者的用户,以及adm作为拥有者的组。

如果不是这样,请运行:

sudo chown /var/log/samba/log.audit syslog:adm

相关内容