Linux/SELinux/04/03 Hauptkonfigurationsdatei: Unterschied zwischen den Versionen
Erscheinungsbild
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| Zeile 1: | Zeile 1: | ||
=== Hauptkonfigurationsdatei === | === 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 === | |||
<syntaxhighlight lang="ini" copy line highlight=""> | |||
SELINUX=enforcing | |||
SELINUXTYPE=targeted | |||
</syntaxhighlight> | |||
; <nowiki>[[ | ; SELINUX= | ||
Die Option | Die Option <nowiki>[[SELINUX]]</nowiki> legt fest, ob SELinux deaktiviert oder aktiviert ist und in welchem Modus es läuft. | ||
{| class="wikitable options big" | |||
* | ! 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: | |||
<syntaxhighlight lang="bash" copy line highlight="1"> | |||
setenforce 0 | |||
</syntaxhighlight> | |||
* Die Änderung durch ''setenforce'' gilt nur bis zum nächsten Neustart. | |||
; SELINUXTYPE= | |||
Die Option '''SELINUXTYPE''' legt die zu verwendende SELinux-Policy fest. | |||
{| class="wikitable options big" | |||
! 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: | |||
<syntaxhighlight lang="bash" copy line highlight=""> | |||
cat /etc/selinux/config | |||
getenforce | |||
sestatus | |||
</syntaxhighlight> | |||
* ''getenforce'' zeigt den aktuellen Modus: ''Enforcing'', ''Permissive'' oder ''Disabled''. | |||
* ''sestatus'' zeigt zusätzlich unter anderem die geladene Policy und den Modus aus der Konfigurationsdatei. | |||
=== 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=''. | |||
{{Navigation|Linux/SELinux/04/02 Protokolldateien|Linux/SELinux/04/04 Dauerhafte Änderungen}} | {{Navigation|Linux/SELinux/04/02 Protokolldateien|Linux/SELinux/04/04 Dauerhafte Änderungen}} | ||
== Weblinks == | |||
Red Hat Documentation: | |||
* https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/10/html/using_selinux/changing-selinux-states-and-modes | |||
* https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/7/html/selinux_users_and_administrators_guide/sect-security-enhanced_linux-working_with_selinux-main_configuration_file | |||
Debian Manpages: | |||
* https://manpages.debian.org/testing/policycoreutils/selinux_config.5.en.html | |||
* https://manpages.debian.org/testing/selinux-utils/selinux.8.en.html | |||
* https://manpages.debian.org/testing/selinux-utils/getenforce.8.en.html | |||
[[Kategorie:Linux/SELinux/04]] | [[Kategorie:Linux/SELinux/04]] | ||
Version vom 30. März 2026, 01:41 Uhr
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]] legt 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.
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=.
Weblinks
Red Hat Documentation:
- https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/10/html/using_selinux/changing-selinux-states-and-modes
- https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/7/html/selinux_users_and_administrators_guide/sect-security-enhanced_linux-working_with_selinux-main_configuration_file
Debian Manpages: