Samba 有一个模块 vfs_full_audit,模块内每个对象的实际含义是什么?

Samba 有一个模块 vfs_full_audit,模块内每个对象的实际含义是什么?

Samba 中的 vfs_full_audit 模块列出了可以添加到模块中的对象,以提高系统调用的日志记录特异性或详细程度。例子:

# defaults for auditing
full_audit:priority = notice
full_audit:facility = local6
full_audit:failure = create_file open opendir rmdir unlink unlinkat connect connectpath disconnect
full_audit:success = rename opendir rmdir unlink open create_file opendir unlinkat connect connectpath disconnect
full_audit:prefix = %U|%d|%u|%R|%I|%S

然而,在位于此处的手册页中:https://www.samba.org/samba/docs/current/man-html/vfs_full_audit.8.html

它无法明确定义每个对象的实际用途 - 我知道其中一些是相当明显的,例如“open”或“rmdir”,但是仅描述每个部分的作用的句子对于更可疑的对象(例如“kernel_flock”)非常有用”

有谁知道明确定义这些值的任何资源/URL?或者也许你们中的一位之前曾问过这个问题,并且从 Sernet 返回了详细说明的数据?

感谢您的关注;)

答案1

不幸的是,完整的审计模块发生了很大变化(并且文档没有跟上),现在它只是用无用的数据轰炸您。 IMMV,如果您想要的不仅仅是取消链接和重命名(删除和重命名),您将收到大量无意义的数据。

如果您错过了一个操作(这很容易,因为文档已过时),它将记录所有内容(即:full_audit:全部成功),然后您将看到日志雪崩。

如果您使用 samba 4,请忘记审核日志。

答案2

我和你有同样的问题。这是因为我用的是“旧名字”。 rmdir例如不再存在。

尝试仅使用mkdirat, renameat, unlinkat... 据我了解,如果您输入不存在的名称,Samba 将显示所有日志。

man 8 vfs_full_audit了解详情。

答案3

今天就被这个问题困扰了,从 4.16 升级到 4.17,共享突然不允许任何人访问。仔细 RTFM,并检查任何操作。与前两个答案不同,Samba 4.17 拼写错误不会导致“记录所有内容”,它们会导致登录该共享被禁用

“如果使用未知的操作名称(例如操作名称拼写错误),则该模块将无法加载,并且客户端将被拒绝连接到使用此模块的共享。”

相关内容