Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

5.2. Which Log File is Used

In Red Hat Enterprise Linux 6, the dbus and audit packages are installed by default, unless they are removed from the default package selection. The setroubleshoot-server must be installed via Yum (the yum install setroubleshoot command).
If the auditd daemon is running, SELinux denial messages, such as the following, are written to /var/log/audit/audit.log by default:
type=AVC msg=audit(1223024155.684:49): avc:  denied  { getattr } for  pid=2000 comm="httpd" path="/var/www/html/file1" dev=dm-0 ino=399185 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=system_u:object_r:samba_share_t:s0 tclass=file
May 7 18:55:56 localhost setroubleshoot: SELinux is preventing httpd (httpd_t) "getattr" to /var/www/html/file1 (samba_share_t). For complete SELinux messages. run sealert -l de7e30d6-5488-466d-a606-92c9f40d316d
In Red Hat Enterprise Linux 6, setroubleshootd no longer constantly runs as a service. However, it is still used to analyze the AVC messages. Two new programs act as a method to start setroubleshoot when needed: sedispatch and seapplet. The sedispatch utility runs as part of the audit subsystem, and via dbus, sends a message when an AVC denial message is returned. These messages go straight to setroubleshootd if it is already running. If setroubleshootd is not running, sedispatch starts it automatically. The seapplet utility runs in the system toolbar, waiting for dbus messages in setroubleshootd. It launches the notification bubble, allowing the user to review AVC messages.

Procedure 5.1. Starting Daemons Automatically

To configure the auditd and rsyslogd daemons to automatically start at boot, run the following commands as the Linux root user:
  1. ~]# chkconfig --levels 2345 auditd on
    ~]# chkconfig --levels 2345 rsyslog on
  2. Use the service service-name status command to check if these services are running, for example:
    ~]# service auditd status
    auditd (pid  1318) is running...
  3. If the above services are not running (service-name is stopped), use the service service-name start command as the Linux root user to start them. For example:
    ~]# service auditd start
    Starting auditd:                                  [  OK  ]