要完整记录与查看共享文件访问日志,核心是启用系统级审计策略 + 配置文件 / 共享的审计规则 + 查看对应日志,下面按Windows(SMB 共享)、**Linux(Samba 共享)** 分别给出可直接落地的配置与查看方法。
当然,对于一些企事业单位来说,部署专门的服务器共享文件管理软件可能是一个更加快速、高效的抉择。例如,大势至局域网共享文件管理系统(dashizhi.com),只需要在服务器上安装之后,就可以设置共享文件访问权限,可以只让读取共享文件而禁止复制共享文件、只让打开共享文件而禁止另存为本地磁盘、只让修改共享文件而禁止删除共享文件,并且可以详细记录局域网用户访问共享文件的权限。如下图所示:

图:大势至局域网共享文件管理系统
一、Windows 服务器(SMB 共享)
1. 启用文件访问审计(必做)
方法 1:本地组策略(单机 / 工作组)
方法 2:域环境(GPO)
2. 为共享文件夹配置 SACL(审计规则)
- 读取数据、列出文件夹内容、读取属性
- 写入数据、创建文件、创建文件夹
- 删除、更改权限、取得所有权
3. 查看访问日志(事件查看器)
- 4663:文件 / 文件夹被访问(读 / 写 / 删 / 改)
- 5145:网络共享对象被访问(含共享名、客户端 IP)
4. 实时查看当前连接与打开文件
- 图形化:计算机管理 → 系统工具 → 共享文件夹 → 会话 / 打开的文件
- 命令行:
powershell
# 查看当前SMB会话
Get-SmbSession
# 查看当前打开的文件
Get-SmbOpenFile
二、Linux 服务器(Samba 共享)
1. 基础日志配置(连接 / 访问记录)
ini
# 日志路径(%m=客户端IP/主机名,自动分文件)
log file = /var/log/samba/log.%m
# 日志级别(3=详细,5=调试)
log level = 3
# 最大日志大小(MB)
max log size = 50
2. 启用 full_audit 插件(记录文件操作:增删改查)
bash
运行
yum install samba-vfs-modules -y
ini
# 启用审计插件
vfs objects = full_audit
# 审计日志路径
full_audit:log = /var/log/samba-audit.log
# 记录成功/失败操作
full_audit:success = connect open read write rename unlink mkdir rmdir
full_audit:failure = connect open read write rename unlink mkdir rmdir
# 日志前缀(含用户、IP、共享名)
full_audit:prefix = %u|%I|%S
3. 查看日志
基础连接日志
bash
运行
# 查看所有客户端日志
ls -l /var/log/samba/
# 实时查看指定客户端IP(如192.168.1.100)的日志
tail -f /var/log/samba/log.192.168.1.100
# 查看SMB服务总日志
tail -f /var/log/samba/log.smbd
详细文件操作审计日志
bash
运行
# 实时查看审计日志
tail -f /var/log/samba-audit.log
# 日志格式示例:用户名|客户端IP|共享名|操作|文件路径
alice|192.168.1.100|share|open|/share/doc.txt
bob|192.168.1.101|share|unlink|/share/old.doc
查看当前连接
bash
运行
# 查看当前Samba会话
smbstatus
# 过滤445端口连接(SMB默认端口)
netstat -tulnp | grep smbd
三、日志管理与最佳实践
四、常见问题
- Windows 无 4663/5145 事件:检查审核策略是否启用、SACL 是否配置、是否执行 gpupdate
- Linux Samba 无审计日志:检查 vfs objects = full_audit 是否正确、日志路径权限是否为 smbuser 可写
网硕互联帮助中心






评论前必须登录!
注册