FreeBSD
NXLog can collect various types of system logs on FreeBSD platforms. For deployment details, see the supported FreeBSD platforms, FreeBSD installation, and monitoring.
- Basic Security Mode (BSM) Auditing
-
The im_bsm module collects logs generated by the BSM auditing system.
Example 1. Collecting BSM audit logsThis example reads BSM audit logs from the
/dev/auditpipe
device file.nxlog.conf<Input bsm> Module im_bsm DeviceFile /dev/auditpipe </Input>
- Custom programs
-
The im_exec module allows log data to be collected from custom external programs.
Example 2. Using an external command - DNS Monitoring
-
DNS logs can be collected from the BIND DNS server, see the BIND 9 section in the NXLog User Guide.
- File Integrity Monitoring
-
File and directory changes can be detected and logged for auditing with the im_fim module. See File Integrity Monitoring.
Example 3. Monitoring file integrityThis example monitors files in the
/etc
and/srv
directories, generating events when files are modified or deleted. Files ending in.bak
are excluded from the watch list.nxlog.conf<Input fim> Module im_fim File "/etc/*" File "/srv/*" Exclude "*.bak" Digest sha1 ScanInterval 3600 Recursive TRUE </Input>
- Kernel
-
Logs from the kernel can be collected directly with the im_kernel module.
The system logger may need to be disabled or reconfigured to collect logs with im_kernel. To completely disable syslogd on FreeBSD, run service syslogd onestop
andsysrc syslogd_enable=NO
.Example 4. Collecting kernel logsThis configuration reads events from the kernel.
nxlog.conf<Input kernel> Module im_kernel </Input>
- Local syslog
-
Messages written to
/dev/log
can be collected with the im_uds module. Events written to file in Syslog format can be collected with im_file. In both cases, the xm_syslog module can be used to parse the events. See the Linux system logs and Collecting and Parsing Syslog sections for more information.Example 5. Reading syslog messages from fileThis example reads Syslog messages from
/var/log/messages
and parses them with the parse_syslog() procedure.nxlog.conf<Extension _syslog> Module xm_syslog </Extension> <Input in> Module im_file File "/var/log/messages" Exec parse_syslog(); </Input>
- Log files
-
The im_file module can be used to collect events from log files.
Example 6. Reading from log filesThis configuration reads messages from the
/opt/test/input.log
file. No parsing is performed; each line is available in the$raw_event
field.nxlog.conf<Input in> Module im_file File "/opt/test/input.log" </Input>
- Process Accounting
-
The im_acct module can be used to gather details about which owner (user and group) runs what processes.
Example 7. Reading Process Accounting logsThis configuration turns on process accounting (using
/var/account/acct
as the log file) and watches for messages.nxlog.conf<Input acct> Module im_acct AcctOn TRUE File "/var/account/acct" </Input>