Zum Inhalt springen

Linux/SELinux/11 Fehlerbehebung: Unterschied zwischen den Versionen

Aus Foxwiki
Die Seite wurde neu angelegt: „ Kategorie:SELinux/DOC
 
Keine Bearbeitungszusammenfassung
 
(65 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{navigation|Linux/SELinux/10 Systemd|Linux/SELinux/11 Fehlerbehebung/Analyse}}
'''SELinux/11 Fehlerbehebung'''


[[Kategorie:SELinux/DOC]]
== Beschreibung ==
* Vorgänge, bei einer Zugriffsverweigerung
* Häufige Ursachen für Probleme
* Informationen zur korrekten Kennzeichnung finden
* Analyse von SELinux-Verweigerungen
* Erstellen benutzerdefinierter Policy-Module
 
; Vorgänge, bei einer Zugriffsverweigerung
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
 
; Protokolle
... und je nach den laufenden Daemons an unterschiedlichen Orten protokolliert:
{| class="wikitable options big"
|-
! | 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:
 
[[Image:Bild1.png|top]]
 
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
 
<noinclude>
 
== Anhang ==
=== Siehe auch ===
<div style="column-count:2">
<categorytree hideroot=on mode="pages">{{BASEPAGENAME}}</categorytree>
</div>
----
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
----
# 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
# 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
 
=== Dokumentation ===
; Man-Page
# [https://manpages.debian.org/stable/auditd/ausearch.8.en.html ausearch(8)]
# [https://manpages.debian.org/trixie/auditd/aureport.8.en.html aureport(8)]
# sealert(8)
# [https://manpages.debian.org/trixie/policycoreutils-python-utils/audit2allow.1.en.html audit2allow(1)]
 
=== Links ===
==== Projekt ====
==== Weblinks ====
 
<!--
{{DEFAULTSORT:new}}
{{DISPLAYTITLE:new}}
-->
 
----
 
{{navigation|Linux/SELinux/10 Systemd|Linux/SELinux/11 Fehlerbehebung/Analyse}}
 
[[Kategorie:Linux/SELinux]]
[[Kategorie:Linux/SELinux/11]]
</noinclude>

Aktuelle Version vom 13. Juni 2026, 08:34 Uhr

SELinux/11 Fehlerbehebung

Beschreibung

  • Vorgänge, bei einer Zugriffsverweigerung
  • Häufige Ursachen für Probleme
  • Informationen zur korrekten Kennzeichnung finden
  • Analyse von SELinux-Verweigerungen
  • Erstellen benutzerdefinierter Policy-Module
Vorgänge, bei einer Zugriffsverweigerung

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
Protokolle

... 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


Anhang

Siehe auch



  1. 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
  2. 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

Dokumentation

Man-Page
  1. ausearch(8)
  2. aureport(8)
  3. sealert(8)
  4. audit2allow(1)

Projekt