The audit_control file contains audit control information used by auditd(1M). Each line consists of a title and a string, separated by
a colon. There are no restrictions on the order of lines in the file, although some lines must appear only once. A line beginning with `#' is a comment.
Directory definition lines list the directories to be used when creating audit files, in the order in which they are to be used. The format of a directory line is:
dir:directory-name
directory-name is where the audit files will be created. Any valid writable directory can be specified.
The following configuration is recommended:
/etc/security/audit/server/files
where server is the name of a central machine, since audit files belonging to different servers are usually stored in separate subdirectories of a single audit directory. The naming convention normally has server be a directory on a server machine,
and all clients mount /etc/security/audit/server at the same location in their local file systems. If the same server exports several different file systems for auditing, their server names will, of course, be different.
There are several other ways for audit data to be arranged: some sites may have needs more in line with storing each host's audit data in separate subdirectories. The audit structure used will depend on each individual site.
The audit threshold line specifies the percentage of free space that must be present in the file system containing the current audit file. The format of the threshold line is:
minfree:percentage
where percentage is indicates the amount of free space required. If free space falls below this threshold, the audit daemon auditd(1M)
invokes the shell script audit_warn(1M). If no threshold is specified, the default is 0%.
The audit flags line specifies the default system audit value. This value is combined with the user audit value read from audit_user(4) to form a user's process preselection mask.
The algorithm for obtaining the process preselection mask is as follows: the audit flags from the flags: line in the audit_control file are added to the flags from the always-audit field in the user's entry in the audit_user
file. The flags from the never-audit field from the user's entry in the audit_user file are then subtracted from the total:
|
user's process preselection mask =
(flags: line + always audit flags) - never audit flags
|
The format of a flags line is:
flags:audit-flags
where audit-flags specifies which event classes are to be audited. The character string representation of audit-flags contains a series of flag names, each one identifying a single audit class, separated by commas. A name preceded by `-' means that the class should be audited for failure only; successful attempts are not audited. A name preceded by `+' means that the class should be audited for success only; failing attempts are not audited. Without a prefix, the name indicates that the class is to
be audited for both successes and failures. The special string all indicates that all events should be audited; -all indicates that all failed attempts are to be audited, and +all all successful attempts. The prefixes ^, ^-, and ^+ turn off flags specified earlier in the string (^- and ^+ for failing and successful attempts, ^ for both). They are typically used to reset flags.
The non-attributable flags line is similar to the flags line, but this one contain the audit flags that define what classes of events are audited when an action cannot be attributed to a specific user. The format of a naflags line is:
naflags:audit-flags
The flags are separated by commas, with no spaces.
The following table lists the predefined audit classes:
|
short name long name short description
no no_class null value for turning off event preselection
fr file_read Read of data, open for reading, etc.
fw file_write Write of data, open for writing, etc.
fa file_attr_acc Access of object attributes: stat, pathconf, etc.
fm file_attr_mod Change of object attributes: chown, flock, etc.
fc file_creation Creation of object
fd file_deletion Deletion of object
cl file_close close(2) system call
pc process Process operations: fork, exec, exit, etc.
nt network Network events: bind, connect, accept, etc.
ip ipc System V IPC operations
na non_attrib non-attributable events
ad administrative administrative actions: mount, exportfs, etc.
lo login_logout Login and logout events
ap application Application auditing
io ioctl ioctl(2) system call
ex exec exec(2) system call
ot other Everything else
all all All flags set
|
Note that the classes are configurable, see audit_class(4).
|