持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第15天,点击查看活动详情
简介
audispd是auditd的消息分发插件,同时,audispd也会将消息继续分发给其他的程序,在之前的文章《从源码分析audisp的配置文件加载与启用》中已经介绍了目前audispd支持的机制,这篇文章介绍使用unix tcp套接字+二进制类型消息,这个效率最高的方式来接收audispd的消息分发
参考
之前篇 掘金 从源码分析audispd的配置文件怎么填与audispd的消息分发机制
与audisp建立通讯
添加audispd的配置文件
- 在
/etc/audit/plugins.d
这个目录下,添加一个配置文件,配置文件的具体含义等可以参考文章从源码分析audispd的配置文件怎么填与audispd的消息分发机制,后续不再赘述[root@localhost plugins.d]# pwd /etc/audit/plugins.d [root@localhost plugins.d]# cat theMessage_audispd.conf active = yes direction = out path = builtin_af_unix type = builtin args = 0640 /var/run/theMessage_audispd format = binary 复制代码
- 这里是在
/var/run/theMessage_audispd
这个路径创建一个unix tcp套接字,使用二进制传输
- 这里是在
重启auditd
[root@localhost plugins.d]# service auditd restart
复制代码
验证是否生效
从6月 09 09:06:40 localhost.localdomain auditd[591]: af_unix plugin initialized
这里可以看到,有一个unix套接字插件已启用
[root@localhost plugins.d]# service auditd status
Redirecting to /bin/systemctl status auditd.service
● auditd.service - Security Auditing Service
Loaded: loaded (/usr/lib/systemd/system/auditd.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2022-06-09 09:06:40 CST; 1h 38min ago
Docs: man:auditd(8)
https://github.com/linux-audit/audit-documentation
Process: 585 ExecStart=/sbin/auditd (code=exited, status=0/SUCCESS)
Process: 595 ExecStartPost=/sbin/augenrules --load (code=exited, status=0/SUCCESS)
Main PID: 591 (auditd)
Tasks: 3 (limit: 8962)
Memory: 4.3M
CGroup: /system.slice/auditd.service
└─591 /sbin/auditd
6月 09 09:06:40 localhost.localdomain systemd[1]: Starting Security Auditing Service...
6月 09 09:06:40 localhost.localdomain auditd[591]: af_unix plugin initialized
6月 09 09:06:40 localhost.localdomain auditd[591]: audit dispatcher initialized with q_depth=400 and 1 active plugins
6月 09 09:06:40 localhost.localdomain auditd[591]: Init complete, auditd 3.0.1 listening for events (startup state enable)
6月 09 09:06:40 localhost.localdomain augenrules[595]: /sbin/augenrules: No change
6月 09 09:06:40 localhost.localdomain systemd[1]: Started Security Auditing Service.
[root@localhost plugins.d]#
复制代码
同时,也看到这个套接字文件由autispd创建出来了
[root@localhost plugins.d]# ll /var/run/theMessage_audispd
srw-r-----. 1 root root 0 6月 9 09:06 /var/run/theMessage_audispd
复制代码
完结 撒花
到这里已经介绍了创建了一个audispd的配置文件,同样使得audispd成功创建出一个unix sock,这个sock可以供其他程序接收审计消息 下一篇中,将会介绍audispd发出的消息内容究竟是什么,同时,我们将从audispd的源码进行深入,通过对源码及通讯协议的深入,我们将会更加完善我们的audispd观察者程序