Samba 记录全部内容以获取有关共享文件夹和文件上的所有用户活动的日志

Samba 记录全部内容以获取有关共享文件夹和文件上的所有用户活动的日志

如何获取 Samba 共享中文件和文件夹上所有用户活动的日志。请告诉我 Samba 配置文件需要做哪些更改/etc/samba/smb.conf

我的/etc/samba/smb.conf包含

log level = 3
log file = /var/log/samba/log.%p

max log size = 5000
debug timestamp = yes

到目前为止,我的/etc/samba/smb.conf配置与上述相同。但这并没有提供正确的日志文件。

答案1

我相信您正在寻找这些设置;

http://moiristo.wordpress.com/2009/08/10/samba-logging-user-activity/ http://oreilly.com/openbook/samba/book/ch04_08.html

你可以看到写入、打开、删除等,但要注意:Samba 日志很多!!!当您启用这些选项时,如果服务器真的很忙,那么祝您好运!

答案2

我发现另一个答案的博客链接中的说明对于 Samba 4.15(在我的 Ubuntu 22.04 服务器上)略显过时。我做了以下事情:

smb.conf

[share]
    vfs objects = full_audit
    full_audit:prefix = %u|%I|%m|%S
    full_audit:success = mkdirat renameat unlinkat pwrite
    full_audit:failure = none
    full_audit:facility = LOCAL7
    full_audit:priority = NOTICE

/etc/rsyslog.d/50-default.conf,我附加了

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

然后我必须授予 rsyslog(以用户身份运行syslog)写入的权限/var/log/samba/log.audit

sudo usermod -aG adm syslog # /var/log/samba folder's group is adm
sudo chown g+rw /var/log/samba 

相关内容