日志审计对于事后溯源十分重要,所以使用TrueNAS共享时,开启Samba audit审计日志功能很有必要。Full_Audit 允许记录共享上的所有操作,如创建文件、删除文件、更改路径…
一、编辑SMB服务
1、进入smb服务编辑
服务--找到SMB--动作--高级选项
2、添加附加参数
log level = 3 vfs:10
log file = /home/sambalog/%m.log
full_audit:prefix = %u|%I|%m|%S
full_audit:success = rename write pwrite unlinkat linkat mkdirat
full_audit:failure = none
full_audit:priority = notice
#说明:
log level = 3 vfs:10 #设定日志级别,这一行不写,没有samba审计日志。
log file = /home/sambalog/%m.log #设定客户机日志保存位置
full_audit:prefix = %u|%I|%m|%S # %u:表示用户,%I: 用户IP地址,%m 表示客户机名称,%S Samba服务器共享名称
full_audit:success = rename write pwrite unlinkat linkat mkdirat #编辑这些参数!(阅读https://www.samba.org/samba/docs/current/man-html/vfs_full_audit.8.html)
full_audit:failure = none #不记录审计失败的信息
full_audit:facility = local5 #指定日志保存的设施,是指审记日志保存到那里
full_audit:priority = notice #记录信息的级别
二、编辑共享
1、进入共享编辑
共享--windows共享(SMB)--编辑--高级选项。
每一个需要审计日志的都要编辑。
2、添加附加参数
目的:No presets
导出回收站 勾选
附加参数:
vfs objects = zfsacl;recycle;full_audit
#说明:
zfsacl是zfs文件权限,recycle是回收站,full_audit是审记,所有的VFS对象都要写在同一行
vfs objects= 的后面,以”;“间隔,否则只有最后一个参数生效。
三、更改日志路径
1、编辑syslog-ng.conf文件
更改日志的路径,需要编辑文件“/etc/local/syslog-ng.conf”,要成为永久文件,
2、编辑syslog-ng.freenas文件
在以下两个文件中添加两行代码:
/conf/base/etc/local/syslog-ng.conf.freenas
/etc/local/syslog-ng.conf.freenas
【添加内容】
destination m_samba_audit { file("/usr/log/sambalog/activity.log"); };
log { source(src); filter(f_local5);destination(m_samba_audit); flags(final); };
3、重启syslog-ng
【操作命令】
service syslog-ng restart
【操作实例】
4查看日志
在/usr/log/sambalog/activity.log可以看到相应日志。
5、日志轮转
在/conf/base/etc/newsyslog.conf中添加一行下面的内容,保存2年日志:
【添加内容】
/var/log/sambalog/activity.log 640 720 * u/T00 JC
【操作实例】