从源码分析,使用unix域流式套接字接收auditd分发程序audispd的二进制审计消息,篇一,创建audispd配置文件,使用audispd创建unix s

持续创作,加速成长!这是我参与「掘金日新计划 · 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观察者程序

猜你喜欢

转载自juejin.im/post/7107078221555826695