Zum Inhalt springen

Linux/SELinux/04/04 Dauerhafte Änderungen: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
 
Zeile 1: Zeile 1:
'''Linux/SELinux/04/04 Dauerhafte Änderungen'''
{{Navigation|Linux/SELinux/04/03 Hauptkonfigurationsdatei|Linux/SELinux/04/05 Systemstart}}
'''Linux/SELinux/04/04 Dauerhafte Änderungen''' - Dauerhafte Änderungen


=== Dauerhafte Änderungen an SELinux-Zuständen und -Modi ===
=== Dauerhafte Änderungen an SELinux-Zuständen und -Modi ===

Aktuelle Version vom 31. März 2026, 10:47 Uhr

Linux/SELinux/04/04 Dauerhafte Änderungen - Dauerhafte Änderungen

Dauerhafte Änderungen an SELinux-Zuständen und -Modi

SELinux kann aktiviert oder deaktiviert werden

  • Wenn aktiviert, hat SELinux zwei Modi: „enforcing“ und „permissive“

Verwenden Sie die Befehle getenforce oder sestatus, um zu überprüfen, in welchem Modus SELinux läuft

Der Befehl sestatus gibt den SELinux-Status und die verwendete SELinux-Richtlinie zurück sestatus SELinux-Status

 enabled

SELinuxfs-Mount

 /sys/fs/selinux

SELinux-Stammverzeichnis

 /etc/selinux

Name der geladenen Richtlinie

 targeted
Aktueller Modus
 enforcing
Modus aus Konfigurationsdatei
 enforcing
MLS-Status der Richtlinie
 enabled
Status von deny_unknown in der Richtlinie
 allowed
Maximale Kernel-Richtlinienversion
 30
Hinweis
Wenn Systeme SELinux im permissiven Modus ausführen, können Benutzer Dateien falsch kennzeichnen
  • Dateien, die erstellt wurden, während SELinux deaktiviert war, werden überhaupt nicht gekennzeichnet
  • Dieses Verhalten verursacht Probleme beim Wechsel in den enforcing-Modus, da Dateien falsch oder gar nicht gekennzeichnet sind
  • Um zu verhindern, dass falsch gekennzeichnete und nicht gekennzeichnete Dateien Probleme verursachen, werden Dateisysteme automatisch neu gekennzeichnet, wenn vom deaktivierten Zustand in den permissiven oder den enforcing-Modus gewechselt wird

SELinux aktivieren

Wenn SELinux aktiviert ist, kann es in einem von zwei Modi ausgeführt werden: enforcing oder permissive

  • Die folgenden Abschnitte zeigen, wie Sie dauerhaft in diese Modi wechseln

Beim Aktivieren von SELinux auf Systemen, auf denen es zuvor deaktiviert war, empfiehlt Red Hat, um Probleme wie das Nicht-Booten des Systems oder Prozessfehler zu vermeiden, dieses Verfahren zu befolgen

  1. Aktivieren Sie SELinux im permissiven Modus
  • Weitere Informationen finden Sie im Abschnitt „Permissiver Modus“
  1. Starten Sie Ihr System neu
  2. Überprüfen Sie, ob SELinux-Ablehnungsmeldungen vorliegen
  • Weitere Informationen finden Sie im Abschnitt „Suchen und Anzeigen von Ablehnungen“
  1. Wenn keine Ablehnungen vorliegen, wechseln Sie in den Durchsetzungsmodus
  • Weitere Informationen finden Sie im Abschnitt „Enforcing-Modus“

Um benutzerdefinierte Anwendungen mit SELinux im Enforcing-Modus auszuführen, wählen Sie eines der folgenden Szenarien

  • Führen Sie Ihre Anwendung in der Domäne unconfined_service_t aus
  • Weitere Informationen finden Sie im Abschnitt „Unconfined-Prozesse
  • Schreiben Sie eine neue Richtlinie für Ihre Anwendung
  • Weitere Informationen finden Sie im Knowledge-Base-Artikel „Writing Custom SELinux Policy“
Permissive-Modus

Wenn SELinux im Permissive-Modus läuft, wird die SELinux-Richtlinie nicht durchgesetzt

  • Das System bleibt betriebsbereit und SELinux verweigert keine Vorgänge, sondern protokolliert lediglich AVC-Meldungen, die dann zur Fehlerbehebung, zum Debugging und zur Verbesserung der SELinux-Richtlinie verwendet werden können
  • In diesem Fall wird jede AVC-Meldung nur einmal protokolliert

Um den Modus dauerhaft auf „permissive“ umzustellen, befolgen Sie die folgenden Schritte

Umstellung auf den permissiven Modus
  1. Bearbeiten Sie die Datei /etc/selinux/config wie folgt
