Zum Inhalt springen

Linux/SELinux/04/03 Hauptkonfigurationsdatei

Aus Foxwiki

Linux/SELinux/04/03 Hauptkonfigurationsdatei - Hauptkonfigurationsdatei

Beschreibung

Hauptkonfigurationsdatei

/etc/selinux/config

  • Auf Debian und RHEL ist /etc/selinux/config die zentrale SELinux-Konfigurationsdatei.
  • Die Datei steuert den dauerhaften SELinux-Status und den Namen der zu ladenden SELinux-Policy.
  • Änderungen in dieser Datei werden in der Regel erst nach einem Neustart wirksam.
  • Temporäre Laufzeitwechsel zwischen enforcing und permissive erfolgen mit setenforce.

Beispielkonfiguration

SELINUX=enforcing
SELINUXTYPE=targeted
SELINUX=

Die Option SELINUX flegt fest, ob SELinux deaktiviert oder aktiviert ist und in welchem Modus es läuft.

Wert Wirkung Hinweis
enforcing Die SELinux-Policy wird durchgesetzt. Zugriffe werden auf Grundlage der Policy-Regeln erlaubt oder verweigert. Verweigerungen werden protokolliert. Geeigneter Modus für produktive Systeme.
permissive Die SELinux-Policy bleibt geladen, wird aber nicht durchgesetzt. Zugriffe werden nicht blockiert, mögliche Verweigerungen jedoch protokolliert. Geeignet für Fehlersuche, Policy-Analyse und die schrittweise Aktivierung von SELinux.
disabled Es wird keine SELinux-Policy geladen. SELinux schützt das System in diesem Zustand nicht, und AVC-Meldungen werden nicht protokolliert. In aktueller Debian- und RHEL-Dokumentation wird dieser Eintrag als veraltete Methode zum dauerhaften Deaktivieren beschrieben. Für eine vollständige Deaktivierung wird selinux=0 als Kernel-Parameter verwendet.

Praktisches Beispiel für einen temporären Wechsel in den Permissive-Modus:

setenforce 0
  • Die Änderung durch setenforce gilt nur bis zum nächsten Neustart.
SELINUXTYPE=

Die Option SELINUXTYPE legt die zu verwendende SELinux-Policy fest.

Wert Bedeutung Hinweis
targeted Standard-Policy mit gezielter Einschränkung ausgewählter Dienste und Domänen. Auf RHEL ist targeted die übliche Standard-Policy. Auf Debian ist der Wert gültig, wenn die entsprechende Policy installiert ist.
mls Multi-Level-Security-Policy mit zusätzlicher Trennung über Sicherheitsstufen. Spezialfall für MLS-Umgebungen.
policy_name Generischer Policy-Name. Debian dokumentiert SELINUXTYPE allgemein als Namen der installierten Policy unter /etc/selinux/{SELINUXTYPE}/.
  • Eine Änderung von SELINUXTYPE erfordert einen Neustart und kann zusätzlich ein Relabeling des Dateisystems notwendig machen.
  • Die zugehörige Policy muss installiert sein, bevor der Wert in SELINUXTYPE verwendet wird.

Aktuelle Konfiguration prüfen

Die laufende Konfiguration und die in der Datei hinterlegten Werte lassen sich direkt prüfen:

cat /etc/selinux/config
getenforce
sestatus
  • getenforce zeigt den aktuellen Modus: Enforcing, Permissive oder Disabled.
  • sestatus zeigt zusätzlich unter anderem die geladene Policy und den Modus aus der Konfigurationsdatei.

Modus ändern

Verwenden Sie das Dienstprogramm setenforce, um zwischen dem Durchsetzungs- und dem permissiven Modus zu wechseln

Mit setenforce vorgenommene Änderungen bleiben nach einem Neustart nicht erhalten

  • Um in den Durchsetzungsmodus zu wechseln, geben Sie als Linux-Root-Benutzer den Befehl setenforce 1 ein
  • Um in den permissiven Modus zu wechseln, geben Sie den Befehl setenforce 0 ein
SELinux-Modus anzeigen
sudo getenforce
Permissive
Permissive Modus setzen
sudo setenforce 0
sudo getenforce
Permissive
Enforcing Modus setzen
sudo setenforce 1
sudo getenforce
Enforcing
Permissiven Modus für Domänen

In Linux können Sie einzelne Domänen in den permissiven Modus versetzen, während das System im Enforcing-Modus läuft

Um etwa die Domäne httpd_t in den permissiven Modus zu versetzen

sudo semanage permissive -a httpd_t

Weitere Informationen finden Sie in Linux/SELinux/11_Fehlerbehebung/Lösungen#Permissive_Domänen

Hinweis
Dauerhafte Änderungen an Zuständen und Modi werden in Linux/SELinux/04/04 Dauerhafte Änderungen behandelt

Hinweise zur Änderung

  • Für dauerhafte Änderungen muss /etc/selinux/config angepasst und das System neu gestartet werden.
  • Soll SELinux auf einem System aktiviert werden, auf dem es zuvor deaktiviert war, ist permissive der sichere Zwischenschritt.
  • RHEL-Dokumentation konzentriert sich in der Grundkonfiguration meist auf SELINUX und SELINUXTYPE.
  • Debian-Manpages dokumentieren zusätzlich optionale Einträge wie AUTORELABEL= und REQUIRESEUSERS=.

Red Hat Documentation:

Debian Manpages: