Symptome und Geltungsbereich
- Ein eingeschränkter Dienst scheitert trotz passender normaler Dateirechte.
- Audit-Protokolle zeigen abgelehnte Vorgänge mit Quell- und Zielkontext.
Betroffene Umgebung
Linux mit SELinux und Audit-Werkzeugen; Audit-Protokolle brauchen meist Root-Leserechte. Paketnamen unterscheiden sich.
Erkennbare Meldungen (synthetische Beispiele)
audit: type=1400 avc: denied { read } for pid=410 comm="example" scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:user_home_t:s0 tclass=file permissive=0Kontexte und Objektklasse führen die Diagnose; der Eintrag allein rechtfertigt keine Freigabe des Vorgangs.
Mögliche Ursachen
Das sind mögliche Erklärungen, keine bestätigte Diagnose. Mehrere unabhängige Fehler können gleichzeitig vorliegen.
- Datei- oder Portlabel oder ein dokumentierter Boolean passt möglicherweise nicht zur Dienstkonfiguration.
- Anwendung oder Regelpaket kann einen Fehler enthalten, der eine unterstützte Aktualisierung benötigt.
Sicher prüfen
Führe jeweils einen Befehl in der passenden Sitzung aus. Lies zuerst die Erklärung. Großgeschriebene Platzhalter brauchen deine Werte; Werkzeuge und Rechte unterscheiden sich je nach Distribution. Die Website zeigt Befehle an und führt sie niemals aus.
Prüfschritt 1
Schreibgeschützte Audit-Suche; mit den nötigen Protokoll-Leserechten ausführen. recent wählt ein kurzes Zeitfenster; bei älterem Fehler einen passenden Zeitraum nutzen.
ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts recent -iErgebnis einordnen: Abgelehntes Recht, comm, scontext, tcontext und tclass vergleichen. permissive=1 protokolliert eine mögliche, nicht erzwungene Ablehnung.
Prüfschritt 2
Liest den aktuellen SELinux-Modus, ohne ihn zu ändern.
getenforceErgebnis einordnen: Enforcing stützt eine aktive Regelbeschränkung; Permissive protokolliert ohne Erzwingen, bei Disabled ist eine andere Erklärung für die unmittelbare Sperre nötig.
Nächste Schritte nach Befund
Dienstpfade, Ports oder Booleans an dokumentierte Regeln anpassen
Wenn die Ablehnung eine gewollte abweichende Dienstkonfiguration betrifft, deren dokumentierte SELinux-Labels und Booleans prüfen. Zuerst falsche Labels korrigieren; sonst nur die passende Portzuordnung oder einen engen Boolean nach Notieren seines bisherigen Werts ändern.
Vorsicht: SELinux nicht global permissiv setzen oder als erste Reaktion ein audit2allow-Modul erzeugen. Die Ablehnung kann gewollter Schutz sein.
Wiederherstellung / Rücknahme: Boolean oder Portzuordnung und Diensteinstellung anhand der gesicherten Werte wiederherstellen; den weiter aktiven erzwingenden Modus prüfen.
Hat dir dieser Hinweis geholfen?
Unterstützte Regel- oder Anwendungskorrektur verwenden
Wenn Labels und dokumentierte Einstellungen stimmen, Distributionsaktualisierungen von Regel und Anwendung auf denselben abgelehnten Vorgang prüfen. Eine passende unterstützte Korrektur mit Paket-/Konfigurationssicherung einsetzen oder den minimal reproduzierbaren Eintrag mit bereinigten vertraulichen Pfaden melden.
Vorsicht: Ein weites lokales Freigabemodul kann einen kompromittierten oder falsch konfigurierten Dienst verdecken. Den ursprünglichen AVC-Beleg erhalten.
Wiederherstellung / Rücknahme: Den funktionierenden Snapshot oder unterstützte zusammenpassende Paketstände und die gesicherte Konfiguration wiederherstellen; einzelne Regeldowngrades benötigen Distributionshinweise.
Hat dir dieser Hinweis geholfen?
Quellen und Prüfung
Diese Anleitung basiert auf Originalquellen von Projekten oder Distributionen und wurde am genannten Datum redaktionell geprüft. Das ist eine Quellenprüfung, kein Nachweis einer auf deiner Hardware reproduzierten Lösung. Log-Beispiele sind synthetische Testdaten. Versionsabhängige Details müssen zur installierten Ausgabe passen.
- Red Hat: troubleshooting SELinux denials and file labeling (Projekt- oder Distributionsdokumentation)
- Linux kernel: security-module interfaces and contexts (Projekt- oder Distributionsdokumentation)