Linux/SELinux/04/02 Protokolldateien
Welche Protokolldatei wird verwendet
Unter Red Hat Enterprise Linux sind die Pakete dbus und audit standardmäßig installiert, sofern sie nicht aus der Standard-Paketauswahl entfernt wurden
- Der Setroubleshoot-Server muss über Yum installiert werden (verwenden Sie den Befehl yum install setroubleshoot-server)
Wenn der auditd-Daemon läuft, wird standardmäßig eine SELinux-Ablehnungsmeldung wie die folgende in /var/log/audit/audit.log geschrieben
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
Außerdem wird eine Meldung ähnlich der folgenden in die Datei /var/log/message geschrieben
7. Mai 18:55:56 localhost setroubleshoot
SELinux verhindert, dass httpd (httpd_t) „getattr“ auf /var/www/html/file1 (samba_share_t) ausführt
- Vollständige SELinux-Meldungen
sealert -l de7e30d6-5488-466d-a606-92c9f40d316d
In Red Hat Enterprise Linux 7 läuft setroubleshootd nicht mehr ständig als Dienst
- Es wird jedoch weiterhin zur Analyse der AVC-Meldungen verwendet
- Zwei neue Programme dienen dazu, setroubleshoot bei Bedarf zu starten
- Das Dienstprogramm sedispatch läuft als Teil des audit-Subsystems
- Wenn eine AVC-Ablehnungsmeldung zurückgegeben wird, sendet sedispatch eine Nachricht über dbus
- Diese Nachrichten gehen direkt an setroubleshootd, sofern dieses bereits läuft
- Läuft es nicht, startet sedispatch es automatisch
- Das Dienstprogramm seapplet läuft in der System-Symbolleiste und wartet auf DBus-Meldungen von setroubleshootd
- Es öffnet die Benachrichtigungsblase, in der der Benutzer die AVC-Meldungen einsehen kann
- Daemons automatisch starten
- Um die Daemons auditd und [ [rsyslog]]-Daemons so zu konfigurieren, dass sie beim Booten automatisch starten, geben Sie als Root-Benutzer die folgenden Befehle ein
sudo systemctl enable auditd.service sudo systemctl enable rsyslog.service
Um sicherzustellen, dass die Daemons aktiviert sind, geben Sie an der Shell-Eingabeaufforderung die folgenden Befehle ein
systemctl is-enabled auditd enabled
systemctl is-enabled rsyslog
enabled
Alternativ können Sie den Befehl systemctl status ‚'service-name‘'.service verwenden und in der Befehlsausgabe nach dem Schlüsselwort enabled suchen, zum Beispiel
systemctl status auditd.service | grep enabled auditd.service – Sicherheitsüberwachungsdienst Geladen geladen (/usr/lib/systemd/system/auditd.service; ‚'enabled‘')
Weitere Informationen darüber, wie der systemd-Daemon Systemdienste verwaltet, finden Sie im Kapitel „Verwaltung von Systemdiensten“ im Systemadministratorhandbuch