Zum Inhalt springen

Linux/SELinux/11 Fehlerbehebung: Unterschied zwischen den Versionen

Aus Foxwiki
Markierung: Ersetzt
Zeile 57: Zeile 57:
== Analyse ==
== Analyse ==
[[SELinux/DOC/11 Fehlerbehebung/Analyse]]
[[SELinux/DOC/11 Fehlerbehebung/Analyse]]
== Lösungen ==
[[SELinux/DOC/11 Fehlerbehebung/Lösungen]]


== Links ==
== Links ==

Version vom 25. März 2026, 15:25 Uhr

SELinux/DOC/11 Fehlerbehebung

Beschreibung

  • Was passiert, wenn SELinux den Zugriff verweigert
  • Häufige Ursachen für Probleme
  • Informationen zur korrekten Kennzeichnung finden
  • Analyse von SELinux-Verweigerungen
  • Erstellen benutzerdefinierter Policy-Module
Was passiert, wenn der Zugriff verweigert wird

SELinux-Entscheidungen, wie das Zulassen oder Verweigern von Zugriff, werden zwischengespeichert

  • Dieser Cache wird als Access Vector Cache (AVC) bezeichnet
  • Wenn SELinux den Zugriff verweigert, werden Verweigerungsmeldungen protokolliert

Diese Verweigerungen werden auch als „AVC-Verweigerungen“ bezeichnet und je nach den laufenden Daemons an unterschiedlichen Orten protokolliert:

Daemon Protokollort
auditd aktiv /var/log/audit/audit.log
auditd aus; rsyslogd ein /var/log/messages
setroubleshootd, rsyslogd und auditd ein /var/log/audit/audit.log
  • Besser lesbare Verweigerungsmeldungen werden ebenfalls an /var/log/messages gesendet

Wenn Sie das X Window System ausführen, die Pakete setroubleshoot und setroubleshoot-server installiert haben und die Daemons setroubleshootd und [[auditd] laufen, wird eine Warnung angezeigt, wenn der Zugriff von SELinux verweigert wird:

Datei:Bild1.png

Ein Klick auf Anzeigen zeigt eine detaillierte Analyse der Gründe für die Zugriffsverweigerung durch SELinux sowie eine mögliche Lösung zur Gewährung des Zugriffs an

  • Wenn Sie das X Window System nicht verwenden, ist es weniger offensichtlich, wenn der Zugriff durch SELinux verweigert wird

Beispielsweise können Benutzer, die Ihre Website besuchen, eine Fehlermeldung ähnlich der folgenden erhalten:

Zugriff verweigert

Sie haben keine Berechtigung, auf ‚'Dateiname‘' auf diesem Server zuzugreifen

In solchen Situationen sollten Sie, sofern DAC-Regeln (Standard-Linux-Berechtigungen) den Zugriff erlauben, die Dateien

  • /var/log/messages
  • /var/log/audit/audit.log

auf Fehlermeldungen wie

  • „SELinux is preventing“
  • „denied“

überprüfen

Dies können Sie tun, indem Sie als Root-Benutzer die folgenden Befehle ausführen:

sudo grep „SELinux is preventing“ /var/log/messages
sudo grep „denied“ /var/log/audit/audit.log

Analyse

SELinux/DOC/11 Fehlerbehebung/Analyse

Lösungen

SELinux/DOC/11 Fehlerbehebung/Lösungen

[8] Dateien in /etc/selinux/targeted/contexts/files/ definieren Kontexte für Dateien und Verzeichnisse

  • Dateien in diesem Verzeichnis werden von den Dienstprogrammen restorecon und setfiles gelesen, um Dateien und Verzeichnisse in ihre Standardkontexte zurückzusetzen

[9] Der Befehl semanage port -a fügt einen Eintrag zur Datei /etc/selinux/targeted/modules/active/ports.local hinzu

  • Beachten Sie, dass diese Datei standardmäßig nur von root eingesehen werden kann

[10] Weitere Informationen zu ausearch finden Sie in der Manpage von ausearch(8)

[11] Weitere Informationen zu aureport finden Sie in der Manpage zu aureport(8)

[12] Weitere Informationen zu sealert finden Sie in der Manpage zu sealert(8)

[13] Weitere Informationen zu audit2allow finden Sie in der Manpage zu audit2allow(1)