# Diese Datei steuert den Status von SELinux auf dem System
# SELINUX= kann einen dieser drei Werte annehmen
# enforcing – Die SELinux-Sicherheitsrichtlinie wird durchgesetzt
# permissive – SELinux gibt Warnungen aus, anstatt die Richtlinie durchzusetzen
# disabled – Es wird keine SELinux-Richtlinie geladen
SELINUX=‚‘'permissive
# SELINUXTYPE= kann einen dieser beiden Werte annehmen
# targeted – Zielprozesse werden geschützt,

  1. mls – Multi-Level-Security-Schutz
SELINUXTYPE=targeted
  1. Starten Sie das System neu
sudo reboot
Durchsetzungsmodus

Wenn SELinux im Durchsetzungsmodus läuft, setzt es die SELinux-Richtlinie durch und verweigert den Zugriff auf der Grundlage der SELinux-Richtlinienregeln

  • Unter Red Hat Enterprise Linux ist der Durchsetzungsmodus standardmäßig aktiviert, wenn das System ursprünglich mit SELinux

Wenn SELinux deaktiviert wurde, befolgen Sie die nachstehende Vorgehensweise, um den Modus wieder auf „Enforcing“ umzustellen

Umstellung auf den Enforcing-Modus

Diese Vorgehensweise setzt voraus, dass die Pakete selinux-policy -targeted, selinux-policy, libselinux, libselinux-python, libselinux-utils, policycoreutils und policycoreutils-python installiert sind

  • Um zu überprüfen, ob die Pakete installiert sind, verwenden Sie den folgenden Befehl
rpm -q ‚'Paketname‘'
  1. Bearbeiten Sie die Datei /etc/selinux/config wie folgt
# Diese Datei steuert den Status von SELinux auf dem System
# SELINUX= kann einen dieser drei Werte annehmen
# enforcing – Die SELinux-Sicherheitsrichtlinie wird durchgesetzt
# permissive – SELinux gibt Warnungen aus, anstatt die Richtlinie durchzusetzen
# disabled – Es wird keine SELinux-Richtlinie geladen
SELINUX=‚‘'enforcing

  1. SELINUXTYPE= kann einen dieser beiden Werte annehmen
# targeted – Zielgerichtete Prozesse werden geschützt,
# mls – Multi-Level-Security-Schutz
SELINUXTYPE=targeted
  1. Starten Sie das System neu
sudo reboot

Beim nächsten Systemstart kennzeichnet SELinux alle Dateien und Verzeichnisse im System neu und fügt einen SELinux-Kontext für Dateien und Verzeichnisse hinzu, die erstellt wurden, als SELinux deaktiviert war

Hinweis
Nach dem Wechsel in den Enforcing-Modus kann SELinux einige Aktionen aufgrund falscher oder fehlender SELinux-Richtlinien verweigern

Um anzuzeigen, welche Aktionen SELinux verweigert, geben Sie als Root den folgenden Befehl ein

sudo ausearch -m AVC,USER_AVC,SELINUX_ERR -ts today

Alternativ können Sie, sofern das Paket setroubleshoot-server installiert ist, als root den folgenden Befehl eingeben

sudo grep „SELinux is preventing“ /var/log/messages

Falls SELinux bestimmte Aktionen verweigert, finden Sie Informationen zur Fehlerbehebung in Kapitel 11, „Fehlerbehebung“

Vorübergehende Änderungen der Modi werden in Abschnitt „SELinux-Zustände und -Modi“ behandelt

Deaktivieren von SELinux

Wenn SELinux deaktiviert ist, wird die SELinux-Richtlinie überhaupt nicht geladen; sie wird nicht durchgesetzt und AVC-Meldungen werden nicht protokolliert

  • Daher gehen alle in Abschnitt 1.1, „Vorteile des Betriebs von SELinux“, aufgeführten Vorteile des Betriebs von SELinux verloren
Wichtig
Red Hat empfiehlt dringend, den permissiven Modus zu verwenden, anstatt SELinux dauerhaft zu deaktivieren
  • Weitere Informationen zum permissiven Modus finden Sie im Abschnitt „Permissive Mode

Um SELinux dauerhaft zu deaktivieren, gehen Sie wie folgt vor

SELinux deaktivieren
  1. Konfigurieren Sie SELINUX=disabled in der Datei /etc/selinux/config
# Diese Datei steuert den Status von SELinux auf dem System
# SELINUX= kann einen dieser drei Werte annehmen
# enforcing – Die SELinux-Sicherheitsrichtlinie wird durchgesetzt
# permissive – SELinux gibt Warnungen aus, anstatt die Richtlinie durchzusetzen
# disabled – Es wird keine SELinux-Richtlinie geladen
SELINUX=‚‘'disabled
# SELINUXTYPE= kann einen dieser beiden Werte annehmen
# targeted – Zielgerichtete Prozesse werden geschützt,
# mls – Multi-Level-Security-Schutz
SELINUXTYPE=targeted
  1. Starten Sie Ihr System neu

Vergewissern Sie sich nach dem Neustart, dass der Befehl getenforce den Wert Disabled zurückgibt

getenforce
Disabled