samba服务器用户行为审计

赋料扬雄敌,诗看子建亲。这篇文章主要讲述samba服务器用户行为审计相关的知识,希望能为你提供帮助。
背景【samba服务器用户行为审计】文件共享服务器samba在做文件共享时,有时候需要记录某个文件夹被谁删除,需要对用户进行审计,这里使用full_audit插件实现,以下记录实现过程。
配置full_audit.so
由于full_audit.so插件是默认自带的,所以不需要重新编译,查看以下位置确定是否有:

[root@localhost-203-root-all samba]# ll /usr/lib64/samba/vfs/full_audit.so -rwxr-xr-x 1 root root 66352 Dec 22 01:55 /usr/lib64/samba/vfs/full_audit.so

配置smb.conf配置文件
1、配置全局设置,如下:
[global] workgroup = WORKGROUP security = user log file = /var/log/samba/log.%m max log size = 50 log level = 2 passdb backend = tdbsam server string = Samba Server Version %v full_audit:prefix = %u|%I|%S full_audit:failure = connect full_audit:success = mkdir rmdir rename unlink open full_audit:facility = local2 full_audit:priority = notice

说明:
full_audit:prefix:代表审计日志的格式用户+IP地址+时间戳
full_audit:failure:代表审计失败的动作,这边是只审计连接失败的
full_audit:success:代表审计成功的动作,包括创建目录、删除目录、文件重命名、文件删除、文件或目录打开(包括读写)
full_audit:facility:代表日志存储的位置,local2,代表使用rsyslog里面的local2.*配置,下面我会附上
full_audit:priority:代表审计的级别,这里代表通知级别
2、在需要共享的文件夹底下配置审计:
[test] comment = public file server path = /usr/local/src public = yes writable = yes create mask = 0777 directory mask = 0777 force directory mode = 0777 vfs object = full_audit

说明:
必须在需要审计的目录配置下加上vfs object = full_audit配置
配置自定义审计日志路径
vi /etc/rsyslog.conf 添加 local2.* /var/log/samba/audit.log

添加后重启rsyslog服务
systemctl restart rsyslog.service

随后重启samba服务
systemctl restart smb.service

验证是否有效
验证读审计1、在win10电脑访问共享目录
samba服务器用户行为审计

文章图片

2、查看samba审计日志
samba服务器用户行为审计

文章图片

验证写审计1、往文件写入内容
samba服务器用户行为审计

文章图片

2、查看审计日志
samba服务器用户行为审计

文章图片

验证删除审计1、删除刚才的文件
samba服务器用户行为审计

文章图片

2、查看审计日志
samba服务器用户行为审计

文章图片

其中unlink即代表删除的动作,还有重命名目录,重命名文件等就不截图了。

    推荐阅读