samba服务器用户行为审计

Posted 草根追逐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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电脑访问共享目录

2、查看samba审计日志

验证写审计

1、往文件写入内容

2、查看审计日志

验证删除审计

1、删除刚才的文件

2、查看审计日志

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

以上是关于samba服务器用户行为审计的主要内容,如果未能解决你的问题,请参考以下文章

(转)企业配置sudo命令用户行为日志审计

服务安全与监控

Centos7 samba配置

AD域变更审计软件—通过用户行为分析简化检测系统威胁

MySQL Audit日志审计

什么是数据库安全审计