我/etc/security/audit_control
通过将ex
(“exec”)和ad
(“administrative”)审计类添加到flags
:
flags:lo,aa,ex,ad
我启用并启动了该服务
service auditd enable
service auditd start
现在,我运行praudit /dev/auditpipe
,但当我在另一个终端中执行命令时,它不会打印任何内容。我可以看到用户登录事件,但看不到命令:
header,97,11,su(1),0,Sun Nov 6 18:48:54 2022, + 32 msec
subject,-1,root,wheel,root,wheel,77911,77911,0,0.0.0.0
text,successful authentication
return,success,0
trailer,97
我缺少什么?
# cat /etc/security/audit_control
#
# $FreeBSD$
#
dir:/var/audit
dist:off
flags:lo,aa,ex,ad
minfree:5
naflags:lo,aa
policy:cnt,argv
filesz:2M
expire-after:10M
答案1
更改/etc/security/audit_control
并启动审核服务(audit -s
如果服务已在运行,则以 root 身份运行)后,新设置将在用户登录时生效。已登录的用户将不会使用更改后的配置进行审核。这在手册audit_user(5)
:
该
audit_user
文件指定要为给定用户审核哪些审核事件类。如果指定,这些标志将与文件中的系统范围审核标志相结合,audit_control(5)
以确定要为该用户审核哪些事件类别。 这些设置在用户登录时生效。
(“这些设置”指的是两个文件中的设置,而不仅仅是文件audit_user
。)
ex
将和标志添加ad
到audit_control
配置中,就像您所做的那样,audit -s
以 root 身份运行(因为我已经启用了审核),在另一行登录,然后输入ls
,我在命令生成的审核日志中看到以下内容ls
:
header,119,11,execve(2),0,Tue Nov 8 07:00:53 2022, + 503 msec
exec arg,ls,-F
path,/bin/ls
attribute,555,root,wheel,1425188585,14654,629136184
subject,myself,myself,myself,myself,myself,21223,21212,57410,192.168.1.107
return,success,0
trailer,119
header,148,11,execve(2),0,Tue Nov 8 07:00:53 2022, + 510 msec
exec arg,git,rev-parse,--git-dir
path,/usr/local/bin/git
attribute,755,root,wheel,1425188585,279022,407440184
subject,myself,myself,myself,myself,myself,21224,21212,57410,192.168.1.107
return,success,0
trailer,148
你可以看到我已经ls
别名为ls -F
.显示命令的第二个条目git
是由于我的交互式 shell 的提示而产生的。