1AUDITD-PLUGINS(5) System Administration Utilities AUDITD-PLUGINS(5)
2
3
4
6 auditd-plugins - realtime event receivers
7
9 auditd can multiplex audit events in realtime. It takes audit events
10 and distributes them to child programs that want to analyze events in
11 realtime. When the audit daemon receives a SIGTERM or SIGHUP, it passes
12 that signal to its child processes so that can reload the configuration
13 or terminate.
14
15 The child programs install a configuration file in a plugins directory
16 which defaults to /etc/audit/plugins.d. This can be controlled by a au‐
17 ditd.conf config option plugin_dir if the admin wished to locate plug‐
18 ins somewhere else. But auditd will install its plugins in the default
19 location.
20
21 The plugin directory will be scanned and every plugin that is active
22 will be started. If the plugin has a problem and exits, it will be
23 started a maximum of max_restarts times as found in auditd.conf.
24
25 Config file names are not allowed to have more than one '.' in the name
26 or it will be treated as a backup copy and skipped. Config file options
27 are given one per line with an equal sign between the keyword and its
28 value. The available options are as follows:
29
30
31 active The options for this are yes or no.
32
33 direction
34 The option is dictated by the plugin. In or out are the only
35 choices. You cannot make a plugin operate in a way it wasn't de‐
36 signed just by changing this option. This option is to give a
37 clue to the event dispatcher about which direction events flow.
38 NOTE: inbound events are not supported yet.
39
40 path This is the absolute path to the plugin executable. In the case
41 of internal plugins, it would be the name of the plugin.
42
43 type This tells the dispatcher how the plugin wants to be run.
44 Choices are builtin and always. Builtin should always be given
45 for plugins that are internal to the audit event dispatcher.
46 These are af_unix and syslog. The option always should be given
47 for most if not all plugins. The default setting is always.
48
49 args This allows you to pass arguments to the child program. Gener‐
50 ally plugins do not take arguments and have their own config
51 file that instructs them how they should be configured. At the
52 moment, there is a limit of 2 args.
53
54 format The valid options for this are binary and string. Binary passes
55 the data exactly as the audit event dispatcher gets it from the
56 audit daemon. The string option tells the dispatcher to com‐
57 pletely change the event into a string suitable for parsing with
58 the audit parsing library. The default value is string.
59
60
62 auditd has an internal queue to hold events for plugins. (See the
63 q_depth setting in auditd.conf.) Plugins have to watch for and dequeue
64 events as fast as possible and queue them internally if they can't be
65 immediately processed. If the plugin is not able to dequeue records,
66 the auditd internal queue will get filled. At any time, as root, you
67 can run the following to check auditd's metrics:
68
69 auditctl --signal cont ; sleep 1 ; cat /var/run/auditd.state
70
71 If auditd's internal queue fills, it cannot dequeue any events from the
72 kernel backlog. If the kernel's backlog fills, it looks at the value of
73 backlog_wait_time to delay all processes that generate an event to see
74 if there is eventually room to add the event. This will likely be no‐
75 ticed as slowing down various processes on the machine. The kernel's
76 audit subsystem can be checked by running:
77
78 auditctl -s
79
80 When tuning the audit system's performance, you'd want to check both
81 kernel and auditd metrics and adjust accordingly.
82
83
85 /etc/auditd/auditd.conf /etc/audit/plugins.d
86
88 auditd.conf(5), auditd(8).
89
91 Steve Grubb
92
93
94
95Red Hat Aug 2022 AUDITD-PLUGINS(5)